![]() |
KEIL - lập trình cho PIC bằng Ngôn Ngữ C???
Có bác nào cho em xin tài liệu về ngôn ngữ này không?
Nếu không thì có thể cho em code (có thể CCS C) để nháy LED (bất kỳ) bằng con PIC 16F84A Thank |
@vandat07:sang đây nhé
http://www.picvietnam.com/forum//forumdisplay.php?f=12 |
Trích:
#include <def_877a.h> #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #use delay(clock=20000000) #USE FAST_IO(E) #USE FAST_IO(C) #USE FAST_IO(D) int8 mode,i; byte temp; #INT_EXT EXT_ISR() { mode++; if (mode==9) mode = 0; } // End of INT void program1(); void program2(); void program3(); void program4(); void program5(); void program6(); void program7(); void program8(); void main() { trisd = 0x00; trisb = 0xFF; portd=0xff; enable_interrupts(int_EXT); ext_int_edge(L_TO_H); enable_interrupts(GLOBAL); mode = 0; while (1) { switch(mode) { case 1: program1(); break; case 2: program2(); break; case 3: program3(); break; case 4: program4(); break; case 5: program5(); break; case 6: program6(); break; case 7: program7(); break; case 8: program8(); break; } } } void program1() { PortD = 0x00; delay_ms(250); Portd = 0xFF; delay_ms(250); } void program2() { temp = 0xFF; for (i=0;i<=8;i++) { portd = temp; delay_ms(250); temp >>= 1; } } void program3() { temp = 0xFF; for (i=0;i<=8;i++) { portd = temp; delay_ms(250); temp <<= 1; } } void program4() { portd = 0xAA; delay_ms(500); portd = 0x55; delay_ms(500); } void program5() { Portd = 0x7E; delay_ms(150); Portd = 0xBD; delay_ms(250); Portd = 0xDB; delay_ms(150); Portd = 0xE7; delay_ms(150); Portd = 0xDB; delay_ms(150); Portd = 0xBD; delay_ms(150); Portd = 0x7E; delay_ms(150); } void program6() { temp = 0xFF; for (i=0;i<=8;i++) { portd = temp; delay_ms(250); temp = temp >> 1; } } void program7() { Portd = 0xFE; delay_ms(150); Portd = 0xFD; delay_ms(150); Portd = 0xFB; delay_ms(150); Portd = 0xF7; delay_ms(150); Portd = 0xEF; delay_ms(150); PortD = 0xDF; delay_ms(150); Portd = 0xBF; delay_ms(150); Portd = 0x7F; delay_ms(150); } void program8() { Portd = 0x7F; delay_ms(150); Portd = 0xBF; delay_ms(150); PortD = 0xDF; delay_ms(150); Portd = 0xEF; delay_ms(150); Portd = 0xF7; delay_ms(150); Portd = 0xFB; delay_ms(150); Portd = 0xFD; delay_ms(150); Portd = 0xFE; delay_ms(150); } |
thanks các bạn
|
ủa làm sao mình tạo đươcc mục thanks sau bài gửi của mình vậy các bạn?
|
chào các bác!
em đang tập tểnh học lập trình cho pic 16f877a. nhưng mà không biết bắt đầu từ đâu. các bác chỉ hộ em cách học pic sao cho hiêu quả với |
đọan code của bạn trunghaudt2 viet gi vậy.Đọc không hiểu
|
Múi giờ GMT. Hiện tại là 04:47 PM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam