![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Sep 2014
Bài gửi: 5
: |
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; } } |
![]() |
![]() |
![]() |
#2 | |
Đệ tử 3 túi
Tham gia ngày: Jun 2012
Bài gửi: 54
: |
Trích:
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! |
|
![]() |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|