Hallo, ich versuche gerade eine LCD ansteuerung in C zu implementieren um etwas Erfahrung in der Programmierung von AVRs in C zu bekommen. Jetzt scheitere ich aber schon an der Umsetzung einiger ASM Befehler in C... kann mir jemand vieleicht sagen ob es so eine Art Befehlsübersicht gibt? in etwar so wie die ASM Befehle im Datenblatt nur halt für den GCC Compiler? Gruß Malte.
Hallo, klinke mich hier auch mal mit ein. Das angegebene Manual enthält functions. Logische Operationen and / or oder shift Operationen finde ich nirgends. Habe schon etliches abgegrast. Vielleicht hat ja jemand einen Tip für eine Dummie! Danke
@Wolfgang: Google findet mit dem Suchbegriff "c operatoren" doch genug brauchbare Seiten.
Hallo, danke !! Tagelanges Rumsuchen beendet. (für Java bin ich besser ausgestattet) N.B: Gibts eigentlich einen Ansatz Java => AVR ??
http://www.rtjcom.com Ist noch nicht auf AVR portiert, dürfte aber nicht all zu schwierig sein. Ob Java hier sinnvoll ist, ist eine ganz andere Frage...
Hier ein paar Macros die ich in verschiedenen AVR Foren gefunden habe: ************************************************* // Init: DDRA &= ~_BV(0); //Bit 0 = Input PORTA |= _BV(0); //Pull-Up for Bit 0 on DDRB |= _BV(4); //Using PortB bit4 for output //check input bit0 on PORTA if( (PINA & _BV(0)) == 0) { action_key(); //key is pressed } //Setting the output bit 4 on PortB PORTB |= _BV(4); //Clear the output bit 4 on PortB PORTB &= ~_BV(4); // toggle bit 2 on PortB PORTB ^= _BV(PB2); ****************************************************************** #define LED_RED(onoff) \ do { \ if (on) PORTB |= _BV(PB2);\ else PORTB &= ~_BV(PB2); \ } while(0) **************************************************** Man kann Binärzahlen mit folgendem Macro schreiben: #define BIN8(b7,b6,b5,b4,b3,b2,b1,b0) ((unsigned char)\ (b0 << 0)\ | (b1 << 1)\ | (b2 << 2)\ | (b3 << 3)\ | (b4 << 4)\ | (b5 << 5)\ | (b6 << 6)\ | (b7 << 7)) z.B.: x = BIN8(0,0,0,0,0,0,1,0);
Noch was für Leute die nicht von Binärzahlen loskommen ;-) http://www.mikrocontroller.net/forum/read-2-16756.html#17267
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.