Forum: Mikrocontroller und Digitale Elektronik Welchen AVR nehmen?


von TimberDown (Gast)


Lesenswert?

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

von Ulrich F. (Gast)


Lesenswert?

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

von Finn S. (scooter757)


Lesenswert?

Was ist mit 3 5V Geräten gemeint?

von Christian J. (Gast)


Lesenswert?

Atmega1284P (DIP) oder Atmega2560 (TQFP)

von Christian J. (Gast)


Lesenswert?


von Ulrich F. (Gast)


Lesenswert?

Finn Stutzenstein schrieb:
> Was ist mit 3 5V Geräten gemeint?

Drei 5 Volt Geräte.
??

von Rudolph R. (rudolph)


Lesenswert?

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.

von Wolfgang (Gast)


Lesenswert?

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.

von Horst S. (Gast)


Lesenswert?

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).

von c-hater (Gast)


Lesenswert?

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.

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

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

von Joachim B. (jar)


Lesenswert?

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!

von Christian (dragony)


Lesenswert?

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 :)

von Joachim B. (jar)


Lesenswert?

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.

von Christian (dragony)


Lesenswert?


: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.