tuecamphu1
Tổng số bài gửi : 1 Reputation : 0 Join date : 12/07/2014
| Tiêu đề: ATmega8 không delay như mô phỏng??? Sat Jul 12, 2014 1:49 pm | |
| Em mới học AVR, đang thực hành với em ATmega8, nhưng hiện đang gặp rắc rối khi dùng delay. Em viết 1 code đơn giản để tạo xung trễ với 1 xung cho trước (100Hz) bằng AVRstudio, build, mô phỏng với proteus thì OK. Nhưng nạp vào ATmega8 thật (dùng STK500) thì không chạy như mô phỏng. Mong các pro xem xét cho ý kiến xem em sai chỗ nào ạ??? Đây là code của em: - Trích dẫn :
- #define F_CPU 1000000UL
#include #include #include int main(void) { DDRC|=(1<<1)|(1<<3); //hai chan nay de tao xung MCUCR|=(1< GICR|=(1< sei(); //65620 cho phep ngat VDK while(1){} return 0;} ISR(INT0_vect) { PORTC=0; _delay_us(4000); //tao tre 4000us PORTC|=(1<<1)|(1<<3); _delay_us(400); PORTC=0; _delay_us(400); PORTC|=(1<<1)|(1<<3); _delay_us(400); PORTC=0; //tao chum 2 xung 400us } Mô phỏng proteus thì thế này: " /> Em dùng AVRstudio5 fuse bit thế này: Nạp, kiểm tra = oscilloscope thì thế này: " /> Cái chùm 2 xung tạo ra chẳng delay tẹo nào so với xung vào, em làm trên 3,4 em mega8, set đủ thứ fuse, chọn dủ thứ xung clock vẫn vậy, mong sớm nhận được hồi âm của các pro!!! | |
|