Hallo mC gemeinde, ich will nicht das Rad neu erfinden. Hat schon jemand eine Schaltung, in der ein ATtiny eine Count-Down-Uhr mit Zusatzfunktion erstellt hat. Als Zusatzfunktion soll ein bestimmter Betrag an Spielgeld lineare mit der Zeit runtergezaehlt werden. Ich habe 20 ATtiny 2312, eine ATMega und AVRISPmkII zu Verfügung. Aussdem ein 100 Mhz DSO von UNI-T und einige Multimeter, Lochrasterplatine und Lötstation. Also, hat jemand schon ATtiny als Count-Down Uhr benutzt? Danke für eure Hilfe
Sebastian Gregor schrieb: > Also, hat jemand schon ATtiny als Count-Down Uhr benutzt? Sicher... Wie viele stellen soll dein Zähler haben? Für 3 Stellen habe ich diese Schaltung gefunden: http://www.mikrocontroller.net/attachment/31941/Tut_7_Seg_03.gif Das Programm schreiben musst du dann selbst...
Hallo, ja , klar schreibe ich das Programm selber. Von der Uni her bin ich C gewöhnt, allerdings unter AIX und Linux. Ich finde es schon komisch, aus dem Flash heraus die Software laufen zu lassen. Nein, ich wollte ueber einen I2C Bus die Display ansteuern, das ganze soll wie eine TV Show aussehen, also Zeit und Spielgeld runterzaehlen. Trotzdem danke
Sebastian Gregor schrieb: > Hallo, > ja , klar schreibe ich das Programm selber. Na dann mach. Das 'aufwändigste' ist der I2C Code. Eine runterzählende Uhr ist wahrlich keine Raktentechnik. > gewöhnt, allerdings unter AIX und Linux. Ich finde es schon komisch, aus > dem Flash heraus die Software laufen zu lassen. Ein AVR-Programm ist so gesehen auch nicht viel anders in der Programmierung. Ok, so manches fehlt zwar, wie zb Ausgabe auf Konsole oder ein Filesystem und um dynamische Speicherverwaltung macht man besser einen großen Bogen. Allerdings braucht man auch nichts davon auf dem AVR in deiner Applikation. Das Grundgerüst lautet:
1 | int main() |
2 | {
|
3 | ... alle Hardware-Komponenten initialisieren |
4 | |
5 | ... eventuell ein sei(), wenn Interrupts im SPiel sind |
6 | |
7 | while( 1 ) |
8 | {
|
9 | .. Programmlogik |
10 | }
|
11 | }
|
Im Grunde ist das also nichts anderes als ein Programm, welches auf einem Linux endlaus laufen würde und rausgeschossen werden müsste, um es wieder los zu werden. Nur dass du letzteres auf einem AVR ja gar nicht willst. Das Teil soll laufen, solange der µC Strom hat.
Sebastian Gregor schrieb: > Nein, ich wollte ueber einen I2C Bus die Display ansteuern Hast du da schon eines im Kopf?
Hallo, ich habe von Pollin ein 810 145 LCD/I2C mit passenden Display besorgt. Macht ja auch Sinn, alles über 2 oder 3 Leitung anzusteuern statt ATMega mit diversen I/O ein 7 SEG -Display anzusteuern. Es ist doch unwahrscheinlich, das ich der erste bin, der eine "massgeschneiderte" Uhr braucht.
Ich würde mit mal das AVR-GCC-Tutorial/LCD-Ansteuerung durchlesen. Mit deinem I2C teil geht das gleich, nur dass du nicht direkt di IOs des AVR sondern über I2C die IOs des PCF8574 ansteuern musst. Je nachdem wie viel du noch an den µC anschließen willst würde ich falls noch 6 IOs frei das LCD direkt an den µC anschließen, dann sparst du dir den Umweg über I2C.
Das Bisschen Anzeige macht sogar ein Tiny24, mit 6 Port-Pins direkt an einem billigen und einfach anzusteuernden Standard-LCD-Display. Bleiben noch 5 Port-Pins für Tasten etc., wenn es nicht quarz-genau sein muss. Die Schaltung ist also NULL Problem. Counnt-Down für Zeit und Spielgeld: Auf einem 2x16 LCD-Display kannste Milliarden von Spiel-Dollars (mit Cents) hoch und runterzählen. Und Jahrhunderte mit 1 Sekunde Auflösung... Wo hapert es denn an der Programmierung? Die ist auf einem Xmega weder leichter, noch schwerer.
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.