![]() |
|
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 |
![]() |
#3 |
Đệ tử 2 túi
Tham gia ngày: Aug 2009
Bài gửi: 28
: |
Đầu tiên e cám ơn bác namqn vì bác luôn tận tình giúp đỡ!
Đoạn code gửi nhận ký tự của em thế này, em không dùng ngắt: //function name: putch_uart //Description: send a character to serial port //return: none void putch_uart(unsigned char byte){ /* output one byte */ while(!TXIF) /* set when register is empty */ continue; TXREG = byte; } //////////////////////////////////////////////////////////////// //function name: getch_uart //Description: get a character from serial port //return: received character unsigned char getch_uart(void){ /* retrieve one byte */ while(!RCIF) /* set when register is not empty */ continue; return RCREG; } //////////////////////////////////////////////////////////////// //function name: getche_uart //Description: get a character and resend the character via // serial port //return: received character unsigned char getche_uart(void){ unsigned char c; putch_uart(c = getch_uart()); return c; } trong hàm main e viết thế này (trích) { //... putch_uart('D'); while(1) getche_uart(); //.. } thì ký tự nhận được không phải là D mà là cụm ba 00 00 FC hàm getche_uart() cũng gửi về ký tự không giống ký tự gửi lên. Em cũng gửi từ PC xuống ký tự D thì nhận được từ PIC lên hoặc là E0 hoặc là 00 (E chọn phần mềm quan sát trên PC là Terminal, và set up baud là 9600) |
![]() |
![]() |
|
|