STC單片機波特率自適應方法
3 誤差分析
為保證可靠通信,要求通信雙方的波特率相對誤差小于2.5%.
在自適應波特率校準系統中,誤差主要來(lái)自?xún)蓚€(gè)方面,一是定時(shí)器T0 啟動(dòng)和停止滯后造成的誤差ΔT0;二是波特率發(fā)生器T1 本身固有的一個(gè)機器周期誤差ΔT1 = ±1.由于STC51單片機采用1T 時(shí)鐘定時(shí),ΔT0 誤差只有標準51系列芯片的1 12,系統誤差主要由ΔT1 決定。
以STC12C5620為例,當采用片內RC振蕩,時(shí)鐘頻率通常在5.2~6.9 MHz 之間。當時(shí)鐘頻率為5.2 MHz,SMOD=1時(shí),UART時(shí)鐘分別按12T,1T 計算,見(jiàn)表1,表2.
表1、表2中加粗部分表示可以選用的波特率值,由表1、表2可知,只要編程時(shí)選擇合適的時(shí)鐘,在5.2 MHz時(shí)鐘頻率下,波特率可以在300~115 200 b/s 之間實(shí)現自適應,由T1 取整帶來(lái)的誤差在0.5%以?xún)?。當系統時(shí)鐘為6.9 MHz時(shí),用同樣的方法計算,也可以證明波特率可以在300~115 200 b/s 之間實(shí)現自適應,由T1 取整帶來(lái)的誤差也在0.5%以?xún)?。由此可?jiàn),STC12C5620采用片內RC振蕩,可以在300~115 200 b/s之間完成波特率自適應,實(shí)現穩定可靠的通信。
4 軟件流程與程序
主機軟件流程圖如圖3所示,從機軟件流程圖如圖4所示。
以下為C51波特率自適應程序:
51單片機相關(guān)文章:51單片機教程
單片機相關(guān)文章:單片機教程
單片機相關(guān)文章:單片機視頻教程
單片機相關(guān)文章:單片機工作原理
數字通信相關(guān)文章:數字通信原理
通信相關(guān)文章:通信原理
負離子發(fā)生器相關(guān)文章:負離子發(fā)生器原理 塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理 晶振相關(guān)文章:晶振原理 離子色譜儀相關(guān)文章:離子色譜儀原理
評論