Intel16位單片機(jī)的特殊串行通訊方式
有關(guān)接收和發(fā)送的數(shù)據(jù)存放在由DATA(L)和DATA(H)構(gòu)成的數(shù)據(jù)單元中。其數(shù)據(jù)單元的寬度可達(dá)16位。波特率的設(shè)定參數(shù)放在BAUD(L)和BAUD (H)中。196MC/MD串行通訊的控制參數(shù)主要放在PTSCON和PTSCON1寄存器中。對(duì)這兩個(gè)寄存器進(jìn)行操作可以設(shè)定各種串行通訊方式。下面主要介紹這兩個(gè)寄存器。
PTSCON的操作格式如下:
其中:M2M1M0=011為發(fā)送方式;M2M1M0=001為接收方式;SA=1為同步SIO;SA=0為異步SIO。
MAJ=1為允許多數(shù)表決采樣;MAJ=0為禁止多數(shù)表決采樣。
PTSCON1具有異步和同步操作兩種模式。異步方式的PTSCON1操作格式為:
同步方式的PTSCON1格式為:
其中:PRAR為接收奇偶校驗(yàn)控制/狀態(tài)位;
PEN為奇偶校驗(yàn)選通們,PEN=1時(shí)選通;PEN=0時(shí)禁止;
FE為出錯(cuò)標(biāo)志,F(xiàn)E=1說明傳輸出錯(cuò);
TPAR為發(fā)送奇偶校驗(yàn)控制位;
TRC是發(fā)送/接收控制位。
在利用196MC/MD實(shí)現(xiàn)串行通訊時(shí),首先選擇EPA中的一個(gè)捕獲比較模塊作為串行通訊,再選擇一個(gè)比較模塊作為串行通訊發(fā)送模塊。這樣就能構(gòu)成串行通訊的硬件端口。然后,對(duì)所選的EPA模塊開辟相應(yīng)的PTS通道,再根據(jù)通訊要求編寫串行通訊的發(fā)送和接收PTS模塊。最后使EPA和PTS兩者協(xié)同工作便能實(shí)現(xiàn)對(duì)串行通訊的控制。
下面以異步串行通訊為例介紹其實(shí)現(xiàn)方法:首先為串行接收方式選擇一個(gè)捕獲/比較模塊作為串行接收引腳。然后利用捕獲功能捕捉起始位,當(dāng)捕捉到起始位后將該模塊轉(zhuǎn)換為比較方式,并利用比較方式的精確定時(shí)來確定第一個(gè)采樣時(shí)刻。最后按照選定的時(shí)間間隔對(duì)輸入數(shù)據(jù)的位進(jìn)行采樣(要確保每次采樣都發(fā)生在數(shù)據(jù)位周期中心),這樣就可以正確接收串行數(shù)據(jù)了。這個(gè)采樣過程是通過對(duì)應(yīng)的EPA中斷和PTS配合來實(shí)現(xiàn)的。圖2是接收過程的時(shí)序圖。
評(píng)論