TMS320F206與CPU卡通信協(xié)議的優(yōu)化
數據發(fā)送子程序為:

2.2 數據接收
接收數據一般采用軟件輪詢(xún)的方式實(shí)現。數據接收子程序為:

2.3 定時(shí)器設置
定時(shí)器中斷頻率由TDDR(定時(shí)器divide-down寄存器,定時(shí)計數寄存器TIM的低4位)和定時(shí)周期寄存器PRD共同確定。當兩者都為0時(shí),定時(shí)器中斷頻率為(CLKOUT1rate)/2;兩者不全為0時(shí),由如下公式確定:

舉例:為了實(shí)現9 600 bps的有效傳輸速率,實(shí)際傳輸速率(額外增加1位起始位、1位校驗位、1位停止位)應該為:
9 600 bps÷8×(8+1+1+1)=13 200 bps
故在晶振頻率為20 MHz的條件下,PRD=20×106/13200-1=1514。
此時(shí),將PRD設置為1514,每?jì)纱味〞r(shí)器中斷的時(shí)間間隔即為1位數據的保持時(shí)問(wèn)。一般來(lái)說(shuō),讀取的時(shí)機靠近位寬的中間位置,讀取的數據比較可靠和穩定,如圖2所示。

3 軟件改進(jìn)
圖2中,如果讀取的起始位的位置正好處在起始位的開(kāi)始,此時(shí)就會(huì )出現將起始位的末尾誤判為第1位;或者讀取的起始位的位置處在起始位的末尾,將可能丟失數據的第1位,都會(huì )導致讀取數據出錯,如圖3所示。

評論