Bác nào chỉ giùm tôi với!
#include <16F877A.h>
#include <DEFS_16F877A.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=20000000)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)
#define RunningLed RD2
int8 ch;
void main(void) {
//Output_high(PIN_D2);
RunningLed = 1;
while(true){
ch = getc();
if (ch == 0) {
putc(ch);
}
else {
ch = ch + 1;
putc(ch);
}
}
}
Trên đây là chương trình tôi viết thử để giao tiếp với PC, nhưng không được.
Có hai điều tôi muốn hỏi các bác!
- Tại sao khi tôi dùng lệnh RunningLed = 1; ở trên thì mạch lại không chạy ( tức là chân RD2 không tích cực mức cao). Còn khi tôi dùng lệnh output_high(PIN_D2) thì lại được.
- Tôi dùng chương trình mô phỏng giao tiếp nối tiếp của CCS và chạy thử chương trình trên thì không được
Bác nào bớt chút thời gian trở lời giúp được không!
Bác nào có thể post cho tôi một chương trình giao tiếp với PC được không, cả trên PC lẫn chương trình của PIC
|