Difference between revisions of "U23 2008/Gruppe3"
< U23 2008
(→Code:) |
(→Code:) |
||
Line 15: | Line 15: | ||
''Ich bin irgendwie zu blöd dafür, den Code richtig im Wiki einzufügen.'' - The-Kenny | ''Ich bin irgendwie zu blöd dafür, den Code richtig im Wiki einzufügen.'' - The-Kenny | ||
+ | |||
+ | ''Hab meinen Code jetzt auch mal reingestellt.'' - Gordin | ||
Code von mkr: | Code von mkr: | ||
#include <avr/io.h> | #include <avr/io.h> | ||
#include <util/delay.h> | #include <util/delay.h> | ||
− | + | ||
void set_leds(uint8_t leds) | void set_leds(uint8_t leds) | ||
{ | { | ||
Line 61: | Line 63: | ||
} | } | ||
} | } | ||
+ | |||
+ | Code von Gordin: | ||
+ | hauptcode: | ||
+ | |||
+ | #include "rumpus_ledlib.c" //selbstgeschriebene kleine lib zum steuern der leds | ||
+ | uint8_t kr[6] = { 0b11101010, | ||
+ | 0b10110000, | ||
+ | 0b00101100, | ||
+ | 0b00001011, | ||
+ | 0b00001110, | ||
+ | 0b00111000 }; | ||
+ | |||
+ | /*uint8_t kr[8] = { 0b10101010, | ||
+ | 0b00000011, | ||
+ | 0b00001100, | ||
+ | 0b00110000, | ||
+ | 0b11000000, | ||
+ | 0b10000000, | ||
+ | 0b00100000, | ||
+ | 0b00001000 };*/ | ||
+ | |||
+ | //Variablen für display() | ||
+ | uint8_t led1 = 0b11000000; | ||
+ | uint8_t led2 = 0b00110000; | ||
+ | uint8_t led3 = 0b00001100; | ||
+ | uint8_t led4 = 0b00000011; | ||
+ | |||
+ | static void display(uint8_t led_config) { | ||
+ | //übergibt nur die wichtigen bits an die led_X funktionen | ||
+ | led_1(led_config & led1); | ||
+ | led_2(led_config & led2); | ||
+ | led_3(led_config & led3); | ||
+ | led_4(led_config & led4); | ||
+ | _delay_ms(100); | ||
+ | } | ||
+ | |||
+ | int main(void) { | ||
+ | uint8_t i; | ||
+ | while(1) { | ||
+ | for (i = 0; i < sizeof(kr) ; i++) { // Größe des Arrays muss im Array stehen array[X]... | ||
+ | display(kr[i]); | ||
+ | } | ||
+ | |||
+ | } | ||
+ | } | ||
+ | |||
Revision as of 19:27, 25 August 2008
Gruppe3
Wir saßen an der linken Ecke des projizierten Bildes ;)
Mitglieder:
-mkr
-PyroGX
-whitenexx
-The Kenny (Macbook, Brille)
-Gordin
Code:
Es gab wohl mehrere Untergruppen, wir sollten alle unseren Code hier reinstellen.
Ich bin irgendwie zu blöd dafür, den Code richtig im Wiki einzufügen. - The-Kenny
Hab meinen Code jetzt auch mal reingestellt. - Gordin
Code von mkr:
#include <avr/io.h> #include <util/delay.h> void set_leds(uint8_t leds) { //alle leds ausschalten PORTC &= ~_BV(PC4); PORTD &= ~_BV(PD3); PORTD &= ~_BV(PD6); PORTD &= ~_BV(PD7); //gewählte leds einschalten PORTC |= ((leds & 1) << PC4 ); //bits aus leds an die richtige stelle schieben PORTD |= ((leds & 2) << (PD3 - 1) ); //minus eins, weils in led an der stelle 1 steht (von rechts) PORTD |= ((leds & 4) << (PD6 - 2) ); //... PORTD |= ((leds & 8) << (PD7 - 3) ); } int main(void) { uint8_t i = 0; //index der ledconf, die ausgegeben werden soll uint8_t delay_time = 200; //pause zwischen den ausgaben uint8_t ledconf[4] = { //array mit led zuständen 0b00001000, 0b00000100, 0b00000010, 0b00000001, }; // LED Output-Pins konfigurieren DDRC |= _BV(PC4); DDRD |= ( _BV(PD3) | _BV(PD6) | _BV(PD7) ); while(1) { if (i >= sizeof(ledconf)) //index darf maximal so graß sein, wie die anzahl der ledconf elemente - 1 i = 0; set_leds(ledconf[i]); i++; _delay_ms(delay_time); } }
Code von Gordin: hauptcode:
#include "rumpus_ledlib.c" //selbstgeschriebene kleine lib zum steuern der leds uint8_t kr[6] = { 0b11101010, 0b10110000, 0b00101100, 0b00001011, 0b00001110, 0b00111000 }; /*uint8_t kr[8] = { 0b10101010, 0b00000011, 0b00001100, 0b00110000, 0b11000000, 0b10000000, 0b00100000, 0b00001000 };*/ //Variablen für display() uint8_t led1 = 0b11000000; uint8_t led2 = 0b00110000; uint8_t led3 = 0b00001100; uint8_t led4 = 0b00000011; static void display(uint8_t led_config) { //übergibt nur die wichtigen bits an die led_X funktionen led_1(led_config & led1); led_2(led_config & led2); led_3(led_config & led3); led_4(led_config & led4); _delay_ms(100); } int main(void) { uint8_t i; while(1) { for (i = 0; i < sizeof(kr) ; i++) { // Größe des Arrays muss im Array stehen array[X]... display(kr[i]); } } }
try this: einfach ein leerzeichen vor die Codezeile packen und es wird dementsprechend interpretiert. -obstfliege