![]() |
Giúp em với (ngắt rb trong đèn giao thông(
Em đang làm bài về đèn giao thông .Ông thầy ko chỉ gì cả phảii tự mò
viết code lẫn phần cứng. nhưng thử viết ngắt pỏt b từ B4-B7 mãi mà ko được. Nó chỉ chạy mỗi phần voidmain ,còn ngắt thì bó tay luôn. Ấn reset mà nó cứ nhảy lung tung. Mong anh em trong diễn đán giúp em một tay ẤN RB4 THÌ DỪNG ĐẾM THỜI GIAN .ĐỎ 1 XANH 2 SÁNG ẤN RB5 THÌ ĐỎ 2 XANH 1 SÁNG ẤN RB6 THÌ SÁNG HAI ĐÈN VÀNG RB7 THÌ CHẠY LẠI VOID MAIN em chưa có kinh nghiệm viết ngắt nên nếu ai giúp cái ngắt chạy một cái em hy vọng làm tiếp được |
phần code
http://i546.photobucket.com/albums/h...gcaovan/09.jpg
http://i546.photobucket.com/albums/h...gcaovan/09.jpg #include <16F877A.H> #fuses nowdt,noprotect,nolvp,put #use delay(clock=4000000) #use fast_io(b) #use fast_io(c) #use fast_io(d) #byte intcon=0x000B #BYTE PORTB =0X06 #BYTE PORTC =0X07 #BYTE PORTD =0X08 #bit RD4 = 0x08.4 #bit RD3 = 0x08.3 #bit RD2 = 0x08.2 #bit RD1 = 0x08.1 #bit RD0 = 0x08.0 #bit RB4 = 0X06.4 #bit RB5 = 0X06.5 #bit RB6 = 0X06.6 #bit RB7 = 0X06.7 #bit RBIF=intcon.0 //dinh nghia co ngat RB #bit RBIE=intcon.3 //dinh nghia bit cho phep ngat RB void ngat_RB(); void main(); #int_RB void ngat_RB() { if((RBIF)&&(RBIE)) { if(RB4==0) { } { if(RB5==0) { } } if(RB6==0) if(RB7==0) } RBIF=0; //Xoa co ngat RB } void main() {set_tris_a(0); output_a(0); set_tris_c(0); output_c(0); set_tris_d(0); output_d(0); enable_interrupts(global); enable_interrupts(int_RB); ext_int_edge(H_to_L); while(true) { output_c(0b10000001);//DEN XANH 2(20);DO 1(25) output_d(0b00000101); output_a(34); output_b(34); delay_ms(25); output_d(0b00001010); output_a(32); output_b(37); delay_ms(25); output_d(0b00000101); output_a(33); output_b(34); delay_ms(25); output_d(0b00001010); output_a(41); output_b(36); delay_ms(25); output_d(0b00000101); output_a(33); output_b(34); delay_ms(25); output_d(0b00001010); output_a(40); output_b(35); delay_ms(25); output_d(0b00000101); output_a(33); output_b(34); delay_ms(25); output_d(0b00001010); output_a(39); output_b(34); delay_ms(25); output_d(0b00000101); output_a(33); output_b(34); delay_ms(25); output_d(0b00001010); output_a(38); output_b(33); delay_ms(25); output_d(0b00000101); output_a(33); output_b(34); delay_ms(25); output_d(0b00001010); output_a(37); output_b(32); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(36); output_b(41); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(35); output_b(40); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(34); output_b(39); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(33); output_b(38); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(32); output_b(37); delay_ms(25); output_d(0b00000101); output_a(32); output_b(33); delay_ms(25); output_d(0b00001010); output_a(41); output_b(36); delay_ms(25); output_d(0b00000101); output_a(32); output_b(33); delay_ms(25); output_d(0b00001010); output_a(40); output_b(35); delay_ms(25); output_d(0b00000101); output_a(32); output_b(33); delay_ms(25); output_d(0b00001010); output_a(39); output_b(34); delay_ms(25); output_d(0b00000101); output_a(32); output_b(33); delay_ms(25); output_d(0b00001010); output_a(38); output_b(33); delay_ms(25); output_d(0b00000101); output_a(32); output_b(33); delay_ms(25); output_d(0b00001010); output_a(37); output_b(32); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(36); output_b(41); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(35); output_b(40); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(34); output_b(39); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(33);//XANH2=1; output_b(38); delay_ms(25); output_c(0b01000001);//V2=5;D1=5 output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(37); output_b(37); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(36); output_b(36); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(35); output_b(35); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(34); output_b(34); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(33); output_b(33); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(32);//V2=0 output_b(32);//D1=0 delay_ms(25); output_c(0b00100100);//D2=25;X1=20 output_d(0b00000101); output_a(34); output_b(34); delay_ms(25); output_d(0b00001010); output_a(37); output_b(32); delay_ms(25); output_d(0b00000101); output_a(34); output_b(33); delay_ms(25); output_d(0b00001010); output_a(36); output_b(41); delay_ms(25); output_d(0b00000101); output_a(34); output_b(33); delay_ms(25); output_d(0b00001010); output_a(35); output_b(40); delay_ms(25); output_d(0b00000101); output_a(34); output_b(33); delay_ms(25); output_d(0b00001010); output_a(34); output_b(39); delay_ms(25); output_d(0b00000101); output_a(34); output_b(33); delay_ms(25); output_d(0b00001010); output_a(33); output_b(38); delay_ms(25); output_d(0b00000101); output_a(34); output_b(33); delay_ms(25); output_d(0b00001010); output_a(32); output_b(37); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(41); output_b(36); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(40); output_b(35); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(39); output_b(34); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(38); output_b(33); delay_ms(25); output_d(0b00000101); output_a(33); output_b(33); delay_ms(25); output_d(0b00001010); output_a(37); output_b(32); delay_ms(25); output_d(0b00000101); output_a(33); output_b(32); delay_ms(25); output_d(0b00001010); output_a(36); output_b(41); delay_ms(25); output_d(0b00000101); output_a(33); output_b(32); delay_ms(25); output_d(0b00001010); output_a(35); output_b(40); delay_ms(25); output_d(0b00000101); output_a(33); output_b(32); delay_ms(25); output_d(0b00001010); output_a(34); output_b(39); delay_ms(25); output_d(0b00000101); output_a(33); output_b(32); delay_ms(25); output_d(0b00001010); output_a(33); output_b(38); delay_ms(25); output_d(0b00000101); output_a(33); output_b(32); delay_ms(25); output_d(0b00001010); output_a(32); output_b(37); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(41); output_b(36); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(40); output_b(35); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(39); output_b(34); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(38); output_b(33);//X1=1 delay_ms(25); output_c(0b00100010);//V1=5 output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(37); output_b(37); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(36); output_b(36); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(35); output_b(35); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(34); output_b(34); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(33); output_b(33); delay_ms(25); output_d(0b00000101); output_a(32); output_b(32); delay_ms(25); output_d(0b00001010); output_a(32);//D2 =00 output_b(32); delay_ms(25); } } |
Múi giờ GMT. Hiện tại là 03:08 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam