![]() |
![]() |
#11 |
Đệ tử 4 túi
Tham gia ngày: Jan 2007
Bài gửi: 79
: |
Đoạn chương trình PIC gửi một ký tự
Code:
#include <16f877a.h> #include <def_877a.h> #FUSES NOWDT, HS, NOPUT,NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #use delay(clock=4000000) #use rs232(baud=9600, parity=N, xmit=pin_C6, rcv=pin_C7, bits=9) char c; void main() { putc(c); while(1) { } } Code:
Private Sub MSComm1_OnComm() Dim buffer() As Byte Dim j1 As String If MSComm1.CommEvent = comEvReceive Then buffer = MSComm1.Input If buffer(0) < 16 Then j1 = "0" & Hex(buffer(0)) Else j1 = Hex(buffer(0)) End If txtreceive.Text = j1 End If End Sub Chương trình trên để truyền 1 ký tự lên máy tính. Hoàn toàn tương tự bạn lại thêm một lệnh putc() như vậy nữa để truyền ký tự thứ 2 lên máy tính. Thế nhưng thực tế bạn lại không thể truyền được ký tự thứ 2 này vì tốc độ xử lý của PIC6F877a đáp ứng ko kịp (có lẽ vậy), nên giữa 2 lệnh putc() này bạn thêm một lệnh delay một khoảng thời gian nào đó thì mới truyền đúng được. Đó là một ví dụ nhỏ để chứng tỏ với bạn rằng chỉ có chính mình xoắn tay vào làm nó thì mới thành công được. |
![]() |
![]() |
|
|