Forum

Einloggen | Registrieren | RSS  

C-Programm für Atmel90CAN128 (Elektronik)

verfasst von geralds(R)  E-Mail, Wien, AT, 22.09.2009, 09:44 Uhr

» Hallo,
» für ein Projekt sollen wir den Atmel90CAN128 benutzen. Bisher haben wir in
» der Schule nur mit C++ programmiert und damit auch keine Microcontroller.
» Das folgende kleine testprogramm funktioniert, also Verbindung aufbauen
» und Microcontroller beschreiben funtioniert:
»
» Das Programm schaltet abwechselnd in der eingestellten Zeit entweder von
» PortF ADC0 und ADC2 oder ADC1 und ADC3.
»
» #include // wird gesagt das wir I/O benutzen wollen
» #include // wirdgesagt das wir Delays benutzen wollen
»
» Int main (void) // Hauptprogramm
» {
» Int x; // Variable X wird deklariert
»
» DDRF = 0xff; // im Port F werden alle Pins auf Ausgang
» gesetzt
» While(1)
» {
» PORTF = 0x00; // hiermit setzen wir den Ausgang Pin 0
» auf 1
» PORTF = (1<<0) | (1<<2); // hiermit wird Pin0 und 2
» auf 1 gesetzt
»
» X = 0; // hiermit wird x auf 0 gesetzt
» While (x<20) // bleib in der Schleife solange x
» kleiner 20
» {
» _delay_ms(16); // Verzögerung 16 ms
» X++; // zähle 1 zu x dazu
» } // wenn x = 20 gehe in folgenden schritt
» PORTF = 0x00; // hiermit setzen wir den Ausgang
» Pin0 auf 1
» PORTF = (1<<1) | (1<<3); // hiermit wird Pin1 und 3
» auf 1 gesetzt
»
» X = 0; // hiermit wird x auf 0 gesetzt
» While (x<20) // bleib in der Schleife solange x
» kleiner 20
» {
» _delay_ms(16); //Verzögerung 20ms
» X++; // zähle 1 zu x dazu
» }
» }
» }
» Also wir benutzen ein fertiges Board von Alvidi. Dort sind an den Ausgänge
» von PortF ADC0-ADC3 4LEDs und wir haben an PortE PE0-PE2 3 Schalter
» angeschlossen. Wir bekommen es aber nicht hin diese einzubinden.
» Kann mir jemand helfen wie ich es programmieren muß, dass Schalter 1 die
» erste LED anschaltet, Schalter 2 die zweite und der dritte Schalter die 3
» LED? Und wie wir unser Beispielprogramm so umschreiben, dass der Wechsel
» nur aktiv ist, wenn Schalter 1 z.B. eingeschlatet ist.
» Schonmal Danke für die Hilfe!

--
Hallo Stefan,

Schau mal im Handbuch nach unter "case".

Was hältst davon?
Mache "Routineboxen" mit der Abfrage

case1 -> Taste1
case2 -> ...
default ->...
...

http://www.elektronik-kompendium.de/forum/upload/20090922094010.doc
(Quelle: www.mikrocontroller.net)

Im Dok sind mehrere Beispiele über Verzweigungen, auch case.

Im Handbuch vom AVR hast es gut beschrieben.

Da findest auch Schritt für Schritt Hilfen.
www.mikrocontroller.net


Grüße
Gerald

--
...und täglich grüßt der PC:
"Drück' ENTER! :wink: Feigling!"



Gesamter Thread:

C-Programm für Atmel90CAN128 - stefan b.(R), 22.09.2009, 09:00 (Elektronik)
C-Programm für Atmel90CAN128 - Torsten(R), 22.09.2009, 09:41
C-Programm für Atmel90CAN128 - geralds(R), 22.09.2009, 09:44
C-Programm für Atmel90CAN128 - stefan b.(R), 22.09.2009, 10:37
C-Programm für Atmel90CAN128 - geralds(R), 22.09.2009, 11:05
Hinweis: Programmcodes Posten - ollanner(R), 22.09.2009, 19:39