Microcontroller-Auswahl

Hallo Gernot,

Gernot Fink wrote:

Für einen Weichenatrieb ist deine Anforderung auch üppig :)
Mit etwas "reduzierung ginge vieleicht der attiny26
Ja, der wird reichen. Und üppig: Die Ansteuerung eines Servos erlaubt
nur einen Jitter von < 3ľs beim erzeugten Impuls. Gleichzeitig wird ein
Signal mit 50ľs Pulslänge dekodiert (Interrupt) und dann ja auch noch
der Umlauf berechnet, also die Interpolation der Zwischenstellungen
vorgenommen. Das ganze dann mit allerlei Parametrierungen ergibt im PIC
ca. 3k Code (Assembler).

Gruß, Kurt
--
Kurt Harders
MBTronik - PiN - Präsenz im Netz GITmbH
mailto:news@kurt-harders.de
http://www.mbtronik.de
 
Hallo Manfred,

MaWin wrote:

Du wirst zu Beginn von WEEE problemlos alle deine Bauteile (sind ja
praktisch nur Widerstaende, Dioden, Optokoppler,
Universaltransistoren) in RoHS-konform bekommen, lediglich die Relais
koennten andere mechanische Abmessungen haben.
Stimmt. BS170 gibts aber nicht mehr in ganz billig, und bei den Relais
ist mit 0,28EUR wie bisher auch Schluss. Und eine andere Bauform heisst
ja auch eine Änderung der Platine. Und die ist das teuerste Bauteil
:). Da der ganze Bausatz 10,90 kostet, rechne ich schon recht genau
:).

Gruß, Kurt
--
Kurt Harders
MBTronik - PiN - Präsenz im Netz GITmbH
mailto:news@kurt-harders.de
http://www.mbtronik.de
 
Kurt Harders schrieb:

Aus dieser Situation meine Frage nach Prozessor-Alternativen. Welche
Prozessoren kommen bei folgenden Grundanforderungen in Frage:

- 12-14 IO-Pins
- möglichst interner Takt
- Befehlsausführung 0,2-0,5ľs
- 3 Timer, davon einer 16 Bit
- 2-8k Flash
- 256 Byte RAM
- kleines EEPROM
- DIP-Gehäuse 16-20 Pin, SOIC
- Preis (1000 Stck) < EUR 2,00

Ich brauche jetzt nicht die genaue Bestellbezeichnung :), sondern
einfach mal zusätzliche Anregungen zu Prozessor-Familien, die ich
einfach noch nicht kennengelernt habe.
Sieh Dir mal die LPC900-Familie von Philips an. 8051-Kern mit 2 Takten
pro Zyklus (bis zu 6 MIPS, knapp 4 mit internem Oszillator), massenhaft
interne Peripherie, angenehm zu programmieren. Viele Derivate mit
unterschiedlicher Ausstattung verfügbar.

Preisbeispiel: 89LPC922 im TSSOP20 liegt bei 1.25 Euro / 1000.

--
Dipl.-Ing. Tilmann Reh
http://www.autometer.de - Elektronik nach Maß.
 
Kurt Harders schrieb:

Ernsthaft: 100mil und sowas wie TO92 ist das Limit. Bei manchen muss
man dabei schreiben, dass Vias nicht gelötet werden und die Bauteile
nicht beidseitig gelötet werden müssen :).
Hallo,

na ja, wenn Du 100 mil als Limit setzt und PDIP28 zu gross ist, was
bleibt da noch übrig? Evtl. Typen im PLCC Gehäüse, im Sockel wäre das
dann wieder 100 mil zweireihig im Quadrat ringsrum.

Bye
 
Hallo Andreas, hallo Kurt!

auf diese Beschreibung würde der Atmel ATMega8 passen:

PDIP28 ist einfach zu groß. Ich werde ja jetzt schon ständig gefragt,
warum ein Weichenantrieb so viel Elektronik braucht :).

Ein paar AVRs gibts auch in kleiner:
http://www.atmel.com/dyn/products/param_table.asp?family_id=607&OrderBy=part_no&Direction=ASC

Hmmm... allerdings sind das dann die Tinys, die haben nur 1-2 Timer
und sind auch vom Speicherplatz her eher dünn. Die Tinys mit mehr
Speicher haben genialerweise nur 8 Pins ;-)
Stimmt, ich hätte jetzt den Tiny2313 in's Rennen geworfen, aber der hat
nur einen 16-bit und einen 8-bit Timer. Die 2K Flash sollten aber für
die meisten Sachen ausreichen.

Gruß
Thorsten
 
In article <3pcau8F9mp76U1@individual.net>,
"Kurt Harders" <news@kurt-harders.de> writes:
Hallo Gernot,

Ja, der wird reichen. Und üppig: Die Ansteuerung eines Servos erlaubt
nur einen Jitter von < 3ľs beim erzeugten Impuls. Gleichzeitig wird ein
Das Problem kenn ich. Ich habs mit einen 8051 dadurch gelöst dass in der
Interruptroutine der auslösende timer abgefragt wurde und danach ein
indirekter sprung über nops berechnet wurde.
Danach brauchte man nur noch den Timer mit dem wert fürs nächste Servo
zu laden und den nächsten Ausgang aktivieren.

Ob die die USI verwenden kannst um seriellen Daten zu empfangen hängt
vom Datenformat ab.


Signal mit 50ľs Pulslänge dekodiert (Interrupt) und dann ja auch noch
der Umlauf berechnet, also die Interpolation der Zwischenstellungen
vorgenommen. Das ganze dann mit allerlei Parametrierungen ergibt im PIC
ca. 3k Code (Assembler).
Das wird in tiny26 mit 2 k recht eng.
Notfalls käme da ein AT89c4051 in frage, der allerdings einen
Quarz oder Resonator braucht.


--
MFG Gernot
 
Hallo Gernot,

Gernot Fink wrote:

Das Problem kenn ich. Ich habs mit einen 8051 dadurch gelöst dass in
der Interruptroutine der auslösende timer abgefragt wurde und danach
ein indirekter sprung über nops berechnet wurde.
Im PIC mache ich das mit dem Compare-Modul, das dann per Hardware den
Impuls rücksetzt. Ein Timer erzeugt die 20ms und startet den Impuls.
Per Interrupt den Impuls zu beenden ist nicht möglich, da die
Interruptroutine das 50ľs-Eingangssignal bearbeitet und von diesen 50ľs
15-30 wegfrisst. Per Versuch bestätigt: Impulsausgang per SW gesetzt ->
10-20ľs Jitter.

Ob die die USI verwenden kannst um seriellen Daten zu empfangen hängt
vom Datenformat ab.
Nein, kann ich nicht. Sind auch gleich 3 Formate (für Modellbahner:
Selectrix, DCC und Motorola).

Notfalls käme da ein AT89c4051 in frage, der allerdings einen
Quarz oder Resonator braucht.
Schau ich mir mal an.

Bisher sieht es allerdings so aus, als ob es ein PIC bleibt.

Gruß, und schon mal Danke an alle.

Kurt
--
Kurt Harders
MBTronik - PiN - Präsenz im Netz GITmbH
mailto:news@kurt-harders.de
http://www.mbtronik.de
 
Hallo Kurt Harders,

Das FLASH ist nur mit Einschränkungen als
EEPROM verwendbar.

Ich brauche nur ein Byte, das allerdings bei jeder Betätigung des
Antriebs geschrieben wird. (Letzte Stellung).
Schon mal an Alternativen gedacht?
FRAM gibts in 8 Pin-* (EEPROM kompatibel) für I2C.
Ich weis dein Bausatz ist ne Preissensitive Angelegenheit und jedes weitere
Bauteil unerwünscht.
Gibts denn da Erfahrungswerte nach wie vielen Scheibvorgängen der EEPROM
hinüber ist?
Ich denke mir das eine Weiche an einer Bahnhofseinfahrt wohl sehr häufig
schalten wird und nach einigen/etlichen Jahren der EEPROM Probleme machen
könnte. Schon mal einen derartigen Ausfall gehabt? Wissen Deine Kunden das
die Weichensteuerung nur für ca. 1Mio. Schaltvorgänge reicht?


Andere Daten (ca. 10 Byte) werden sehr selten geschrieben.
das könnte man dann wirklich mit einer FLASH-Page lösen


Grüße
Erik
 
Hallo,

Ich brauche nur ein Byte, das allerdings bei jeder Betätigung des
Antriebs geschrieben wird. (Letzte Stellung).

Schon mal an Alternativen gedacht?
FRAM gibts in 8 Pin-* (EEPROM kompatibel) für I2C.
Ich denke jetzt eher an eine Litiumbatterie (gibts ab 15 ct), die einen
schlafenden ľC jahrelang mit speichererhaltender Spannung versorgen kann.

Ich denke mir das eine Weiche an einer Bahnhofseinfahrt wohl sehr häufig
schalten wird und nach einigen/etlichen Jahren der EEPROM Probleme machen
könnte. Schon mal einen derartigen Ausfall gehabt? Wissen Deine Kunden das
die Weichensteuerung nur für ca. 1Mio. Schaltvorgänge reicht?
Na ja, bleibt die Frage, ob die Mechanik 1 Mio Steuerzyklen übersteht.

Marte
 
Hallo Erik,

Erik G. wrote:

Schon mal an Alternativen gedacht?
Immer wieder :).

FRAM gibts in 8 Pin-* (EEPROM kompatibel) für I2C.
Jedes Loch kostet :). Und Platz ist auch teuer. Und dann noch ein
ganzes Bauteil.

Ich weis dein Bausatz ist ne Preissensitive Angelegenheit und jedes
weitere Bauteil unerwünscht. Gibts denn da Erfahrungswerte nach wie
vielen Scheibvorgängen der EEPROM hinüber ist? Ich denke mir das
eine Weiche an einer Bahnhofseinfahrt wohl sehr häufig schalten wird
und nach einigen/etlichen Jahren der EEPROM Probleme machen könnte.
Schon mal einen derartigen Ausfall gehabt? Wissen Deine Kunden das
die Weichensteuerung nur für ca. 1Mio. Schaltvorgänge reicht?
Die Weichenantriebe der Systemhersteller (Märklin, Trix, Roco,
Tillig...) werden meist auf 10.000 Umläude spezifiziert, der EEPROM von
PIC/Atem ist minimal auf 10.000 spezifiziert, typisch 100.000. Rechnen
wir mal MiniaturWunderland: Eine häufig gestellte Weiche schaltet alle
5 Minuten -> 12/Stunde -> 120/Tag -> 833 Tage -> 2,28 Jahre. Das ist
für die ein Produkt, welches alle anderen eingesetzten Produkte an
Lebensdauer überschreitet :).

Die Entscheidung ist ja jetzt für einen ATMega8 gefallen und der
scheint sowohl was die SW angeht als auch bei der Aussenbeschaltung
optimal. Ist halt neu Nummer zu groß, aber mit 1,15 im Preis OK.

Gruß, Kurt
--
Kurt Harders
MBTronik - PiN - Präsenz im Netz GITmbH
mailto:news@kurt-harders.de
http://www.mbtronik.de
 
"Kurt Harders" <news@kurt-harders.de> schrieb:

FRAM gibts in 8 Pin-* (EEPROM kompatibel) für I2C.

Jedes Loch kostet :).
Kannst ja SMD nehmen. ;-)

..., der EEPROM von
PIC/Atem ist minimal auf 10.000 spezifiziert, typisch 100.000.
PIC weiß ich gerade nicht, aber AVR seit einiger Zeit mit 100000
spezifiziert, typisch also eher ein ganzes Stück mehr.

Die Entscheidung ist ja jetzt für einen ATMega8 gefallen ...
Warum nicht gleich den ATmega88? Für ein neues Produkt würde ich den
als Nachfolger von vornherein ins Auge fassen. Hat den zusätzlichen
Vorteil, dass es ihn als ATmega48 oder ATmega168 pin- und
funktionskompatibel mit anderem Speicherausbau gibt, falls du in der
Serie dann feststellst, dass du weniger oder mehr brauchst.

--
cheers, J"org .-.-. --... ...-- -.. . DL8DTL

http://www.sax.de/~joerg/ NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)
 
Hallo Joerg,

Joerg Wunsch wrote:

Kannst ja SMD nehmen. ;-)
Dann erschlagen mich meine Bausatzkunden :).

Warum nicht gleich den ATmega88? Für ein neues Produkt würde ich den
als Nachfolger von vornherein ins Auge fassen. Hat den zusätzlichen
Vorteil, dass es ihn als ATmega48 oder ATmega168 pin- und
funktionskompatibel mit anderem Speicherausbau gibt, falls du in der
Serie dann feststellst, dass du weniger oder mehr brauchst.
Danke für den Tip. Ich habe diese Ablösung nicht mitbekommen. Auch bei
den Lieferzeiten scheint der Mega88 unproblematischer zu sein.

Gruß, Kurt.
--
Kurt Harders
MBTronik - PiN - Präsenz im Netz GITmbH
mailto:news@kurt-harders.de
http://www.mbtronik.de
 
Kurt Harders wrote:
Die Entscheidung ist ja jetzt für einen ATMega8 gefallen und der
scheint sowohl was die SW angeht als auch bei der Aussenbeschaltung
optimal. Ist halt neu Nummer zu groß, aber mit 1,15 im Preis OK.

Gruß, Kurt
Warum nicht einen PIC nehmen? Der hat internen Oszillator und ist auch recht
günstig. Dummerweise findet mein Newsserver das Ursprungsposting nicht mehr.
Sonst wüsste ich genauer, um was es alles geht. Aber ein 16F675 oder 16F688
ist schnuckelig klein und hat auch so einiges onboard.

HTH
Carsten
 
Hallo Carsten,

Carsten Wenzler wrote:

Warum nicht einen PIC nehmen? Der hat internen Oszillator und ist
auch recht günstig. Dummerweise findet mein Newsserver das
Ursprungsposting nicht mehr. Sonst wüsste ich genauer, um was es
alles geht. Aber ein 16F675 oder 16F688 ist schnuckelig klein und hat
auch so einiges onboard.
Ich komme ja vom PIC :). Bisher war ein in Assembler programmierter
16F627A in der Schaltung. Da ich wegen eines ganz anderen Projektes
aber HC08 lernen muss, habe ich mich mal etwas umgetan. Ausserdem ist
die Anwendung (Weichenantrieb) schon so komplex, dass in der letzten
Zeit die Eigenrarten des PIC die meisten Fehler ausgelöst haben und
mindestens manches recht umständlich wurde. Da es für den PIC keinen
preiswerten/freien C-Compiler gibt, bin ich dan am Ende auf den ATMega8
gekommen. Die Preise sind nah beieinander (PIC 1,04, ATM8 1,15), und
der ATMega8 hat neben dem C-Compiler (winavr/avr-gcc) mit eclipse noch
die Möglichkeit eine freilaufende PWM zu verwenden, die der PIC so
nicht bietet. Ausserdem ist er mit internem Takt 8x schneller, was mir
einiges an Handoptimierung des Codes erspart. Und er hat genug
Register/RAM für neue Anwendungen.

Gruß, Kurt
--
Kurt Harders
MBTronik - PiN - Präsenz im Netz GITmbH
mailto:news@kurt-harders.de
http://www.mbtronik.de
 
Kurt Harders wrote:
bin ich dan am Ende auf den
ATMega8 gekommen. Die Preise sind nah beieinander (PIC 1,04, ATM8
1,15), und der ATMega8 hat neben dem C-Compiler (winavr/avr-gcc) mit
eclipse noch die Möglichkeit eine freilaufende PWM zu verwenden, die
Ja, nur ist die Geschichte mit externem Quarz eben auch nicht umsonst und
für die großen Stückzahlen ATMEL nicht immer sehr zuverlässig mit
Lieferungen. Darüber hinaus sind die PICs extrem robust, was ESD anbelangt.
Bisher bin ich eigentlich auch begeistert über die Atmels, habe mich an
meinem Arbeitsplatz aber bei kommerziellen Projekten schon von den Vorteilen
der PICs überzeugen lassen.
Ein mir gefallender C-Compiler für Atmels ist übrigens der CVAVR (Code
Vision).

Grüße,
Carsten
 
In article <4353ebca$0$32524$9b622d9e@news.freenet.de>,
"Carsten Wenzler" <Carsten.Wenzler@freenet.de> writes:
Kurt Harders wrote:
bin ich dan am Ende auf den
ATMega8 gekommen. Die Preise sind nah beieinander (PIC 1,04, ATM8
1,15), und der ATMega8 hat neben dem C-Compiler (winavr/avr-gcc) mit
eclipse noch die Möglichkeit eine freilaufende PWM zu verwenden, die
Ja, nur ist die Geschichte mit externem Quarz eben auch nicht umsonst
Wer hindert Dich den internen Oszillator zu verwenden?

und
für die großen Stückzahlen ATMEL nicht immer sehr zuverlässig mit
Lieferungen. Darüber hinaus sind die PICs extrem robust, was ESD anbelangt.
Die ESD Probleme der Atmel 90er serie sollten mit den neuen Generation
(Tiny/Mega) Geschichte sein.

Bisher bin ich eigentlich auch begeistert über die Atmels, habe mich an
meinem Arbeitsplatz aber bei kommerziellen Projekten schon von den Vorteilen
der PICs überzeugen lassen.
Na sicher doch. Es gibt immer die bewußten 3 Cent die vom Management
durchgedrückt werden um die Serie billiger zu machen.
Ich fühle mich auf PICs einfach nicht wohl, wenn ich aber muß ...

Ein mir gefallender C-Compiler für Atmels ist übrigens der CVAVR (Code
Vision).
Bin den GCC vom Unix her gewöhnt, sieht bei mir als anders aus.

Gruß,

Holm

--
L&P::Kommunikation GbR Holm Tiffe * Administration, Development
FreibergNet.de Internet Systems phone +49 3731 419010
Bereich Server & Technik fax +49 3731 4196026
D-09599 Freiberg * Am St. Niclas Schacht 13 http://www.freibergnet.de
 

Welcome to EDABoard.com

Sponsor

Back
Top