![]() |
|
Tài trợ cho PIC Vietnam |
Giao tiếp cổng COM và LPT RS232, RS485 và LPT là những giao tiếp cơ bản và kinh điển khi mới học về vi điều khiển... |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#1 |
Đệ tử 6 túi
|
Vấn đề giao tiếp RS232 <-->PC một số ký tự nhận đúng, một số ký tự nhận sai.
Chào mọi người.
Vấn đề của mình như sau: - Mình kết nối Max232 như sau: Xem hình: RS232 Communication.bmp Lưu ý ở đây mình sử dụng Max232 loại SMD và các tụ điện loại ceramic Capcitor 100nF(104). Tuy nhiên, trong datasheet của Max232 nói rằng việc sử dụng tự không cực tính Ceramic là đuợc chấp nhận. Xem hình: Note(Max232 datasheet).bmp - Đoạn code mình viết để Test việc giao tiếp RS232 đơn giãn như sau: Code:
**********************************************************/ #include <18F24K22.h> #use delay(clock=20000000)//Crystall 20Mhz #fuses HS,NOWDT,NOPROTECT,NOLVP,PUT #USE RS232(BAUD=9600, XMIT=PIN_C6, RCV=PIN_C7) //-------------INCLUDED FILES: #include <historic.c> #include <main.h> Void main() { //-------------Enable Inpout/Output: //-------------Enable Interrup vecter: ENABLE_INTERRUPTS(INT_RDA); enable_interrupts(global); while(1) { //Do nothing! } } //------------------------------------------------------------------------------ #INT_RDA void Receive_isr() { char c; c=getc(); delay_us(10); putc(c); } Vấn đề của mình là:Mình tử Test gửi 0, 1, 2, ...9 thì chỉ có một số ký tự đúng. - Gửi 0 -- nhận 3E(sai) lẽ ra phải nhận 30. - Gửi 1 -- nhận 3F(sai) lẽ ra phải nhận 31. - Gửi 2 -- nhận 32(đúng) - Gửi 3 -- nhận 33(đúng) - Gửi 4 -- nhận 36(sai) lẽ ra phải nhận 34. - Gửi 5 -- nhận 36(sai) lẽ ra phải nhận 35. - Gửi 6 -- nhận 36(đúng) - Gửi 7 -- nhận 37(đúng) - Gửi 8 -- nhận 3E(sai) lẽ ra phải nhận 38. - Gửi 9 -- nhận 3F(sai) lẽ ra phải nhận 39. (Xem hình: Serial input-output monitor.bmp). Mình thử đi thử lại nhiều lần, kết quả đều như vậy. Mình không rõ nguyên nhân là do đâu? bạn nào có kinh nghiệm chia sẽ giúp minh nhé? PS: Mình đã thay IC Max232 khác kết quả vẫn không thay đổi(loại trừ hư IC Max232). Cám ơn các bạn đã đọc bài. Thân,
__________________
-------------------------------------------------------------------------------------- Phùng Minh Tuân Email: tuan.phmt@gmail.com "Cuộc đời sóng gió nuôi ta lớn Bao lần thất bại dạy ta khôn". |
![]() |
![]() |
|
|