Forum: Offtopic Was nehme ich nur?


von Daniel Q. (daniel_q)


Lesenswert?

Hallo, ich bin auf der Suche nach einem Mikrocontroller., der für meine 
Zwecke nutzbar ist und sehr hilfreich wäre es auch wenn jemand mir eine 
solche Schaltung zur Verfügung stellen könnte oder mir die richtige 
"Richtung" zeigen.

Ich wusste nicht welches Forum ich nutzen kann/soll.

Ich brauche eine Schaltung die folgende Anforderungen hat.
Grundgedanke ist hier eine Digitale Eieruhr.
Wo man per Knopfdruck die Zeit einstellen kann.
Die Zeit sollte über Display angezeigt werden und Rückwärts laufen.
Sie sollte Batterie Betrieben sein.
Dazu kommt auch eine "Ampel" die den Betriebszustand Signalisiert.
Die Ampel kann direkt angetrieben werden oder per Relais.
Grün = Timer deaktiviert (Stop gedrückt)
Gelb = Timer Läuft
Rot = Timer zu Ende.
Einen Start Knopf, einen Reset Knopf und einen zeit verzögerten Stop 
Knopf.
Vielleicht auch 2 oder 3 Stop Knöpfe je nach Umfang bzw. Aufwand.
Der Stop Knopf sollte eine gewissen Zeit gedrückt werden und beim 
Loslassen wieder von vorne Anfangen. Sodas er immer ich sage jetzt mal 
10 Sekunden gedrückt werden muss. Auch wenn man aus versehen nach 9 
Sekunden wieder loslässt.

Jetzt ist die Frage ob man so etwas bewerkstelligen kann.

Liebe Grüße

Daniel

von Timmo H. (masterfx)


Lesenswert?

Nimm einfach einen Attiny oder Atmega. Hilfe gibts hier genug. Anfangen 
solltest du vielleicht mit den bestehenden Artikeln:
AVR-Tutorial: Equipment
AVR-Tutorial
AVR-GCC-Tutorial

Kategorie:AVR-Tutorial

von Thomas D. (thomasderbastler)


Lesenswert?

evtl...sowas :

http://www.uwe-freese.de/

von Daniel Q. (daniel_q)


Lesenswert?

@ Timmo H : Vielen Dank für die Einführungslektüre. Werde mir das morgen 
nochmal genau in Ruhe ansehen, da ich jetzt gerade nicht wirklich viel 
Verstanden hab.^^

@  Thomas der Bastler : Dir auch einen Dank. Genau so etwas. Nur halt 
auf meine Bedürfnisse modifiziert. Geht das?

Gibt es ein Simulationsprogramm womit ich an einer Schaltung etwas herum 
experimentieren kann?

von Thomas D. (thomasderbastler)


Lesenswert?

Gehen tut es vieles, Frage ist, was kannst ?

Hardware ist abgebildet, simpel. Code auch. Habe aber vom Assembler 
keine Ahnung.

Deine Anwendung wäre ( Bascom) nicht allzu komplex.

von Michael B. (laberkopp)


Lesenswert?

> Sie sollte Batterie Betrieben sein.

Das ist dein Hauptproblem.

Wenn sie nicht nur 1 Tag aus einem riesen-Akku laufen soll,
dann brauchst du eine energiesparende Anzeige, ein nacktes LCD Glas
direkt angesteuert vom uC. so wie das alle billigen chineischen
Eieruhren mit LR44 Knopfzelle machen.

Dein zweites Problem sind die 3 Anzeigen rot/gelb/grün,
man kann zwar leuchtschwache LEDs nehmen, aber die brauchen
mehr Strom als eine kleine Batterie schafft, wenn man sie
dauernd leuchten lässt. Dann müsste man farbige LCD nehmen.

Für so ein Display
http://www.reichelt.de/Hintergrund-gruen/LCD-4-0-13/3//index.html?ACTION=3&GROUPID=3005&ARTICLE=10182&SHOW=1&START=0&OFFSET=16&;
braucht dein uC 32 Anschlüsse,
und man könnte überlegen, ob man Pfeil, Tilde und Plus mit
farbigem Lack zu rot, grün, blauen Indikatorpunkten macht.

Obwohl für energiesparen viele zu MSP4320 von Texas Instruments
raten werden, ein alter MSP430C133 reicht schon, tut es auch
ein AVR wie Atmega16 (oder natürlich Atmega164P PicoPower) und
PIC wie PIC16F1526, denn auch die können wenig Strom verbrauchen,
weil man sie sogar während die arbeiten zu 99% der Zeit im sleep
Zustand halten kann, denn sie sind unendich viel schneller als
alles was deine Anwendung erfordert.

Du merkst aber, daß Chips mit vielen Anschlüssen auch Gehäuse
mit vielen Drähteh haben und daher nicht ins Experimentierbrett
passen. Nimmt man externe Treiber wie 74HC595, kann man den
kleinsten und billigsten uC nehmen, beispielsweise ATmega8
oder PIC16F84.

Nimmt man Displays die Multiplexbetrieb erfordern, muss man aber
uC mit eingebautem LCD Controller oder externe LCD Controller
verwenden.

Deine Suche beginnt also mit dem Display. Alle "intelligeten"
Displays wie die 2 x 16 alphanumerischen Anzeigen brauchen aber
schon mehr Strom als die billigen chinesischen Eieruhren, also
zu viel.

von Timmo H. (masterfx)


Lesenswert?

Also das 2x8 von pollin (C0802-04) benötigt im Betrieb etwa 1mA und 
benötigt 7 Portpins. Das LCD würde ich eh ausschalten wenn man die 
"Eieruhr" gerade nicht verwendet. Für den Einstieg ist das doch 
eigentlich ein ganz nettes Projekt. Und ob die Batterien nun erstmal nur 
ein paar Wochen halten weil das Display und die (Low Current) LEDs für 
die Batterieanzeige dauerhaft an sind ist das auch erstmal wurst.

von Michael B. (laberkopp)


Lesenswert?

> Also das 2x8 von pollin (C0802-04) benötigt im Betrieb etwa 1mA

Damit wäre ein LR44, ach nein, das Teil braucht 4 Zellen,
in 5 Tagen leer, mit 3 LEDs a 2mA von denen nur 1 brennt
in weniger als 2 Tagen.

Nicht ganz der Standard billigster chinesischer Elektronikwaren.

Ja, man kann auch einen 9V Block mit nachfolgendem LP2950-5
Spannungsregler verwenden und einen echten Aus-Schalter einbauen.

von Timmo H. (masterfx)


Lesenswert?

Michael Bertrandt schrieb:
>> Also das 2x8 von pollin (C0802-04) benötigt im Betrieb etwa 1mA
>
> Damit wäre ein LR44, ach nein, das Teil braucht 4 Zellen,
> in 5 Tagen leer, mit 3 LEDs a 2mA von denen nur 1 brennt
> in weniger als 2 Tagen.
Also erstmal hat der TO nie von LR44 geredet, zum anderen läuft das 
Display auch mit 3V wunderbar. Man muss sich nur über eine Ladungspumpe 
(freier PWM-Pin) eine negative Kontrastspannung erzeugen.

Michael Bertrandt schrieb:
> Ja, man kann auch einen 9V Block mit nachfolgendem LP2950-5
> Spannungsregler verwenden und einen echten Aus-Schalter einbauen.
Oder bei Nichtbenutzung automatisch in den Sleep-Mode gehen und das 
Display über einen Portpin versorgen und dort dann auch die 
Spannungsversorgung abschalten.

Man kann auch gleich das AVR Butterfly nehmen... oder, oder, oder

von Daniel Q. (daniel_q)


Lesenswert?

Wow, jetzt bin ich ein wenig Sprachlos. Mit so vielen Antworten hatte 
ich gar nicht gerechnet.
Vielen Dank dafür!
Also platz habe ich ca 23*37 Zentimeter Für eine Platine.
Energie ist auch erst mal vollkommen egal.
Ich kann sollte es besser sein einen 10,8V Akku Pack mit 2200mAh 
benutzen.
Oder einen 9,6V 2200 mAh oder 11,1V Lipo mit 1600mAh bzw. 3600mAh.
Die habe ich hier liegen.
Es wird nicht allzu Oft benutzt. Wenn ich diese Schaltung 1 bis 3 Tage 
nutzen kann, reicht das vollkommen.

Sollte ich die Schaltung mal nicht brauchen, klemme ich eh die Batterie 
ab.
Und vor Benutzung wird der Akku voll geladen.

Als Ampel wollte ich jeweils 3 LEDs die unter einem Plexiglas streifen 
liegen nutzen. Es wird auch im Betrieb nur jeweils eine Farbe leuchten.

Ich hoffe ich habe jetzt alle fragen beantwortet. :-)

von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb:
> Ich hoffe ich habe jetzt alle fragen beantwortet. :-)

Nein.

Deine Aufgabenstellung ist immernoch viel zu konfus.

Es ist noch nicht geklärt, ob Du Dir das zum Selbstbau nötige Wissen 
erarbeiten willst, oder ob Du einfach nur einen Programmierer suchst, 
der Dir das macht.

Falls Du Eigeninitiative bevorzugst, kannst Du Dir nach dem Studium des 
oben empfohlenen Tutorials mal das hier ansehen:
Beitrag "Re: 7 Segmentanzeige falsch eingekauft, reagiert nur auf low"
Da sind bestimmt Anregungen für die Umsetzung drin.

...

von Daniel Q. (daniel_q)


Lesenswert?

Hi, es wäre schon sehr von Vorteil wenn mir jemand eine Schaltung 
vorgibt, da es ja so viele Varianten gibt. Was für einen Profi in Null 
komm nichts erledigt ist. Aber ich möchte auch verstehen was ich da 
mache.

Also ein Mix aus beidem. :-D

von Peter D. (peda)


Lesenswert?

Michael Bertrandt schrieb:
> Alle "intelligeten"
> Displays wie die 2 x 16 alphanumerischen Anzeigen brauchen aber
> schon mehr Strom als die billigen chinesischen Eieruhren, also
> zu viel.

Na übertreib mal nicht. Die EA-DOG sind mit 250µA angegeben.

von Peter D. (peda)


Lesenswert?

Daniel Q. schrieb:
> Ich kann sollte es besser sein einen 10,8V Akku Pack mit 2200mAh
> benutzen.

Akkus sind ungünstig, da ist die Selbstentladung zu hoch.
Auch sollte die max Spannung nicht >5,5V sein, damit man den MC direkt 
anschließen kann und kein Spannungsregler zusätzlich Strom frißt.
Die AVRs sind ja Weitbereich 1,8 .. 5,5V.

Z.B. 2 oder 3 AAA oder 3V Lithium.

von Michael E. (Firma: irgendeine) (nodalek)


Lesenswert?

Also die Schaltung für sowas ist einfachste Elektronik, der Aufwand 
steckt eher in der Programmierung, wenn du das selber machen willst.

von Daniel Q. (daniel_q)


Lesenswert?

Michael m. schrieb:
> Also die Schaltung für sowas ist einfachste Elektronik
Sollte ich hin bekommen, nach Schaltplan.

> der  Aufwand steckt eher in der Programmierung, wenn du das selber machen willst
Hier wird es Schwierig. :-D

von Daniel Q. (daniel_q)


Lesenswert?

Ich habe mich da jetzt etwas eingelesenen, aber verstehen tue ich leider 
nur die Hälfte. Wo ist der Unterschied zwischen einem 7 und einem 8 Bit 
breiten bidirektionalen I/O-Port? Und so weiter.

Gibt es eine Übersicht für "Dumme"?
Was ich verstanden habe ist dieses hier :
Pin 1 : Reset
Pin 7 : Eingang Versorgung (also +)
Pin 2 : Ausgang Versorgung (also -)

Vielleicht wäre es doch besser wenn mir jemand eine Schaltung und 
Programm machen kann.

von Daniel Q. (daniel_q)


Lesenswert?


von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb:
> Sollte reichen. Oder?

Ja sicher, wenn Du damit umgehen kannst.

...

von Daniel Q. (daniel_q)


Lesenswert?

@ Hannes : Wie meinst Du das?
Kriege ich die oben erwähnte Schaltungen damit hin und habe ich noch 
Reserve?

Wie muss ich mir das mit dem IO Interface vorstellen.
Ich kann die dann alle so Programmieren wie ich das brauche?
Z.B.:
1,2,3,4,5,6,7,8 Anzeige 1
9,10,11,12,13,14,15,16 Anzeige 2
17,18,19 Taster
20,21,22 LED
23 Hupe
24-32 Reserve

Kann man Eingänge auch zur Spannungsüberwachung nehmen um z.B. einen 
Lipo Akku als Versorgung zu nehmen und die Schaltung in den Ruhezustand 
zu setzen bei erreichen der kritischen Ladung?

Muss ich mir dafür noch einen Programmier-Apparat besorgen?
Welchen? Ich habe einen Windows 7 64 Bit PC.

Wo ist der Unterschied zwischen dem hier verbauten ATMEGA32L und dem 
ATMEGA8 vom Anfang?

Mit welcher Programmiersprache sollte ich anfangen? C? Assembler?
Welches Programm eignet sich als Neuling?

Fragen über Fragen :-D

von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb:
> @ Hannes : Wie meinst Du das?

Erstmal sarkastisch. Denn Deinen bisherigen Beiträgen nach zu urteilen 
musst Du noch viel lernen. Und zwar Grundlagen der Elektronik und auch 
der Programmierung. Ich vermute, Du siehst das zu blauäugig. Ich hoffe 
aber für Dich, dass ich mich irre und Du in der Lage bist, Dir das 
fehlende Wissen zu erarbeiten.

> Kriege ich die oben erwähnte Schaltungen damit hin und habe ich noch
> Reserve?

Das Board ist zwar Overkill, mit jede Menge Reserve. Für den Preis ist 
das Board aber ok, auch wenn der Mega32 mangels DIL-Gehäuse nicht 
auswechselbar ist. Für Dein Projekt würde bei Einsatz eines 
alphanumerischen LCDs ein Tiny2313 reichen, bei Einsatz von 
Lichtschachtanzeigen brauchst Du ein paar Pins mehr, da reicht 
vermutlich ein Mega48 oder Mega8. Für den Preis ist das Board aber ok.

Gäbe es das Board (ein paar Euro teurer) mit einem Mega1284 bestückt, 
dann würde ich es kaufen und für Modellbahn-Soundprojekte einsetzen.

>
> Wie muss ich mir das mit dem IO Interface vorstellen.

Jeweils 8 I/O-Pins sind zu einem Port zusammengefasst. Dabei lässt sich 
jeder I/O-Pin einzeln auf Eingang oder Ausgang schalten und falls 
Ausgang auf L- oder H-Pegel. Falls Eingang, dann kann man noch interne 
PullUp-Widerstände ein- oder ausschalten. Einige Pins haben aktivierbare 
Spezialfunktionen. Genauere Infos findest Du im Datenblatt des 
verwendeten Controllers.

> Ich kann die dann alle so Programmieren wie ich das brauche?
> Z.B.:
> 1,2,3,4,5,6,7,8 Anzeige 1
> 9,10,11,12,13,14,15,16 Anzeige 2
> 17,18,19 Taster
> 20,21,22 LED
> 23 Hupe
> 24-32 Reserve

Das kommt auf die Schaltung des Boards an. Einige der 32 I/O-Pins des 
Mega32 sind ja bereits durch LEDs, Taster, USB und anderen 
Schnickschnack blockiert. Und ohne Schaltplan weiß man natürlich nicht, 
welche Pins das sind.

>
> Kann man Eingänge auch zur Spannungsüberwachung nehmen um z.B. einen
> Lipo Akku als Versorgung zu nehmen und die Schaltung in den Ruhezustand
> zu setzen bei erreichen der kritischen Ladung?

Da gibt es Möglichkeiten. Die einfachste ist das Messen der 
Flussspannung einer vom internen PullUp betriebenen LED oder der 
internen Bandgap-Referenz gegen die Versorgungsspannung als 
ADC-Referenz.

>
> Muss ich mir dafür noch einen Programmier-Apparat besorgen?

Vermutlich nicht, das Ebay-Angebot weist auf das Programmieren über den 
USB-Anschluss hin. Falls im Mega32 ein entsprechender Bootloader 
installiert ist, könnte ein dazu passendes PC-Programm darauf zugreifen. 
Leider enthält das Angebot keinen Link auf das benötigte PC-Programm und 
auch keinen Hinweis auf eventuelle Kompatiblität zu anderen etablierten 
Bootloadern wie Arduino & co.

Falls der Mega32 aber neu (unprogrammiert) ist, oder die dazu passende 
PC-Software nicht gefunden wird, dann ist ein separater Programmer 
nötig.
Das Board hat aber Anschlüsse für ISP und JTAG, ist also mit allen 
üblichen ISP-Programmern programmierbar.

> Welchen? Ich habe einen Windows 7 64 Bit PC.

Das weiß ich nicht, denn ich habe kein Windoof 7. Unter Windoof XP 
benutze ich das STK500 von Atmel. Das wirst Du Dir aber sicher nicht 
kaufen wollen.

>
> Wo ist der Unterschied zwischen dem hier verbauten ATMEGA32L und dem
> ATMEGA8 vom Anfang?

Der Mega8 hat weniger I/O-Pins und weniger Speicher. Genaueres steht in 
den Datenblättern beider Controller, die beim Hersteller (www.atmel.com) 
zum kostenlosen Download angeboten werden.

>
> Mit welcher Programmiersprache sollte ich anfangen? C? Assembler?

Das kommt auf Deine Vorkenntnisse betreffs Informatik an.

> Welches Programm eignet sich als Neuling?

Das kommt auf den Neuling an. Ich bevorzuge Assembler und kann auch 
etwas Basic. C ist mir total unsymphatisch. Ich bin aber nicht das Maß 
der Dinge. Andere Leute sehen das anders. Die meisten empfehlen das, was 
sie in Schule oder Studium mal eingetrichtert bekommen haben und von dem 
sie nie wieder losgekommen sind.

>
> Fragen über Fragen :-D

Und jede Antwort wirft 'zig neue Fragen auf.

...

von Daniel Q. (daniel_q)


Lesenswert?

Hallo Hannes Lux, vielen Dank erstmal für die aufschlussreichen Infos.
Mir geht es in erster Linie um den Komfort Faktor. Wenn ich so ein 
fertiges Board kaufe, muss ich mich nicht mit den ganzen zusammen löten 
und dem dadurch größeren Dimensionen auseinander setzen. Sodas ich mein 
Hauptaugenmerk auf das Programmieren legen kann.

Ich hätte da noch ein paar Fragen zu.

Hannes Lux schrieb:
> Daniel Q. schrieb:
>> @ Hannes : Wie meinst Du das?
>
> Erstmal sarkastisch. Denn Deinen bisherigen Beiträgen nach zu urteilen
> musst Du noch viel lernen. Und zwar Grundlagen der Elektronik und auch
> der Programmierung. Ich vermute, Du siehst das zu blauäugig. Ich hoffe
> aber für Dich, dass ich mich irre und Du in der Lage bist, Dir das
> fehlende Wissen zu erarbeiten.
Das hoffe/denke ich auch. Ich komme aus einem Artverwandten Beruf. Habe 
aber nicht wirklich was mit der Materie zu tun gehabt.

>> Kriege ich die oben erwähnte Schaltungen damit hin und habe ich noch
>> Reserve?
>
> Das Board ist zwar Overkill, mit jede Menge Reserve. Für den Preis ist
> das Board aber ok, auch wenn der Mega32 mangels DIL-Gehäuse nicht
> auswechselbar ist. Für Dein Projekt würde bei Einsatz eines
> alphanumerischen LCDs ein Tiny2313 reichen, bei Einsatz von
> Lichtschachtanzeigen brauchst Du ein paar Pins mehr, da reicht
> vermutlich ein Mega48 oder Mega8. Für den Preis ist das Board aber ok.
Ist es möglich einen Pin doppelt zu belegen? Also mit der gleichen 
Funktion?Z.B. eine LED auf den Vorhanden Pin der vorhandenen LED zu 
legen?
Ich habe da noch ein paar Angebote gefunden, aber das sind weniger IO 
vorhanden. Oder?
http://www.ebay.de/itm/Uno-Arduino-Compa-tible-R3-ATmega328P-PU-ATMEGA8U2-AVR-USB-board-w-bootloade-/181013064998?pt=LH_DefaultDomain_0&hash=item2a25382d26
http://www.ebay.de/itm/ATmega8-M8-AVR-Development-Board-Core-Board-Minimum-System-/321147685355?pt=LH_DefaultDomain_0&hash=item4ac5e4c9eb

> Gäbe es das Board (ein paar Euro teurer) mit einem Mega1284 bestückt,
> dann würde ich es kaufen und für Modellbahn-Soundprojekte einsetzen.
Den 1284 habe ich nicht gefunden, aber einen mit dem Mega2560.

> Das kommt auf die Schaltung des Boards an. Einige der 32 I/O-Pins des
> Mega32 sind ja bereits durch LEDs, Taster, USB und anderen
> Schnickschnack blockiert. Und ohne Schaltplan weiß man natürlich nicht,
> welche Pins das sind.
Habe dazu eine Anfrage gestellt.

>> Kann man Eingänge auch zur Spannungsüberwachung nehmen um z.B. einen
>> Lipo Akku als Versorgung zu nehmen und die Schaltung in den Ruhezustand
>> zu setzen bei erreichen der kritischen Ladung?
>
> Da gibt es Möglichkeiten. Die einfachste ist das Messen der
> Flussspannung einer vom internen PullUp betriebenen LED oder der
> internen Bandgap-Referenz gegen die Versorgungsspannung als
> ADC-Referenz.
Das muss dann Programmiert werden oder?

> Das Board hat aber Anschlüsse für ISP und JTAG, ist also mit allen
> üblichen ISP-Programmern programmierbar.
Mit einem Externen Programmer kann ich dann auch den Bootloader 
wechseln?

>> Mit welcher Programmiersprache sollte ich anfangen? C? Assembler?
>
> Das kommt auf Deine Vorkenntnisse betreffs Informatik an.
Leider keine nennenswerten. Ich habe heute in der Stadt ein Buch 
gesehen.
Günter Schmitt - Mikrocomputertechnik mit Controllern der Atmel 
AVR-RISC-Familie
Lohnt sich die Anschaffung?

>> Fragen über Fragen :-D
>
> Und jede Antwort wirft 'zig neue Fragen auf.
>
> ...
OHH JA! ;-)

von Daniel Q. (daniel_q)


Angehängte Dateien:

Lesenswert?

Guten Morgen, ich habe den Schaltplan.
Sowie ein Programm namens HIDBootFlash.exe.

http://lifewillbeshine.com/dec/mega32boot_V14.rar

von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb:
> Guten Morgen, ich habe den Schaltplan.

Hast Du Dir inzwischen auch das Datenblatt des ATMega32 besorgt und 
angesehen? Da wirst Du sehen, dass es 4 Ports mit je 8 Pins gibt. Port 
A, B, C und D mit jeweils Bit 0 bis Bit 7. Und im Schaltplan des Boards 
siehst Du, welche Portpins für welchen Zweck bereits genutzt werden.

> Sowie ein Programm namens HIDBootFlash.exe.

Kannst Du das Programm starten? Bei mir (unter XP) lief es beim ersten 
Versuch nicht. Die Fehlermeldung meldete eine korrupte 
Anwendungskonfiguration. Genauer habe ich mir das nicht angesehen, da 
ich das Programm nicht wirklich brauche.

...

von Daniel Q. (daniel_q)


Angehängte Dateien:

Lesenswert?

Hi, bei mir startet es unter Windows 7 64 Bit.

Kann ich einen Pin eigentlich doppelt nutzen?
Also auf den Stecker am Board einen Schalter anschließen und den dann 
Quasi auch Extern nutzen?

von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb:
> Hi, bei mir startet es unter Windows 7 64 Bit.

Na prima, ich werde mir aber deshalb kein Windoof 7 64 Bit zulegen.

>
> Kann ich einen Pin eigentlich doppelt nutzen?

Das kommt auf den Einzelfall an.

> Also auf den Stecker am Board einen Schalter anschließen und den dann
> Quasi auch Extern nutzen?

Mit dem Schalter wirst Du aber die auf dem Board vorhandenen Bauteile 
nicht abschalten können. Zumindest sieht der Schaltplan so aus, als wenn 
das nicht vorgesehen ist. Der Schalter wird Dir also nichts nützen. Und 
da noch nichts über die Peripherie bekannt ist, kann man auch noch 
nichts dazu sagen, ob die Peripherie parallel zu den Bauteilen auf dem 
Board betrieben werden kann.

Daniel Q. schrieb:
> Ich brauche eine Schaltung die folgende Anforderungen hat.
> Grundgedanke ist hier eine Digitale Eieruhr.

Für welchen Zeitbereich?
Stunden? Minuten? Sekunden?

> Wo man per Knopfdruck die Zeit einstellen kann.

Wieviel Knöpfe? Wie erfolgt die Eingabe? Morsetaste? Up/Down-Tasten

> Die Zeit sollte über Display angezeigt werden

Wieviele Ziffernstellen? LED? LCD? Wie groß? Wieviel Stromverbrauch? 
Welche Spannung?

> und Rückwärts laufen.

Das haben Eieruhren meist so an sich.

> Sie sollte Batterie Betrieben sein.

Knopfzelle? - Achnein, es darf ja auch eine 12V-Batterie sein. ;-)

> Dazu kommt auch eine "Ampel" die den Betriebszustand Signalisiert.
> Die Ampel kann direkt angetrieben werden oder per Relais.

Was ist eine Ampel? 3 LEDs mit Widerständen für 10 mA? 
Halogenscheinwerfer?

> Grün = Timer deaktiviert (Stop gedrückt)
> Gelb = Timer Läuft
> Rot = Timer zu Ende.

Also nicht Rot = Warten, Gelb = Start folgt gleich, Grün = Start?

> Einen Start Knopf, einen Reset Knopf und einen zeit verzögerten Stop
> Knopf.

Verstehe ich nicht...

> Vielleicht auch 2 oder 3 Stop Knöpfe je nach Umfang bzw. Aufwand.

Verstehe ich auch nicht.

> Der Stop Knopf sollte eine gewissen Zeit gedrückt werden und beim
> Loslassen wieder von vorne Anfangen. Sodas er immer ich sage jetzt mal
> 10 Sekunden gedrückt werden muss. Auch wenn man aus versehen nach 9
> Sekunden wieder loslässt.

Verstehe ich nicht.

Vielleicht schreibst Du erst mal, was das eigentlich werden soll und 
wozu die Uhr dienen soll. Dann kann man vielleicht mitdenken und 
versteht auch Deine Hinweise.

...

von Daniel Q. (daniel_q)


Lesenswert?

Hannes Lux schrieb:
> Na prima, ich werde mir aber deshalb kein Windoof 7 64 Bit zulegen.
Das brauchst Du auch nicht :-D

>> Kann ich einen Pin eigentlich doppelt nutzen?
> Das kommt auf den Einzelfall an.
Die Schalter 1,2,3 und 4 sind am ATMEGA32 ja über PD3, PD4, PD5 und PD 6 
angeschlossen. Wenn ich auf die Stiftleiste einen Externen 
Schalter/Taster lege, kann ich doch auch "2" Schalter benutzen. Bzw. 
einen am Board ungenutzt und einen Externen am Gehäuse.
Das gleiche dachte ich auch für die LEDs.

> Für welchen Zeitbereich?
> Stunden? Minuten? Sekunden?
Nur Minuten. Evtl auch mehr. Allerdings denke ich das 120 Minuten das 
Maximum werden.

>> Wo man per Knopfdruck die Zeit einstellen kann.
> Wieviel Knöpfe? Wie erfolgt die Eingabe? Morsetaste? Up/Down-Tasten
Up und Down.

>> Die Zeit sollte über Display angezeigt werden
> Wieviele Ziffernstellen? LED? LCD? Wie groß? Wieviel Stromverbrauch?
> Welche Spannung?
Sowas. 
http://www.reichelt.de/Hintergrund-gruen/LCD-3-5-13-LOBAT/3/index.html?;ACTION=3;LA=2;ARTICLE=10181;GROUPID=3005;artnr=LCD+3%2C5-13+LOBAT

>> Dazu kommt auch eine "Ampel" die den Betriebszustand Signalisiert.
>> Die Ampel kann direkt angetrieben werden oder per Relais.
> Was ist eine Ampel? 3 LEDs mit Widerständen für 10 mA?
> Halogenscheinwerfer?
3 LEDs. Parallel zu PB0,PB1 und PB2?

>> Einen Start Knopf, einen Reset Knopf und einen zeit verzögerten Stop
>> Knopf.
Man stellt die Zeit z.b. auf 10 Minuten ein. Innerhalb der 10 Minuten 
kann man mit dem Stop Taster (der 15 Sekunden durchgängig gedrückt 
werden muss, sonst zählt die Stop Zeit von Vorne) den Countdown Stoppen.
Ist die Zeit abgelaufen, oder hat man gestopt, muss man Reset drücken 
damit man wieder eine Zeit einstellen kann.
>> Vielleicht auch 2 oder 3 Stop Knöpfe je nach Umfang bzw. Aufwand.
Würde mir gerne die Option für andere Stopzeiten offen lassen, bzw. Ein 
Taster 10 Sek, ein Taster 20 Sek oder einer 30 Sek.
>> Der Stop Knopf sollte eine gewissen Zeit gedrückt werden und beim
>> Loslassen wieder von vorne Anfangen. Sodas er immer ich sage jetzt mal
>> 10 Sekunden gedrückt werden muss. Auch wenn man aus versehen nach 9
>> Sekunden wieder loslässt.
Sollte der Stop taster bei einer eingestellten Zeit von 20 Sek nach 5,7 
Sek losgelassen werden, geht beim erneuten drücken wieder bei 0 Sek. los 
und nicht bei 5,7 Sek.

Ich hoffe damit sind die meisten Unklarheiten beseitigt.

von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb:
> Sowas.
> 
http://www.reichelt.de/Hintergrund-gruen/LCD-3-5-13-LOBAT/3/index.html?;ACTION=3;LA=2;ARTICLE=10181;GROUPID=3005;artnr=LCD+3%2C5-13+LOBAT

Bist Du sicher, dass es unbedingt dieses controllerlose LCD sein muss?

Daniel Q. schrieb:
> Ich hoffe damit sind die meisten Unklarheiten beseitigt.

Nein, Du hast immer noch nicht verraten, wozu das Ganze dienen soll.

...

von Daniel Q. (daniel_q)


Lesenswert?

Hannes Lux schrieb:
> Daniel Q. schrieb:
>> Sowas.
>>
> http://www.reichelt.de/Hintergrund-gruen/LCD-3-5-1...
>
> Bist Du sicher, dass es unbedingt dieses controllerlose LCD sein muss?
Der wurde vorher irgendwo erwähnt. Dachte der ist ganz Gut. :-)

von Daniel Q. (daniel_q)


Lesenswert?

Hallo, ich habe mich da jetzt mal etwas eingelesen.
Dabei ist mir eine frage gekommen.
Der SPI Bus benutzt ja MISO,MOSI und SCK.
Wenn ich Master / Multi Slave nutzen möchte, können die Slaves dann 
verschiedenen Bauteile sein?

von Timmo H. (masterfx)


Lesenswert?

Ja. Du musst halt nur jedem Slave einen eigenen Chip select spendieren

von Daniel Q. (daniel_q)


Angehängte Dateien:

Lesenswert?

Timmo H. schrieb:
> Ja. Du musst halt nur jedem Slave einen eigenen Chip select
> spendieren

Wie mache ich das denn? Bei meinem Schaltbild steht nur MISO, MOSI und 
SCK. Dann ist da noch ein Pfeil ohne Beschriftung.

von Timmo H. (masterfx)


Lesenswert?


von Daniel Q. (daniel_q)


Lesenswert?

Dort wird beschrieben das die SS0,SS1,SS3 die Steuerleitungen sind.
Woher bekomme ich die Steuerleitungen?
Muss das ein bestimmter Kontakt sein, oder kann ich da "irgendeinen" 
nehmen?

von Timmo H. (masterfx)


Lesenswert?

Daniel Q. schrieb:
> Dort wird beschrieben das die SS0,SS1,SS3 die Steuerleitungen sind.
> Woher bekomme ich die Steuerleitungen?
> Muss das ein bestimmter Kontakt sein, oder kann ich da "irgendeinen"
> nehmen?
Nimm irgendeinen freien Pin. Wenn du ein Slave ansprechen willst setzt 
du dessen Portpin (SS/CS) auf "0" und die der anderen Slaves auf "1".

von Daniel Q. (daniel_q)


Lesenswert?

Gibt es beim ATMega128 irgendwelche Ports die für Sehr Spezielle 
aufgaben entwickelt wurden und nicht zum Betrieb einer LED oder Taster 
genutzt werden sollten?
Bzw. Spricht etwas gegen eine Verwendung der folgenden Ports als SS/CS?
PE2, PE§, PE4, PE5, PE6, PE7 und PB0.

von Timmo H. (masterfx)


Lesenswert?

Daniel Q. schrieb:
> Gibt es beim ATMega128 irgendwelche Ports die für Sehr Spezielle
> aufgaben entwickelt wurden
Ja, fast jeder Pin hat eine spezielle/alternative Funktion.

> und nicht zum Betrieb einer LED oder Taster
> genutzt werden sollten?
Nein (außer du brauchst deren "spezielle Funktion")

> Bzw. Spricht etwas gegen eine Verwendung der folgenden Ports als SS/CS?
> PE2, PE§, PE4, PE5, PE6, PE7 und PB0.

Ist es so schwer S.2 des Datenblattes bzw. das Kapitel I/O Ports => 
Alternate Port Functions anzusehen?

(XCK0/AIN0) PE2
(OC3A/AIN1) PE3
(OC3B/INT4) PE4
(OC3C/INT5) PE5
(T3/INT6) PE6
(ICP3/INT7) PE7
(SS) PB0

ob du von den alternativen Funktionen etwas brauchst musst du selbst 
wissen

von Daniel Q. (daniel_q)


Lesenswert?

Hallo, leider habe ich da doch noch eine Frage.
Gibt es eine genaue Beschreibung wofür diese Bezeichnungen stehen?
AIN0 muss ja eine Abkürzung sein. Was verbirgt sich dahinter?

Des weiteren habe ich jetzt gelesen das :
---
Der erste betrifft den Anschluss der ISP-Signale (MISO, MOSI, SCK, 
RESET). Dieser erfolgt nicht wie bei den meisten anderen AVR-Controllern 
an den gleichnamigen Pins, sondern an PDI, PDO, SCK und RESET. Die 
Pinzuordnung ist:

        MOSI → PE0 (Pin 2)
        MISO → PE1 (Pin 3)
        SCK → PB1 (Pin 11)
        RESET → RESET (Pin 20)

PEN (Pin 1) hat für normale ISP-Adapter keine Bedeutung und kann offen 
gelassen oder direkt mit Vcc verbunden werden. Die Benutzung der Pins 
PDI und PDO anstelle von MOSI und MISO gilt für praktisch alle 
ATmega128-Derivate im 64-Pin-TQFP-Gehäuse, darunter AT90CAN32/64/128 und 
ATmega641/1281/2561. Im Zweifelsfall im Datenblatt (Pin Configuration) 
nachsehen, ob PE0 und PE1 mit "PDI" bzw. "PDO" beschriftet sind.
---
Heißt das ich habe jetzt 2 Mosi/Miso Anschlüsse?

von Timmo H. (masterfx)


Lesenswert?

Daniel Q. schrieb:
> Hallo, leider habe ich da doch noch eine Frage.
> Gibt es eine genaue Beschreibung wofür diese Bezeichnungen stehen?
> AIN0 muss ja eine Abkürzung sein. Was verbirgt sich dahinter?
Datenblatt öffnen => Strg+F => suche nach "AIN0" ein paar mal F3 
drücken... und dann hast du es. Wirklich so schwer?

>
> Des weiteren habe ich jetzt gelesen das :
> ---
> Der erste betrifft den Anschluss der ISP-Signale (MISO, MOSI, SCK,
> RESET). Dieser erfolgt nicht wie bei den meisten anderen AVR-Controllern
> an den gleichnamigen Pins, sondern an PDI, PDO, SCK und RESET. Die
> Pinzuordnung ist:
>
>         MOSI → PE0 (Pin 2)
>         MISO → PE1 (Pin 3)
>         SCK → PB1 (Pin 11)
>         RESET → RESET (Pin 20)
>
> PEN (Pin 1) hat für normale ISP-Adapter keine Bedeutung und kann offen
> gelassen oder direkt mit Vcc verbunden werden. Die Benutzung der Pins
> PDI und PDO anstelle von MOSI und MISO gilt für praktisch alle
> ATmega128-Derivate im 64-Pin-TQFP-Gehäuse, darunter AT90CAN32/64/128 und
> ATmega641/1281/2561.
Was ja ebenfalls im Datenblatt steht

> Heißt das ich habe jetzt 2 Mosi/Miso Anschlüsse?
Nein. Du hast ein vollwertigen SPI-Port und eben den Programmierport.

von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb im Beitrag #3244523 unter Anderem:

> ISP-Signale (MISO, MOSI, SCK, RESET).
> PDI, PDO, SCK und RESET.

ISP und JTAG ist Zweierlei.


> Die Benutzung der Pins
> PDI und PDO anstelle von MOSI und MISO gilt für praktisch alle
> ATmega128-Derivate

Ich habe jetzt zwar nicht nochmal nachgesehen, habe betreffs Mega128 
aber noch RXD und TXD im Hinterkopf.

> im 64-Pin-TQFP-Gehäuse, darunter AT90CAN32/64/128 und
> ATmega641/1281/2561.

Tip:
Lass die großen AVRs erstmal in Ruhe. Kauf Dir ein paar Tiny2313, stecke 
einen davon auf ein Steckbrett, lies dessen (überschaubares) Datenblatt, 
entscheide Dich für eine Programmiersprache und lasse erstmal ein paar 
LEDs (unabhängig voneinander) blinken, im nächsten Schritt dann 
vielleicht durch Taster aktiviert/deaktiviert. Dadurch bekommst Du 
erstmal ein Gefühl dafür, wie die Inhalte des Datenblattes zu 
interpretieren sind.

> Im Zweifelsfall im Datenblatt (Pin Configuration)

Nicht nur im Zweifelsfall. Das Datenblatt ist das A und O, ohne das geht 
gar nichts. Jeder AVR ist anders. Auch der Erfahrene muss ins Datenblatt 
schaun.

> Heißt das ich habe jetzt 2 Mosi/Miso Anschlüsse?

Es gibt AVRs mit zwei SPI-Ports. SPI und ISP sind Zweierlei. Viele AVRs 
nutzen die SPI-Schnittstelle auch für ISP. Viele AVRs haben gar keine 
SPI-Schnittstelle, aber trotzdem MISO/MOSI/SCK-Pins, die nur für ISP 
diese SPI-Funktion haben, ansonsten aber ganz normale Portpins sind.

Du musst unterscheiden zwischen:
- ISP (Schnittstelle zum Programmieren in der Schaltung)
- SPI (Serielles Peripherie-Interface zur Kommunikation mit anderen
  Controllern oder ICs)
- JTAG (Debug-Schnittstelle, über die man mittels Debugger auch
  programmieren kann)
- HVPP (Hochvolt-Parallel-Programming)
- HVSP (Hochvolt-Seriell-Programming)
- DW (Debug-Wire, Debug-Schnittstelle über die Reset-Leitung)

Nicht alle AVRs unterstützen dieselben Programmier/Debug-Schnittstellen.

...

von Daniel Q. (daniel_q)


Angehängte Dateien:

Lesenswert?

Timmo H. schrieb:
> Daniel Q. schrieb:
>> Hallo, leider habe ich da doch noch eine Frage.
>> Gibt es eine genaue Beschreibung wofür diese Bezeichnungen stehen?
>> AIN0 muss ja eine Abkürzung sein. Was verbirgt sich dahinter?
> Datenblatt öffnen => Strg+F => suche nach "AIN0" ein paar mal F3
> drücken... und dann hast du es. Wirklich so schwer?
Nein, das dort hinten nochmals Beschreibungen stehen, hatte ich noch gar 
nicht gesehen. Ich schaue mir das die Tage mal richtig an. So weit war 
ich leider noch nicht. Ich hatte gedacht das es evtl eine Übersicht gibt 
was die einzelnen Pins bedeuten. So wie ein "Stichwortverzeichnis".
(Siehe hierzu auch ganz Unten.)

>> Des weiteren habe ich jetzt gelesen das :
>> ---
>> Der erste betrifft den Anschluss der ISP-Signale (MISO, MOSI, SCK,
>> RESET). Dieser erfolgt nicht wie bei den meisten anderen AVR-Controllern
>> an den gleichnamigen Pins, sondern an PDI, PDO, SCK und RESET. Die
>> Pinzuordnung ist:
>>
>>         MOSI → PE0 (Pin 2)
>>         MISO → PE1 (Pin 3)
>>         SCK → PB1 (Pin 11)
>>         RESET → RESET (Pin 20)
>>
>> PEN (Pin 1) hat für normale ISP-Adapter keine Bedeutung und kann offen
>> gelassen oder direkt mit Vcc verbunden werden. Die Benutzung der Pins
>> PDI und PDO anstelle von MOSI und MISO gilt für praktisch alle
>> ATmega128-Derivate im 64-Pin-TQFP-Gehäuse, darunter AT90CAN32/64/128 und
>> ATmega641/1281/2561.
Das Zitat zwischen den --- steht hier im Forum.

>> Heißt das ich habe jetzt 2 Mosi/Miso Anschlüsse?
> Nein. Du hast ein vollwertigen SPI-Port und eben den Programmierport.
Das habe ich jetzt nicht wirklich verstanden. Ich habe dort den ISP 
womit man Programmiert und einen SPI Port wo man Erweiterungen usw 
ansprechen kann(sofern die Erweiterung das auch kann).
mein Frage zielte speziell auf die Funktionsweise bzw die Beschreibung.
Auszug aus dem Datenblatt:
RXD0/(PDI) PE0
(TXD0/PDO) PE1
(SS) PB0
(SCK) PB1
(MOSI) PB2
(MISO) PB3

Laut dem einen Schaltplan steht dort das
MOSI - RXD0/(PDI) PE0 - Pin 2
MISO - (TXD0/PDO) PE1 - Pin 3
SCK - (SCK) PB1 - Pin 11

     - (MOSI)PB2 - Pin 12
     - (MISO)PB3 - Pin 13
Die oberen 3 Pins gehen direkt zur ISP Schnittstelle.
Wozu also die unteren 2?
Deswegen meine Verwirrung.
Ich werde mir aber den Rat von Hannes zu Herzen nehmen und mir mal einen 
Tiny besorgen. Mit dem dann etwas experimentieren.

Vielen Dank für die Hilfe bis jetzt.

Noch eine kleine Anmerkung in eigener Sache.
Ich komme nicht aus dem Bereich. Ich bin Techniker für 
Telekommunikation.
Habe mit den Sachen nie wirklich was gemacht. Das man am Anfang Fehler 
(Viele und auch Dumme) macht ist selbstverständlich.
Ich bilde regelmäßig Leute aus und sehe auch immer wieder die gleichen 
Fehler.Man sollte jemanden der sich nicht mit so etwas Auskennt, ein 
gewisses Maß an Toleranz entgegen bringen.Ich sage meine Kunden auch 
nicht : Gelbes Kabel in die Gelbe Buchse. Graues Kabel in die Graue 
Buchse. Ist das so Schwer? (Und Ja, das passiert Wirklich)
Ich dachte das hier ist ein Forum wo man anderen Hilft. Sollte ich mich 
irren und das ist ein Forum wo jeder alles schon gemacht hat. Bitte ich 
dies zu Entschuldigen. Ich gehe in die Vermittlungsstelle und weiß 
sofort wo ich wie zu Schalten habe. Andere gucken ins Datenblatt und 
springen sofort auf seit 287 weil genau dort steht was sie wissen 
wollen.
Ich sage bei vielen Kunden : Ich kann das und wenn ich anfangen würde zu 
Bügeln, rufen Sie vorsorglich die Feuerwehr, weil ich kurz davor bin das 
Haus ab zu brennen.
Das nur mal so am Rande.

Viele Grüße Daniel

von Hannes L. (hannes)


Lesenswert?

Daniel Q. schrieb:
> Das habe ich jetzt nicht wirklich verstanden. Ich habe dort den ISP
> womit man Programmiert und einen SPI Port wo man Erweiterungen usw
> ansprechen kann(sofern die Erweiterung das auch kann).

Richtig, bei vielen AVRs ist beides identisch, bei einigen aber nicht. 
Aber in jedem Datenblatt gibt es das Kapitel Programming. Darin gibt es 
je nach Ausstattung des jeweiligen AVR-Typs Anschlusspläne für ISP, 
HVPP, HVSP, DW und oder JTAG. Und für die ganz Harten sind auch noch die 
Protokolle (zu übertragende Sequenzen) erklärt. Das musst Du aber alles 
nicht bis ins Detail wissen, wenn Du Dir einen handelsüblichen 
ISP-Programmer besorgst, mit dem die von Dir bevorzugte Programmier-GUI 
zurecht kommt.

Ehe Du Dich an den 128er oder seine USB/CAN-Brüder heranwagst, solltest 
Du aber (im eigenen Interesse) erstmal Erfahrungen mit einem 
überschaubaren AVR sammeln. Ich halte dafür den Tiny2313/4313 für 
optimal, falls ADC-Anwendungen interessieren, dann auch den Mega48 oder 
seine größeren Brüder, da die oftmals preiswerter sind. Wenn Du Dir 
damit das Verständnis für den Kern (Befehlssatz) und die ersten internen 
Peripheriemodule (Ports, Interrupts, Timer, U(S)ART, ADC, SPI, TWI, ...) 
erarbeitet hast, dann verstehst Du auch die Datenblätter der großen AVRs 
besser und kannst viel besser planen und die für Deine Zwecke geeigneten 
AVRs auswählen.

Durchforste vor einem unüberlegten Kauf auch mal den Laden von Markus 
Weber.
https://guloshop.de/shop/Mikrocontroller:::3.html
Und nein, ich verdiene nichts daran, bin nur mit den bisher dort 
getätigten Einkäufen zufrieden.

...

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.