[size=14pt]سلام بچه ها
کد زیر را ببینید.با تغییر مقدار TCNT0 باید فرکانس عوض بشه.این امر در مگا 16 کاملا درست رخ میده ولی در مگا 8 اصلا امکان پذیر نیست.من هم در پروتئوس امتحان کردم و هم در عمل.به نظر شما اشکال کار کجاست؟
کد زیر را ببینید.با تغییر مقدار TCNT0 باید فرکانس عوض بشه.این امر در مگا 16 کاملا درست رخ میده ولی در مگا 8 اصلا امکان پذیر نیست.من هم در پروتئوس امتحان کردم و هم در عمل.به نظر شما اشکال کار کجاست؟
#include <mega8.h>
void DELAY(){
TCNT0=20;
TCCR0=0B00000001;
while(TIFR==0B00000000);
TCCR0=0B00000000;
TIFR=TIFR|0B11111111;
}
void main (void){
DDRB.0=1;
while(1){
PORTB.0=1;
DELAY();
PORTB.0=0;
DELAY();
}
}
از خیلیا پرسیدم جواب ندادند اگه میشه 2دقیقه وقت بذارید مشکل ما حل بشه .خیللی ممنون :angry:[img][/img]
void DELAY(){
TCNT0=20;
TCCR0=0B00000001;
while(TIFR==0B00000000);
TCCR0=0B00000000;
TIFR=TIFR|0B11111111;
}
void main (void){
DDRB.0=1;
while(1){
PORTB.0=1;
DELAY();
PORTB.0=0;
DELAY();
}
}
دیدگاه