<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ARM7串口9位方式多機通信的編程技術(shù)

ARM7串口9位方式多機通信的編程技術(shù)

作者: 時(shí)間:2010-04-09 來(lái)源:網(wǎng)絡(luò ) 收藏

  O——禁止奇偶產(chǎn)生和校驗。

  1——使能奇偶產(chǎn)生和校驗。

  奇偶選擇:設置奇偶校驗類(lèi)型。

  OO——奇數(數據位+校驗位=奇數)。

  01——偶數(數據位+校驗位=偶數)。

  10——校驗位強制為1。

  11——校驗位強制為O。

  U0FCR寄存器的描述如下:

U0FCR寄存器

  這里面注意第6、7位。

  Rx觸發(fā)點(diǎn)設置:通過(guò)設置這兩位可以調整接收FIF0中觸發(fā)RDA中斷的有效字節數量。

  00——觸發(fā)點(diǎn)O(1字節)。

  01——觸發(fā)點(diǎn)1(4字節)。

  10——觸發(fā)點(diǎn)2(8字節)。

  11——觸發(fā)點(diǎn)3(14字節)。

  3 編程實(shí)現

  上面已說(shuō)明,的關(guān)鍵是第9位的編程發(fā)送和第9位的接收和判斷。

  對于發(fā)送端,利用UOLCR寄存器的設置便能實(shí)現第9位的編程發(fā)送。

  UOLCR=0x2B; //帶奇偶校驗,強制為l

  UOLCR=Ox3B; //帶奇偶校驗,強制為O

  通過(guò)以上設置,只要編程發(fā)送1字節,就自動(dòng)將第9位按程序設置的0或1發(fā)送出去。

  難點(diǎn)在于接收端,即接收端把接收到的第9位放到哪了,程序員又如何知道這第9位是0還是1。

  其實(shí),并不像51單片機那樣把接收到的第9位數據自動(dòng)裝入SCON的RB8。實(shí)際上,并沒(méi)有這樣的寄存器SCON,也沒(méi)有RB8位。要實(shí)現判斷第9位為1或0,只能利用ARM串口通信的奇偶校驗功能!

  具體思路如下:

 ?、僭O置奇偶校驗使能;

 ?、诰幊套x取UOLSR寄存器的PE位(具體含義見(jiàn)UOLSR寄存器的描述部分);

 ?、劬幊膛袛嗍盏降膌字節中有多少個(gè)“1”,并設置一標志PP;

 ?、軐⑸鲜鰳酥九cPE位比較處理;

 ?、荼容^的結果就正確表示了第9位是“O”,還是“1”。

  按照以上思路,可有效實(shí)現第9位的判斷。下面給出相應的程序代碼:

程序

程序

  上述程序中變量u9就是得到的第9位標志:

  當u9=OxFF時(shí),說(shuō)明第9位為1;

  當u9=OxFE時(shí),說(shuō)明第9位為O。

  還需注意的是,接收端奇偶校驗設置成偶校驗還是奇校驗,要根據后面程序中標志pp的設置而定。

  4 總 結

  本設計方案巧妙地應用ARM串口通信奇偶校驗功能,實(shí)現了,并在相關(guān)課題中成功應用,而且保證了通信的可靠性。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: ARM 多機通信 UART 9位方式

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>