View Single Post
Old 10-02-2015, 08:49 AM   #80
buivantuyen89th
Đệ tử 3 túi
 
buivantuyen89th's Avatar
 
Tham gia ngày: Jun 2012
Bài gửi: 54
:
Trích:
Nguyên văn bởi saunai View Post
Nhờ mọi người xem dùm e cái code viết cho 8 led đơn sáng nhấp nháy dùng ngắt, đưa vào mô phỏng nó cứ sáng hoài k chịu nháy.

#include <16f877a.h>
#fuses NOWDT,HS,NOPROTECT
#use delay(clock=4M)
#byte portb=0x06

int16 dem;
int8 a;
//Chuong trinh ngat timer0
#int_timer0
void interrupt_timer0()
{

++dem;
if (dem==1000) //1000*500us=500000us=0.5s
{
dem=0;
if (a=0x00)
a=0xff;
else a=0xff;
}
set_timer0(6);
}
void main()
{
set_tris_b(0);
enable_interrupts(global);
enable_interrupts(int_timer0);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2);
set_timer0(6); //Dinh thoi (256-6)*2*1us=500us
a=0xff;
while(true)
{
portb=a;
}
}
bạn bi sai trong chương trình ngắt rồi.
thứ nhất: điều kiện trong lệnh if là "==" chứ k phải là "=".
thứ 2: bạn đang đặt chế độ là. nếu a==0 thì cho a=1. còn khác sẽ là a=1. vì vậy a lúc nào cũng=1.
chúc ạn thành công!
buivantuyen89th vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn