Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
版主
|
抱歉,中國 Third-Party 做的版子,我這裡沒有資料所以不知道 S1 是做什麼用的。
台灣 RTC 所上的基本為處理課程都是以 APP001 為基礎,可以的話換一片,你應該有折價卷可以用 NT$1500 買到。
發表於: 2008/1/18 15:01
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
新會員
|
是公司從大陸 http://www.pic16.com/ 訂購回來的實驗板+ICD2,在下也不懂為何要從大陸訂購回來,而不直接在台灣買就好
發表於: 2008/1/18 14:16
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
版主
|
S1 ??? 你是用哪一家的版子? APP001 沒有 S1 的零件編號。
發表於: 2008/1/18 13:54
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
中級會員
|
你好!
使用 PIC16F877A 的話! 時脈速度可以察看振盪器的數值來得知. 查看連接於IC的 OSC1 (PIN 13)、OSC2 (PIN 14)之振盪器. 如果數值是 4.000 或 4000000 便可以確定為 4 MHz的時脈了. 想要改變時脈速度, 於PIC16F877A只有更換振盪器的方法了, 購買所希望使用之速度的振盪器更換上去, 再調整燒錄設定位元中的振盪模式就可以了. (大致上 4~12 MHz 選擇為 XT模式, 12~20 MHz選擇為 HS模式) 致於你貼上來的程式, 我猜想它像是沒有接收的原因是... RCIF 未被清除, 導致不斷的在提取 RCREG, 而這時候RCREG並無接收到的數值, 所以數值為 0. 以下為提供給你的修改...
#include <pic.h>
發表於: 2008/1/18 9:28
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
新會員
|
在下已經能夠讓 PIC 傳送固定字元到 PC 上了,之前是因為在下設錯 SPBRG = 130,改成 SPBRG = 25 就沒問題了,因為在下一直以為 PIC 上的時脈為 20M,後來經過一陣亂試才知道是 4M,想請問要如何得知 PIC 的時脈呢? 或是有地方可以設定的
另外一個問題就是雖然在下可以讓 PIC 傳送固定字元到 PC 上了,但在下想試著讓 PIC 可以接收並回傳 PC 傳送過去的字元,結果一樣只能回傳 '.' (Hex=00),這應該不是 Baud-Rate 的問題了,從 Watch 上來看,感覺 RCREG 都沒接收到字元,因為值都沒變,請問是不是有哪邊搞錯了呢? 程式碼:
#include <pic.h>
發表於: 2008/1/17 17:13
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
版主
|
RC6 ==> TxD , RC7 ==> RxD
RC6 & RC7 短路的話是屬於 Look-Back Mode 自發自收模式,這跟你使用 RS-232 接出去是不一樣的。
發表於: 2008/1/17 14:32
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
新會員
|
在下有在網路上找到一篇文章:
http://blog.sina.com.cn/s/blog_54da57aa01000883.html 當中有提到「原來是RC6,RC7需要跳線」,請問這是要怎麼做呢? 將 RC6、RC7 短路嗎? 在下用的實驗板是從中國買來的,MCD DEMO REV:A3,公司當初就丟這板子給我,我也不懂為何要從中國買...
發表於: 2008/1/17 14:22
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
新會員
|
UART 的通訊大致了解,但還是不懂在下的程式為何無法正常運作,在網路上找了幾個程式碼,不管是 C or ASM,結果都是一樣,只會回傳一個 Hex 為 00 的值
有沒有好心的板友可以幫忙測試一下在下的程式在其他電腦上是否也是有同樣的情況,謝謝
發表於: 2008/1/17 10:27
|
|||
|
Re: 透過 RS232 向 PIC16F877A 收發資料有問題
|
||||
---|---|---|---|---|
版主
|
如果今天有上 W400 的課,認真一點上到練習四你就會了解 UART 的通訊了。
發表於: 2008/1/16 9:34
|
|||
|