anabolik
31.08.2005, 23:13
hallo.
ich bin ein neuling auf diesem gebiet.
habe mein erstes programm (in C) für den mikrocontroller gemacht(gehe der anleitung von mikrocontroller.net nach, winavr c). das programm soll zählen wie viele male ich den taster betätigt habe und dies gleich an drei leds ausgeben bzw. anzeigen (binär). da ich drei leds auf dem board haBE soll es bis 7 gehen, wobei die tastenentprellung beachtet werden soll. ich könnte die version von mikrocontroller.net (http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Vorwort) benutzen aber ich wollte meine idee verwirklichen. es funktioniert aber nicht. winavr zeigt keine fehler.
ich habe das board von myAVR mit ATmega8.
CODE:
#include <inttypes.h>
#include <avr/io.h>
#include <avr/delay.h> // definiert _delay_ms()
#include <stdint.h>
int main(void)
{
DDRD=0x00;
DDRB=0x07;
DDRD=0x01;
int i=0;
if(!(PIND & (1<<PIND2))){
_delay_ms(100);
while(1){
i=i+1;
}
if(i==0){
PORTB=0x00;
}
if(i==1){
PORTB=0x01;
}
if(i==2){
PORTB=0x02;
}
if(i==3){
PORTB=0x03;
}
if(i==4){
PORTB=0x04;
}
if(i==5){
PORTB=0x05;
}
if(i==6){
PORTB=0x06;
}
if(i==7){
PORTB=0x07;
}
if(i==8){
i=0;
}
}
}
ich bin ein neuling auf diesem gebiet.
habe mein erstes programm (in C) für den mikrocontroller gemacht(gehe der anleitung von mikrocontroller.net nach, winavr c). das programm soll zählen wie viele male ich den taster betätigt habe und dies gleich an drei leds ausgeben bzw. anzeigen (binär). da ich drei leds auf dem board haBE soll es bis 7 gehen, wobei die tastenentprellung beachtet werden soll. ich könnte die version von mikrocontroller.net (http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Vorwort) benutzen aber ich wollte meine idee verwirklichen. es funktioniert aber nicht. winavr zeigt keine fehler.
ich habe das board von myAVR mit ATmega8.
CODE:
#include <inttypes.h>
#include <avr/io.h>
#include <avr/delay.h> // definiert _delay_ms()
#include <stdint.h>
int main(void)
{
DDRD=0x00;
DDRB=0x07;
DDRD=0x01;
int i=0;
if(!(PIND & (1<<PIND2))){
_delay_ms(100);
while(1){
i=i+1;
}
if(i==0){
PORTB=0x00;
}
if(i==1){
PORTB=0x01;
}
if(i==2){
PORTB=0x02;
}
if(i==3){
PORTB=0x03;
}
if(i==4){
PORTB=0x04;
}
if(i==5){
PORTB=0x05;
}
if(i==6){
PORTB=0x06;
}
if(i==7){
PORTB=0x07;
}
if(i==8){
i=0;
}
}
}