Lily-Pads und andere Atmel-Programmierung
Lily-Pads
Hier entsteht im Laufe der Zeit eine Übersicht über Lily-Pads.
Zunächst aber nur eine Linkliste
Das Atmel Board und der ATMEGA8515
Da ich mich nach dem Toasteredwin-Workshop mit weiterer Arduino Programmierung beschäftigen wollte, aber die Bestellung leider noch nicht da war, habe ich mich an das Atmel Board gesetzt, was noch bei uns im Keller lag.
Zunächst habe ich ein einfaches Programm geschrieben, welches die vorhandenen LED's ansteuert. Das nächstgrößere Projekt soll es sein, ein LCD-Modul oder eine Tastatur anzusteuern.
Die acht LED's habe ich binär zählen lassen, bzw. ich habe die ersten sieben LED's angesteuert zum zählen und die letzte LED blinkert jedesmal beim zählen mit.
zaehler.c |
---|
/* Autor: Xenia Rendtel Letzte Änderung: 16.08.2009 Programm um mit LEDS binaer zu zählen */ #include <avr/io.h> #include <util/delay.h> #include "led.h" // Dezimalzahl wird nach binaer umgewandelt und // schaltet die passenden LED's auf dem Board an void dezimalnachbinaer(int zahl) { int bit; for (bit=0; bit<8; bit++) { if ((zahl & (1 << bit)) != 0) { LedAn(bit); } else { LedAus(bit); } } } int main ( void ) { int i = 0; int lauf = 1; LedInit (); while (lauf) { // von 0 bis 127 zählen for (i=0;i<127;i++) { LedAn(7); _delay_ms(10); LedAus(7); dezimalnachbinaer(i); _delay_ms(500); } // wieder rueckwärts zählen for (i=3;i>-1;i--) { LedAn(7); _delay_ms(10); LedAus(7); dezimalnachbinaer(i); _delay_ms(500); } } return 0; } |
In der zaehler.c
wurden dabei Funktionen für die LED-Ansteuerung genutzt, die ich hier definiert habe:
led.c |
---|
/* Autoren: Stephan Höhrmann & Xenia Rendtel Letzte Änderung: 16.08.2009 Ansteuerung der Leuchtdiodenreihe auf dem STK500 Board */ #include <avr/io.h> void LedInit ( void ) { DDRB = 0xFF; PORTB = 0xFF; } void LedAn ( unsigned char led ) { PORTB &= ~( 1 << led ); } void LedAus ( unsigned char led ) { PORTB |= ( 1 << led ); } void LedAlleAn ( void ) { PORTB = 0x00; } void LedAlleAus ( void ) { PORTB = 0xFF; } |
led.h |
---|
/* Autoren: Stephan Höhrmann & Xenia Rendtel Letzte Änderung: 16.08.2009 Ansteuerung der Leuchtdiodenreihe auf dem STK500 Board */ #ifndef LED_H #define LED_H extern void LedInit ( void ); extern void LedAn ( unsigned char led ); extern void LedAus ( unsigned char led ); extern void LedAlleAn ( void ); extern void LedAlleAus ( void ); #endif |
Letzte Änderung: 07.07.2015: 21:35:55 von X. Rendtel
Dieses Werk bzw. Inhalt steht unter einer Creative Commons Namensnennung-Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.
Beruht auf einem Inhalt unter www.rendtel.de.