串行通信接口模塊SCI_第1頁
串行通信接口模塊SCI_第2頁
串行通信接口模塊SCI_第3頁
串行通信接口模塊SCI_第4頁
串行通信接口模塊SCI_第5頁
已閱讀5頁,還剩32頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五第十二章串行通信接口模塊(SCI )Serial Communication Interface電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.1 串行通信接口概述?SCI模塊支持異步通信 ;?SCI接收器和發(fā)送器是雙緩沖的,各自有獨立的使能位和中斷標志位??梢元毩⒐ぷ?,或全雙工方式工作;?SCI對接收到的數(shù)據(jù)進行間斷檢測,奇偶校驗,越限和幀出錯的檢查 ;?數(shù)據(jù)傳輸速度可編程為 65535種方式;?八位外設(shè)

2、接口。電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五SCI模塊的特性包括:?兩個外部引腳 SCIRXD、SCITXD?一個16位的波特率選擇寄存器,可編程為 64K種波特率?幀格式:一位啟始位,18數(shù)據(jù)位,可選的奇偶校驗位 ,一位或兩位停止位?4種錯誤檢測標志 :奇偶錯,越限,幀出錯,間斷檢測?兩種多處理器喚醒方式 :空閑線或地址位喚醒?半雙工或全雙工操作12.1 串行通信接口概述電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五雙緩沖的接收和發(fā)送功能;1.

3、發(fā)送和接收操作可利用狀態(tài)位查詢或中斷完成;2. 發(fā)送器:TXRDY標志(發(fā)送緩沖器準備接收另一個來自CPU的字符),TX EMPTY標志位(發(fā)送移位寄存器空)3. 接收器:RXRDY(接收緩沖器準備接收另一字符 ),4. BRKDT(間斷條件出現(xiàn)),RX ERROR(監(jiān)視4個中斷條件 (FE.OE.PE.BRKDT)5. 不返回零格式;12.1 串行通信接口概述電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五全雙工模式下SCI的主要部件1.一個發(fā)送器(TX)及和它相關(guān)的主要寄存器;2.一個接收器(RX)及和它相關(guān)的主要寄存器;

4、3.一個可編程的波特率發(fā)生器;4.控制和狀態(tài)寄存器。12.1 串行通信接口概述電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.2 多處理器異步通信模式兩個多處理器通信協(xié)議 :空閑線模式和地址位模式提供了通用異步接收 / 發(fā)送(UART) 通信接口主機TXDRXDTXDRXD從機1TXDRXD從機n12.2.1 串行通信接口可編程的數(shù)據(jù)格式串行通信接口的 NRZ 數(shù)據(jù)格式包括:?一個起始位;?18個數(shù)據(jù)位;?一個奇/ 偶校驗位或無奇/ 偶校驗位;?12個停止位;?一個用于區(qū)分數(shù)據(jù)和地址的額外位。電氣工程學(xué)院Electric

5、al Engineering Institute of NEDU2020年4月3日星期五一條串行線上某一時刻只能進行一次傳送地址字節(jié):發(fā)送機發(fā)送數(shù)據(jù)塊 ,首先發(fā)送一個地址字節(jié),它被所有的接收機讀取,僅地址相符的接收機才接收地址字節(jié)后面的數(shù)據(jù) .SLEEP位:所有處理器將各自的 SLEEP位置成1,在監(jiān)測到地址字節(jié)時產(chǎn)生中斷。當(dāng)處理器讀取到的地址與應(yīng)用軟件設(shè)置的本處理器地址相符時,用戶須清除SLEEP位來確保收到每個數(shù)據(jù)字節(jié)時產(chǎn)生中斷。12.2.2 SCI 的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五地址字節(jié)的

6、識別空閑線模式 在地址字節(jié)前留有一定長度的空閑空間, 這種模式對于大數(shù)據(jù)塊傳輸更有效。地址位模式在每幀中加入額外地址 /數(shù)據(jù)位,這種模式對于小數(shù)據(jù)塊傳輸更有效。12.2.2 SCI 的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五在兩種多處理器模式中,接收步驟如下:?接收地址塊時,在 RX / BK INT ENA位使能條件下,串行通信接口喚醒并請求中斷 ,讀取地址幀。?在中斷服務(wù)程序中校對地址。?如果地址相符,則 CPU就清除SLEEP位并讀取塊中的剩余的數(shù)據(jù);否則,SLEEP位依舊置位 ,直到下一個地址塊開始

7、才接收并產(chǎn)生中斷。12.2.2 SCI 的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五1.空閑線多處理器模式( ADDR/IDLE MODE=0 )數(shù)據(jù)塊被塊間的時間間隔分開,該時間間隔比塊中的數(shù)據(jù)幀之間的時間間隔要長,一幀后的空閑時間(10個或更多個高電平位)表明了一個新塊的開始。如下頁圖所示:12.2.2 SCI 的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.2.2 SCI 的多處理器通信電氣工程學(xué)院Electrica

8、l Engineering Institute of NEDU2020年4月3日星期五空閑線模式接收步驟如下 :?接收到塊啟動信號后 SCI喚醒;?處理器識別出下一個 SCI中斷;?在中斷服務(wù)程序中校對地址 ;?如果該地址與本控制器的地址相符,則 CPU就清除SLEEP位并讀取塊中的剩余的數(shù)據(jù);?否則,SLEEP位依舊置位,直到下一個地址塊的開始才接收中斷。12.2.2 SCI的多處理器通信的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五空閑線模式下有兩種方法可傳送塊的開始信號1.在前一塊的最后一幀的數(shù)據(jù)傳送與新

9、塊的地址幀傳送之間留出 10位或更多位的空閑時間。2.首先將發(fā)送喚醒位TXWAKE 置1,然后再向SCITXBUF 寫入任意一個數(shù)據(jù),這樣可以在數(shù)據(jù)線上產(chǎn)生11位的空閑時間。12.2.2 SCI 的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五喚醒暫存標志位 Wake-UP Temporary (WUT) FlagWUT是一個內(nèi)部標志 ,與TXWAKE 構(gòu)成雙緩沖。TXSHF與SCITXBUF構(gòu)成雙緩沖,當(dāng)SCITXBUF向TXSHF裝載數(shù)據(jù)時, TXWAKE 值傳送給WUT,然后TXWAKE自動清零。12.2.

10、2 SCI 的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五空閑線模式下發(fā)送一個塊起始信號步驟1. 設(shè)置發(fā)送喚醒位TXWAKE為1;2. 將一個數(shù)據(jù)字(內(nèi)容不重要)寫到 SCITXBUF寄存器來作為傳送一個塊的開始信號 ;當(dāng)TXSHF寄存器再次空閑時, SCITXBUF寄存器的內(nèi)容被傳送到TXSHF寄存器中, TXWAKE被移位到WUT,而后TXWAKE位被清0。因為WUT為1,則啟始位、數(shù)據(jù)位和奇偶位被11位空閑周期所取代;3. 將新的地址寫入SCITXBUF寄存器。12.2.2 SCI 的多處理器通信電氣工程

11、學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五地址位多處理器模式( ADDR/IDLE MODE=1 )幀格式中有一個附加位,叫地址位,緊跟在數(shù)據(jù)位之后,在數(shù)據(jù)塊的第一幀中附加位被置成1,在其他幀中被置成 0,通信格式如下:12.2.2 SCI 的多處理器通信12.2.2 SCI的多處理器通信的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五地址位模式下發(fā)送地址步驟 :1. 置TXWAKE為1并將地址寫入SCITXBUF,當(dāng)SCITXBUF內(nèi)容送到TXS

12、HF移出時, TXWAKE內(nèi)容送WUT作為地址位移出;2. 因為TXSHF和WUT是雙緩沖的,因此TXWAKE 和SCITXBUF可在裝入TXSHF和WUT后,立即裝入新值;3. 發(fā)送數(shù)據(jù)幀時,應(yīng)將TXWAKE 清零。12.2.2 SCI的多處理器通信的多處理器通信電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.2.3 SCI 通信格式每個數(shù)據(jù)位占用 8個SCICLK 周期,有效的啟始位由4個連續(xù)的內(nèi)部SCICLK周期的0位識別出來。對于啟始位后的位,處理器對中間位采樣 3次來決定其位值,這些采樣點出現(xiàn)在第4、5、6個S

13、CICLK周期,位值取決于多數(shù) (三分之二以上)。電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.2.3 SCI 通信格式電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五通信模式中的接收器信號12.2.3 SCI 通信格式電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五例如:地址位喚醒模式,每個字符 6位1. 設(shè)置RXENA 位為1來使能接收器接收數(shù)據(jù) ;2. 數(shù)據(jù)到達SCIRXD 引腳

14、后,檢測到啟始位 ;3. 數(shù)據(jù)從RXSHF 移到SCIRXBUF中,標志RXRDY置1表示已收到一個新字符 ,產(chǎn)生中斷請求標志;4. 讀SCIRXBUF時,標志位RXRDY 自動被清除;5. 如RXENA 為零,接收器被禁止,數(shù)據(jù)繼續(xù)保持在RXSHF 中,沒有移入到 SCIRXBUF中12.2.3 SCI 通信格式電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五通信模式中的發(fā)送器信號通信模式中的發(fā)送器信號12.2.3 SCI 通信格式電氣工程學(xué)院Electrical Engineering Institute of NEDU2

15、020年4月3日星期五例如:地址位喚醒模式,每個字符3位1. 設(shè)置TXENA位為1使能發(fā)送器發(fā)送數(shù)據(jù);2. SCITXBUF被寫入,TXRDY變低;3. SCITXBUF數(shù)據(jù)傳到 TXSHF,發(fā)送器準備第2個字符(TXRDY變高),并發(fā)出中斷請求(TX INT ENA位允許);4. 程序?qū)⒌?個字符傳到SCITXBUF,寫入后TXRDY又變低 ,TX EMPTY清零,發(fā)送完第1個字符后,TX EMPTY位置1 。第2個字符傳到TXSHF操作開始;5. 如TXENA位為低,發(fā)送器被禁止,SCI結(jié)束發(fā)送。6. 發(fā)送完第2 個字符后,發(fā)送器變空并準備發(fā)送新字符。12.2.3 SCI 通信格式電氣工程

16、學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.2.4 串行通信接口中斷串行通信接口的接收器和發(fā)送器可由中斷來控制,標志位TXRDY用來指示發(fā)送中斷條件,標志位RXRDY和RBKDT用來指示接收中斷條件電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.2.5 串行通信接口波特率計算BRR=1到65535時波特率為:SCI波特率=SYSCLK/ (BRR+1)*8BRR=0時:SCI波特率=SYSCLK/16例如:已知SYSCLK=24MHz ,所需波特率為9

17、600bps ,進行RS-232通信,試確定波特率寄存器的值BRRBRR=24000000/ (9600*8)1=311.5 取138H所以波特率選擇寄存器設(shè)置為SCIHBUAD=01H ,SCILBAUD=38H 電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五12.3 串行通信接口控制寄存器?SCI通信控制寄存器( SCICCR)?SCI控制寄存器1(SCICTL1)?SCI控制寄存器2(SCICTL2)?SCI波特率選擇高字節(jié)寄存器( SCIHBAUD )?SCI波特率選擇低字節(jié)寄存器( SCILBAUD )?SCI接收

18、狀態(tài)寄存器( SCIRXST)?SCI接收數(shù)據(jù)緩沖寄存器( SCIRXEMU)?SCI接收數(shù)據(jù)緩沖寄存器( SCIRXBUF)?SCI發(fā)送數(shù)據(jù)緩沖寄存器( SCITXBUF)?SCI優(yōu)先級控制寄存器( SCIPRI)STOP BITS停止位個數(shù)選擇0:一個停止位;1:兩個停止位EVEN/ODD PARITY奇偶校驗選擇0:奇校驗;1:偶校驗PARITY ENABLE校驗使能位0:禁止;1:使能LOOP BACK ENA自測試模式使能位0:禁止;1:使能ADDR/IDLE MODE多機模式選擇位0:空閑線模式;1:地址位模式SCICHAR2SCICHAR0 字符長度選擇位12.3串行通信接口控制

19、寄存器串行通信接口控制寄存器RX ERR INT ENA 接收錯誤中斷使能0:禁止;1:使能SW RESET軟件復(fù)位SCI (低有效),寫1使能SCITXWAKE發(fā)送器喚醒方式選擇位,在空閑線模 式下,寫 1到TXWAKE 則寫入 SCITXBUF中的任意數(shù)據(jù)都會在線路上產(chǎn)生 11個數(shù)據(jù)位的空閑周期;在地址位模式下,為1表示要發(fā)送地址,為 0表示發(fā)送的是數(shù)據(jù)字節(jié)。SLEEP休眠 0:禁止休眠;1:進入休眠TXENA發(fā)送使能位0:禁止;1:使能RXENA接收使能位0:禁止將收到的數(shù)據(jù)發(fā)送到SCIRXBUF1:允許將收到的數(shù)據(jù)發(fā)送到SCIRXBUF12.3串行通信接口控制寄存器串行通信接口控制寄存器電氣工程學(xué)院Electrical Engineering Institute of NEDU2020年4月3日星期五BAUD15 BAUD0波特率設(shè)置12.3 串行通信接口控制寄存

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論