最近在做外部儀器 將資料透過UART傳輸到MSP430F538 板子一沒收到資料 連中斷都沒進去
上網查找發現可能有電壓準位問題 所以要兩者間可能轉換
1.我為了想看使否為準位問題 我想測試兩塊相同型號板子間是否可透過UART互傳
相同型號的板子 應該沒有所謂 準位問題
但是結果還是一樣 板A(發送端) 板B(接收端) 資料:板A ---UART--->板B 可是板B一樣完全無反應
以下附上小弟的程式碼 由TI官方所提供的UART_ECHO所改的
黃色high light是baud rate設定
來源SMCLK = 1MHz ; baud rate: 38400
1048576/38400 = 27.306
UCBRx = INT(27.306) = 27
UCBRSx = round((27.306 - 27) *8) = round (2.448) = 2
根據爬文的某篇 UCBRSx有嘗試設定:3 也沒有反應
板A 板B分別也用電腦測試過 電腦傳進板A/B與傳出來都沒問題
煩請大大幫忙解惑了
下面是我的環境設定:
兩塊板子型號為MSP430F5438
2.另外想請問另一個問題
在user guide寫到UART參數設定
normal: UCBRx = INT(N)
UCBRSx = round((N – INT(N))*8)
UCBRFx = 0
Oversampling Baud-Rate Mode:
UCBRx = INT(N/16)
UCBRFx = round(((N/16)-INT(n/16))*16)
UCBRSx只寫到要精度更高 可調整填0~7
那怎麼知道要填多少?
以上兩個問題 麻煩大大幫忙解惑了
|