Absolute Beginner-AVR Steckbrettprojekte: Unterschied zwischen den Versionen
Mfgkw (Diskussion | Beiträge) |
Mfgkw (Diskussion | Beiträge) K (→LCD ansteuern) |
||
Zeile 72: | Zeile 72: | ||
==LCD ansteuern== | ==LCD ansteuern== | ||
Das LCD wird im 4Bit Modus betrieben. Es kommt das Programm und der | Das LCD wird im 4Bit Modus betrieben. Es kommt das Programm und der Anschluss hier aus dem Forum unter [[AVR-GCC-Tutorial/LCD-Ansteuerung]] zum Einsatz. | ||
==Analogeingang einlesen== | ==Analogeingang einlesen== |
Version vom 23. November 2010, 20:31 Uhr
Als einfacher Anfang ist ein Steckbrett und ein USB Programmer erst mal ausreichend. Dazu ein Atmel Mega 88 und ein bisschen Hühnerfutter und los geht es.
Auf dem PC muss das AVR Studio, WinAvr und ggf. Ponyprog zum Übertragen der Hex-Files installiert sein. Die Beispielprogramme sind in C geschrieben.
LED einschalten
Die Fuse Bits bleiben auf Auslieferungszustand.
Der Mega 88 wird aus einer 9V Block-Batterie und dem 7805 mit 5V Spannung versorgt. Eine LED wird nach GND geschaltet, diese leuchtet wenn der Portpin auf 1 oder High liegt. Die andere LED wird nach Vcc geschaltet, diese leuchtet wenn der Portpin auf 0 oder Low liegt.
(Der Taster im Bild wird erst später gebraucht)
Im Programm wird im DDRD festgelegt, dass der Port D ein Ausgang ist. Durch den unterschiedlichen Anschluss der LED muss der Port D0 auf 1 und der Port D2 auf 0 gesetzt werden, damit beide LED leuchten.
Download Software: C Programm Download Software: Hex-File
Aufgaben:
Hex-File in Controller laden.
C-Programm kompilieren und dann den neuen Hex-File in den Controller laden
C Programm so ändern, dass die LED`s an einem anderen Port angeschlossen werden.
Eingang abfragen
Schaltplan siehe: LED einschalten
In der Initialisierung wird mit dem DDRD festgelegt, dass Port D0bis3 Ausgänge und D4bis7 Eingänge sind. Der interne Pull Up Widerstand Port D7 wird eingeschaltet.
Der Taster ist an Pin D7 angeschlossen. Der Taster schaltet nach Masse, daher ist der Pin D7 bei unbetätigtem Taster durch den internen Pull Up Widerstand (nach Vcc) auf High.
Download Software: C Programm
Download Software: Hex-File
Aufgaben:
Hex-File in Controller laden.
C-Programm kompilieren und dann den neuen Hex-File in den Controller laden
LED blinken lassen
Schaltplan siehe: LED einschalten
Die Fuse Bits bleiben auf Auslieferungszustand. Dadurch läuft der Controller auf 1Mhz internen Takt. Genutzt wird der Timer 1. Der Taktvorteiler wird auf 1024 eingestellt.
Zeit = 1 / (1.000.000/(1024*488) = 0,4997sec.
Das heißt: die Timerinterrupt-Routine 1 wird alle 0,5 Sekunden aufgerufen, die LED blinken mit 1Hz.
Download Software: C Programm Download Software: Hex-File
Aufgaben:
Hex-File in Controller laden.
C-Programm kompilieren und dann den neuen Hex-File in den Controller laden
C Programm so ändern, dass andere Blinkzeiten entstehen.
CLK/8 Fuse ändern, sodass der Controller 8-mal schneller läuft und die LED sehr schnell blinken.
LCD ansteuern
Das LCD wird im 4Bit Modus betrieben. Es kommt das Programm und der Anschluss hier aus dem Forum unter AVR-GCC-Tutorial/LCD-Ansteuerung zum Einsatz.
Analogeingang einlesen
Es kommt das Programm und der Anschuss hier aus dem Forum unter AVR-GCC-Tutorial#ADC_.28Analog_Digital_Converter.29 zum Einsatz.