增強(qiáng)抗干擾是原因之一
標(biāo)準(zhǔn)UART可以選16倍采樣,也可以選64倍采樣,個(gè)人覺得應(yīng)該是方便分頻設(shè)計(jì)。
標(biāo)準(zhǔn)UART的RXD前端有一個(gè)"1到0跳變檢測(cè)器",當(dāng)其連續(xù)接受到8個(gè)RXD上的地電平時(shí),該檢測(cè)器就認(rèn)為RXD線出現(xiàn)了起始位,進(jìn)入接受數(shù)據(jù)狀態(tài).在接受狀態(tài),接受控制器對(duì)數(shù)據(jù)位7,8,9三個(gè)脈沖采樣,并遵從三中取二的原則確定最終值.采用這一方法的根本目的還是為了增強(qiáng)抗干擾,提高數(shù)據(jù)傳送的可靠性,采樣信號(hào)總是在每個(gè)接受位的中間位置,可以避開數(shù)據(jù)位兩端的邊沿失真,也可以防止接受時(shí)鐘頻率和發(fā)送時(shí)鐘頻率不完全同步引起的誤差。
首先回顧一下異步串口通信的數(shù)據(jù)格式:
由于在空閑狀態(tài)時(shí),傳送線為邏輯“1”狀態(tài),而數(shù)據(jù)的傳送總是以一個(gè)起始位“0”開始,所以當(dāng)接收器檢測(cè)到一個(gè)從“1”向“0”的跳變時(shí),便視為可能的起始位(要排除干擾引起的跳變);起始位被確認(rèn)后,就知道發(fā)送器已開始發(fā)送,接收器就可以按這個(gè)數(shù)據(jù)通信格式接收后續(xù)的數(shù)據(jù)了;當(dāng)檢測(cè)到停止位“1”后就表明一幀字符數(shù)據(jù)已發(fā)送完畢。
關(guān)于接收器的設(shè)計(jì)最主要的一點(diǎn)是如何提高采樣的準(zhǔn)確率,最好是保證采樣點(diǎn)處于被采樣數(shù)據(jù)的時(shí)間中間點(diǎn)。所以,在接收采樣時(shí)要用比數(shù)據(jù)波特率高n倍(n≥1)速率的時(shí)鐘對(duì)數(shù)據(jù)進(jìn)行采樣。在本程序中用16倍波特率時(shí)鐘進(jìn)行采樣。結(jié)合圖示,我們講解一下如何讓采樣時(shí)刻處于被采樣數(shù)據(jù)的時(shí)間中間點(diǎn):
1.在t1時(shí)刻若檢測(cè)到低電平,就開始對(duì)這個(gè)低電平進(jìn)行連續(xù)的檢測(cè)
2. 當(dāng)檢測(cè)了8個(gè)時(shí)鐘周期后,到達(dá)t2,此刻,若前面的8個(gè)周期都是低電平,則認(rèn)為檢測(cè)到了起始脈沖。否則就認(rèn)為是干擾,重新檢測(cè)。
3. 在檢測(cè)到起始位后,再計(jì)數(shù)16個(gè)采樣時(shí)鐘周期就到達(dá)了第一個(gè)數(shù)據(jù)位的時(shí)間中間點(diǎn)t3,在此刻采樣數(shù)據(jù)并進(jìn)行保存。
4. 然后再經(jīng)過16個(gè)周期,就是第二個(gè)數(shù)據(jù)位的時(shí)間中間點(diǎn),在此時(shí)刻進(jìn)行采樣;然后,再經(jīng)過16個(gè)周期,就是第三個(gè)數(shù)據(jù)位的時(shí)間中間點(diǎn), 在此時(shí)刻進(jìn)行采樣…..一直這樣采樣,直到把所有的數(shù)據(jù)位采樣完畢。
審核編輯:劉清
-
控制器
+關(guān)注
關(guān)注
112文章
16332瀏覽量
177806 -
接收器
+關(guān)注
關(guān)注
14文章
2468瀏覽量
71871 -
uart
+關(guān)注
關(guān)注
22文章
1235瀏覽量
101354 -
串口通信
+關(guān)注
關(guān)注
34文章
1624瀏覽量
55507 -
時(shí)鐘采樣
+關(guān)注
關(guān)注
0文章
4瀏覽量
3361
原文標(biāo)題:為什么UART串口通信要16倍過采樣數(shù)據(jù)
文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論