@SprinterSB wo muss man das obige eingeben?
Habe nämlich ein ähnliches Problem, bei mir ist der Speicher des ATmega8 mit folgendem Code schon zu 47% voll:
Code:#include <avr/io.h> #ifndef F_CPU /* Definiere F_CPU, wenn F_CPU nicht bereits vorher definiert (z.B. durch Übergabe als Parameter zum Compiler innerhalb des Makefiles). Zusätzlich Ausgabe einer Warnung, die auf die "nachträgliche" Definition hinweist */ #warning "F_CPU war noch nicht definiert, wird nun mit 1000000 definiert" #define F_CPU 1000000 /* Quarz mit 1 Mhz */ #endif #include <util/delay.h> /* in älteren avr-libc Versionen <avr/delay.h> */ #define TEMPO 1800 #define TEMPO2 2000 int main (void) { DDRC = 0xFF; int ba=0; int const _A[] = {0b00001, 0b10110, 0b10110, 0b00001}; int const _H[] = {0b00000, 0b11011, 0b11011, 0b00000}; int const _L[] = {0b00000, 0b01111, 0b01111, 0b01111}; int const _O[] = {0b10001, 0b01110, 0b01110, 0b10001}; void B (int bb[]) { PORTC = bb[0]; _delay_us(TEMPO); PORTC = bb[1]; _delay_us(TEMPO); PORTC = bb[2]; _delay_us(TEMPO); PORTC = bb[3]; _delay_us(TEMPO); PORTC = 0b11111; _delay_us(TEMPO2); ba += 8; } while(1) { B(_H); B(_A); B(_L); B(_L); B(_O); _delay_ms(157 - ba); ba = 0; } return 0; }







Zitieren

Lesezeichen