|
Tài trợ cho PIC Vietnam |
Đóng góp ý kiến Nơi tiếp nhận những ý kiến đóng góp của thành viên |
|
Ðiều Chỉnh | Xếp Bài |
10-04-2015, 03:28 PM | #1 |
Nhập môn đệ tử
Tham gia ngày: Mar 2015
Bài gửi: 1
: |
đèn giao thông
các anh chị giải thích hộ em ý tưởng và từng nội dung của code sau với ạ
#include <16f877a.h> #FUSES NOWDT, HS, NOPUT,NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD #use delay(clock=20000000) int led7doan[10]={0b11000000,0b11111001,0b10100100,0b10110000,0b10 011001,0b10010010, 0b10000010,0b11111000,0b10000000,0b10010000}; signed int i; int1 vang_enable=0; #byte PortC=0x07 #bit DA=PortC.0 #bit VA=PortC.1 #bit XA=PortC.2 #bit DB=PortC.3 #bit VB=PortC.4 #bit XB=PortC.5 #bit OE5=PortC.6 #bit LE5=PortC.7 #byte PortD=0x08 #bit OE1=PortD.0 #bit LE1=PortD.1 #bit OE2=PortD.2 #bit LE2=PortD.3 #bit OE3=PortD.4 #bit LE3=PortD.5 #bit OE4=PortD.6 #bit LE4=PortD.7 void main() { set_tris_C(0b00000000); set_tris_D(0b00000000); output_D(0b1111111); output_high(pin_C6); output_high(pin_C7); output_high(pin_A0); output_high(pin_A1); while(true) { DA=1; XB=1; for(i=7;i>=0;i--) { OE1=0; LE1=1; output_B(led7doan[i+2]); LE1=0; output_low(pin_A0); output_high(pin_A1); output_B(led7doan[i]); output_low(pin_A1); delay_ms(1000); } for(i=1;i>=0;i--) { VB=1; XB=0; OE1=0; LE1=1; output_B(led7doan[i]); LE1=0; OE5=0; LE5=1; output_B(led7doan[i]); LE5=0; output_high(pin_A0); output_high(pin_A1); delay_ms(1000); } DB=1; XA=1; VB=0; DA=0; for(i=7;i>=0;i--) { OE1=1; LE1=1; OE5=1; LE5=1; OE4=0; LE4=1; output_B(led7doan[i+2]); LE4=0; OE3=0; LE3=1; output_B(led7doan[i]); LE3=0; delay_ms(1000); } for(i=1;i>=0;i--) { VA=1; XA=0; OE4=0; LE4=1; output_B(led7doan[i]); LE4=0; OE2=0; LE2=1; output_B(led7doan[i]); LE2=0; OE3=1; LE3=1; delay_ms(1000); } DB=0; VA=0; } } |
|
|