LinuxDev 板


LINE

各位大大好~ 小妹最近再碰ARM的硬體 我有兩個ARM板,想透過RS-232來互相傳輸 ...我的TX端的程式是這樣的 : int main() { int fd; char buffer[]="0123456789"; int Length=255; int nByte; fd=open("/dev/ttyS1",O_RDWR | O_NONBLOCK); while(fd!=0) { nByte = write(fd,buffer,Length); printf(" buffer is= %s nByte=%d",buffer,nByte); } close(fd); } RX端: int main() { int fd; int nByte; char buf[255]; fd=open("/dev/ttyS1",O_RDWR ); if (fd==NULL) printf("open error\n"); while (nByte !=NULL) { nByte = read(fd,buf,255); printf("nByte=%d\n",nByte); printf("buffer is: %s nByte=%d", buf , nByte); } close(fd); } 可是不知道為什麼接收端的ARM板,好像收不到TX端要傳的字串,都顯示不出來 (rx端 極少數幾筆有正確顯示字串) 不知道有沒有大大們用過ARM板的rs232傳輸過,我是用C語言寫code, 我已經確認rs232是可以互相傳輸,rx為甚麼使用迴圈會發生錯誤, 是接收端buffer問題嗎~? 希望有經驗的大大解答^^ 如果我有什麼地方說明不好,我會再補充~謝謝各位~"~ --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.169.41.42
1F:推 milochen:建議由最底層的開始往上推bug處,不要先假設bug在那邊。 10/29 07:01
2F:→ milochen:例如可以拿Scope直接觀察兩端波形,確認硬體的收跟送正確 10/29 07:03
3F:→ milochen:電壓高低夠不夠,也要看是否符合IC的User Manual的規範 10/29 07:05
4F:→ milochen:往上推導過程中,依實際狀況,細心判斷實驗, 10/29 07:07
5F:→ milochen:先確認出 bug 是在軟體或者硬體。 10/29 07:08
6F:→ milochen:比較懶人的方法,就是找個版子可以跟你手上ARM板成功傳輸 10/29 07:10
7F:→ elpam:建議...1先將速度降低..2.轉rs232接pc 3.寫一個echo測試用 10/29 13:04
8F:推 milochen:while (nByte !=NULL) 可以請原po解釋一下這行的用意嗎? 10/29 22:29
9F:推 milochen:可以使用大寫X作推文來回覆,或者寄我信箱 Tks 10/29 22:34
10F:→ a910937:hi,因為我想要測試RX端不斷接收資料的情形,但我發現當TX 10/30 11:16
11F:→ a910937:tx端不斷接收到來自TX的字串,會出現亂碼,很像字串遺失似的 10/30 11:18
12F:→ a910937:不知道有沒有大大們使用過rs232會發生這種情形~ 10/30 11:19
13F:→ a910937:因為我之後想利用ARM的rs232傳送MP3檔,so在測試會不會bug 10/30 11:20
14F:→ a910937:把XMODEM的CODE拿去做應用修改 應該可以改善.... 10/30 17:27
15F:推 TroyLee:BAUD Rate 有設定對嗎? 10/30 19:20
16F:推 milochen:你有沒有想過,read回傳值可能是0 的狀況? 10/30 22:40
17F:→ milochen:畢竟這是兩個不同的state mechine 在溝通。 10/30 22:41
18F:→ milochen:如果你不是用hand-shake的話,請試著把TX接到RX吧 10/30 22:43
19F:→ milochen:蠻鼓勵你自己試著想程式如何驗證,還有如何判別bug處。 10/30 22:44
20F:→ milochen:不知 while (nByte !=NULL){/*...*/} 回圈後加個 10/30 22:46
21F:→ milochen:LED_LIGHT() or printf something 能否有幫助呢? 10/30 22:46
22F:→ milochen:我想說先驗證的程式是如你預期的在這回圈裡面等待訊息。 10/30 22:48
23F:→ milochen:因為我沒有你的版子,等你有空再試試看。 ^^ Tks 10/30 22:49
24F:推 markchen:有沒有示波器來量測輸出的波形 10/31 08:45
25F:→ markchen:不然還有一個簡單的方法,你可以把單一ARM的TX與RX相連 10/31 08:46
26F:→ markchen:如悲連線成功的話,可以先證明程式部份沒有問題 10/31 08:47
27F:推 markchen:BAU Rate? 10/31 08:53
28F:→ a910937:謝謝大家我會再試看看^^ 我baudrate兩個ttyS1確定為38400 10/31 11:19
※ 編輯: a910937 來自: 140.126.131.70 (10/31 11:23)
29F:→ fxxkboss:問個蠢問題 你那條RS232線是null modem線嗎? 10/31 22:35
30F:→ a910937:yes~他是NULL MODEM的~ 11/01 14:29
31F:→ narcissusli:掛上示波器就知道問題在那邊了 11/15 16:35
32F:推 dophin332:要不要先用echo 和cat來測測看 09/18 16:45







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP