Guten Tag, ich möchte mir meinen ersten AVR für ein Projekt zulegen. An den AVR sollen 1 LCD Display, 3 LEDs, 3 Knöpfe, 3 Sensoren und 3 5V Geräte angeschlossen werden. Außerdem soll er mit dem Computer kommunizieren können (1 - 8 Zeichen senden/lesen können). Und ich hab ein paar Fragen: 1. Kann ein AVR überhaupt so viele Geräte GLEICHZEITIG betreiben? 1a. Wenn nicht welche günstigen Alternativen gibt es? 2. Kann man um die Leistung eines AVR zu steigern, aus 2 AVRs sozusagen einen Dual-Core AVR zusammenbauen? 3. Wie viel verbraucht ein AVR an Strom? 4. LG TimberDown
1: Kooperatives Multitasking (und wenn er genug Beine hat) 2: Die meisten haben Schnittstellen um mit anderen Bausteinen zu quatschen 3: Das sagt das Datenblatt
Atmega1284P (DIP) oder Atmega2560 (TQFP) http://www.ebay.de/itm/NEW-ATmega2560-16AU-CH340G-MEGA-2560-R3-Board-Free-USB-Cable-For-Arduino-/371344340393?pt=LH_DefaultDomain_77&hash=item5675d8f5a9
Was ist mit 3 Sensoren gemeint? Der Mega164PA könnte in Frage kommen. Rein rechnerisch wahrscheinlich auch einer mit weniger Pins, aber das Gefummel im Layout ist schlimmer als ein paar Cent mehr für zu viele Pins.
TimberDown schrieb: > 3 Knöpfe Knopfe kenne ich wohl vom Hemd oder auf Potis. Was hat das mit einem µC zu tun? > 3 Sensoren Es gibt sehr verschiedene Sensoren. Auflösung, Abtastrate und Schnittstelle sollten zumindest klar sein.
An den AVR sollen 1 LCD Display, ... vermutlich I2C, also 2 Pins + ggf 1x Enabled = 3 Pins über TWI, SPI oder normale IOs möglich. 3 LEDs ...3 Pins als out 3 Knöpfe ...also wohl Taster, also 3 Pins in 3 Sensoren ... AD-Wandler, also 3 Pins und 3 5V Geräte angeschlossen werden. ... Relais oder Transistoren als Ein-Aus-Schalter? 3 Pins Außerdem soll er mit dem Computer kommunizieren können (1 - 8 Zeichen senden/lesen können). ...2 Pins UART (RxD/TxD) a) über MAX232 auf RS232-Pegel bringen, danach über USB-Seriell-Wandler per Kabel zum PC oder b) per Bluetooth (HC-06 o.Ä.) auf's Notebook (hier entweder eingebaut oder Bluetooth-Stick anstöpseln). Macht 'nen schlanken Fuß, so ne kabellose Verbindung. Was Du noch nicht weisst, für den InCircuit-Programmer brauchst Du noch 3 weitere auf einen 6-poligen Stecker geführte Pins (MISO/MOSI/SCK). Wenn ich Deine Anforderungen richtig verstanden habe, komme ich auf 20 I/Os. Das geht auch schon mit den 28 poligen ATMega 48/88/168/328. Die haben UART/ AD-Wandler/ SPI/ TWI an Bord. Hast Du denn einen Programmer? Bei den 28-Pin-Typen kommt es jetzt allerdings drauf an, ob Du den Code in bis zu 32k Flash und die Variablen in bis zu 2k RAM quetschen kannst. Vorteile der 40-poligen Varianten: - Mehr Pins, die Du nicht brauchst - Mehr Programmspeicher (schreib mal in Deinem ersten Programm 32k voll) - Mehr RAM (Wenn Du ein großes DOG-Grafikdisplay mit Doublebuffer im RAM betreiben willst, könntest Du mehr RAM gebrauchen) P.S. Tue Dir selber am Anfang nen Gefallen: Besorg Dir: - nen AVR nebst Programmer - ne passende IC-Fassung - Loch-oder Streifenrasterplatine - ne LED mit Vorwiderstand - Eine 10k Widerstand als Reset-Pullup - eine doppelreihige Stiftleiste im Rastermaß 2,54mm - eine stabilisierte 3-5V-Spannungsversorgung (Labornetzteil, Batteriekasten, o.Ä) Verdrahte damit mal die Minimalanforderungen zum Programmieren des Controllers nach Datenblatt. Dann kannste Dir mal das Vergnügen gönnen, die LED per Programm zum blinken zu kriegen. Wenn Du dann noch Spaß an der ganzen Sache hast... ...wenn nicht, verkauf den Programmer wieder und kauf Dir von dem Geld einen Arduino (man muss ja nicht immer bei null anfangen).
TimberDown schrieb: > ich möchte mir meinen ersten AVR für ein Projekt zulegen. > An den AVR sollen 1 LCD Display Was für eins? Die Spanne ist hier sehr weit, von einem einfachen "naked" Siebensegment-LCD bis zu einem 4k-TFT-Panel fällt irgendwie alles unter "LCD". > 3 LEDs, 3 Knöpfe Dafür braucht man im schlimmsten Fall 6 GPIO-Pins. > 3 Sensoren und 3 5V > Geräte angeschlossen werden Was sind "5V-Geräte"? Und über welche Schnittstelle(n) sind die Sensoren anzusprechen? > Außerdem soll er mit dem Computer > kommunizieren können (1 - 8 Zeichen senden/lesen können). Über welche Schnittstelle? > Und ich hab ein paar Fragen: Das sind die falschen Fragen. Die richtigen stehen oben. Erst wenn du die beantwortet hast, kann man dazu übergehen, in etwa die Fragen zu stellen, die du gestellt hast.
TimberDown schrieb: > 1. Kann ein AVR überhaupt so viele Geräte GLEICHZEITIG betreiben? Sicher. > 1a. Wenn nicht welche günstigen Alternativen gibt es? Viele. Die Frage ist, was du mit "günstig" meinst. Preis? Einarbeitungszeit? Stromverbrauch? Farbe? ;-) > 2. Kann man um die Leistung eines AVR zu steigern, aus 2 AVRs sozusagen > einen Dual-Core AVR zusammenbauen? Das geht sicher, lohnt aber wahrscheinlich den Aufwand nicht. > 3. Wie viel verbraucht ein AVR an Strom? Steht genau – wie schon geschrieben wurde – im jeweiligen Datenblatt. Oder anders gesagt: Je nachdem. Zwischen unter 1 µA bis zu über 5 mA. > 4. LG TimberDown Genau. :-) Diese Übersicht hat mit am Anfang sehr geholfen: AVR Typen
TimberDown schrieb: > 1. Kann ein AVR überhaupt so viele Geräte GLEICHZEITIG betreiben? das kann fast jeder wenn du nur LCD mit 8-40 Zeichen meinst, mehr als 3-5x pro Sekunde wirst du nicht aktualisieren wollen, wird unlesbar. Knöpfe? äh Tasten sollten auch 64 Stück oder mehr kein Problem sein. Meine 8 in der ISR (alle 10ms) per I2C ausgelesen PCF8574(A) brauchen 100-200µs und da war ich noch auf 100kHz I2C. Ich merkte aber das auch 400kHz möglich sind. 8 Tasten könnten auch an einem ADC-Port mit R-Teiler hängen, spart Leitungen Das größte Problem wird nachher der Code, mit 32k ATmega 328p reicht schon ziemlch weit, günstig als Arduino nano oder PROmini. Für größeres gibt es den 1284p oder m2560 wobei der 1284p doppelt so viel RAM hat 16kB!
Joachim B. schrieb: > TimberDown schrieb: >> 1. Kann ein AVR überhaupt so viele Geräte GLEICHZEITIG betreiben? > > das kann fast jeder wenn du nur LCD mit 8-40 Zeichen meinst, mehr als > 3-5x pro Sekunde wirst du nicht aktualisieren wollen, wird unlesbar. Blödsinn. Ich habe ein 480x320 TFT im 16bpp Modus und refreshe den ohne Probleme 10 mal pro Sekunde komplett. Muss man halt 8 Bit Bus nehmen :)
Christian S. schrieb: > Blödsinn. Ich habe ein 480x320 TFT im 16bpp Modus und refreshe den ohne > Probleme 10 mal pro Sekunde komplett. ach du macht Videos? (Dein Blödsinn bleibt, wer kann in 100ms alles lesen?) Ich persönlich habe ja Probleme alles zu lesen was in 330ms wieder weg ist. Sollte das Wichtige länger als 100-330ms stehen bleiben brauche ich nicht 10x pro Sekunde refreshen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.