當前位置:首頁 > 單片機 > 單片機
[導讀]五、ATMEGA16的USART與PC機串行通信五—(01)、PC機發(fā)送字符給單片機控制發(fā)光管亮,同時將其傳回PC機,其中單片機的發(fā)送和接收都采用查詢方式(下一篇中有例程~)1、USART的主要特點通用同步和異步串行接收器和轉發(fā)

五、ATMEGA16的USART與PC機串行通信

五—(01)、PC機發(fā)送字符給單片機控制發(fā)光管亮,同時將其傳回PC機,其中單片機的發(fā)送和接收都采用查詢方式(下一篇中有例程~)

1、USART的主要特點

通用同步和異步串行接收器和轉發(fā)器(USART) 是一個高度靈活的串行通訊設備。主要特
點為:
? 全雙工操作( 獨立的串行接收和發(fā)送寄存器)
? 異步或同步操作
? 主機或從機提供時鐘的同步操作
? 高精度的波特率發(fā)生器
? 支持5, 6, 7, 8, 或9 個數據位和1 個或2 個停止位
? 硬件支持的奇偶校驗操作
? 數據過速檢測
? 幀錯誤檢測
? 噪聲濾波,包括錯誤的起始位檢測,以及數字低通濾波器
? 三個獨立的中斷:發(fā)送結束中斷, 發(fā)送數據寄存器空中斷,以及接收結束中斷
? 多處理器通訊模式
? 倍速異步通訊模式

2、異步串行收發(fā)器

USART 分為了三個主要部分: 時鐘發(fā)生器,發(fā)送器和接收器。控制寄存器由三
個單元共享。時鐘發(fā)生器包含同步邏輯,通過它將波特率發(fā)生器及為從機同步操作所使用
的外部輸入時鐘同步起來。XCK ( 發(fā)送器時鐘) 引腳只用于同步傳輸模式。發(fā)送器包括一個寫緩沖器,串行移位寄存器,奇偶發(fā)生器以及處理不同的幀格式所需的控制邏輯。寫緩
沖器可以保持連續(xù)發(fā)送數據而不會在數據幀之間引入延遲。由于接收器具有時鐘和數據
恢復單元,它是USART 模塊中最復雜的?;謴蛦卧糜诋惒綌祿慕邮铡3嘶謴蛦?br/>元,接收器還包括奇偶校驗,控制邏輯,移位寄存器和一個兩級接收緩沖器UDR。接收
器支持與發(fā)送器相同的幀格式,而且可以檢測幀錯誤,數據過速和奇偶校驗錯誤。

3、時鐘產生

1)USART支持4種模式的時鐘

時鐘產生邏輯為發(fā)送器和接收器產生基礎時鐘。USART 支持4 種模式的時鐘:正常的異
步模式,倍速的異步模式,主機同步模式,以及從機同步模式。USART 控制位UMSEL
和狀態(tài)寄存器C (UCSRC) 用于選擇異步模式和同步模式。倍速模式( 只適用于異步模式
) 受控于UCSRA 寄存器的U2X。使用同步模式 (UMSEL = 1) 時,XCK 的數據方向寄存器
(DDR_XCK)決定時鐘源是由內部產生(主機模式)還是由外部生產(從機模式)。僅在同步模
式下XCK 有效。





2)內部時鐘用于異步模式和同步主機模式(這里我也不是很懂~~,專業(yè)術語太多,不過說白了就是波特率的計算公式唄,不過好好看看肯定能明白的)

USART 的波特率寄存器UBRR 和降序計數器相連接,一起構成可編程的預分頻器或波特
率發(fā)生器。降序計數器對系統時鐘計數,當其計數到零或UBRRL 寄存器被寫時,會自動
裝入UBRR 寄存器的值。當計數到零時產生一個時鐘,該時鐘作為波特率發(fā)生器的輸出
時鐘,輸出時鐘的頻率為fosc/(UBRR+1)。發(fā)生器對波特率發(fā)生器的輸出時鐘進行2、8
或16 的分頻,具體情況取決于工作模式。波特率發(fā)生器的輸出被直接用于接收器與數據
恢復單元。數據恢復單元使用了一個有2、8或16個狀態(tài)的狀態(tài)機,具體狀態(tài)數由UMSEL、
U2X 與 DDR_XCK 位設定的工作模式決定。
Table 60 給出了計算波特率(位/秒)以及計算每一種使用內部時鐘源工作模式的UBRR值
的公式。



3)倍速工作模式

通過設定UCSRA 寄存器的U2X 可以使傳輸速率加倍。該位只對異步工作模式有效。當
工作在同步模式時,設置該位為"0”。
設置該位把波特率分頻器的分頻值從16 降到8,使異步通信的傳輸速率加倍。此時接收
器只使用一半的采樣數對數據進行采樣及時鐘恢復,因此在該模式下需要更精確的系統
時鐘與更精確的波特率設置。發(fā)送器則沒有這個要求。

4)外部時鐘(這些東西感覺都是扯淡的~~呵呵)

同步從機操作模式由外部時鐘驅動,如Figure 70 所示。
輸入到XCK 引腳的外部時鐘由同步寄存器進行采樣,用以提高穩(wěn)定性。同步寄存器的輸
出通過一個邊沿檢測器,然后應用于發(fā)送器與接收器。這一過程引入了兩個CPU 時鐘周
期的延時,因此外部XCK 的最大時鐘頻率由以下公式限制:

fsck

要注意fosc 由系統時鐘的穩(wěn)定性決定,為了防止因頻率漂移而丟失數據,建議保留足夠的
裕量。

5)同步時鐘操作

使用同步模式時(UMSEL = 1)XCK 引腳被用于時鐘輸入( 從機模式) 或時鐘輸出( 主機模
式)。時鐘的邊沿、數據的采樣與數據的變化之間的關系的基本規(guī)律是:在改變數據輸出
端TxD 的XCK 時鐘的相反邊沿對數據輸入端RxD 進行采樣。

4、幀格式

串行數據幀由數據字加上同步位( 開始位與停止位) 以及用于糾錯的奇偶校驗位構成。

1)數據幀格式

? 1 個起始位
? 5、 6、 7、 8 或9 個數據位
? 無校驗位、奇校驗或偶校驗位
? 1或2 個停止位
數據幀以起始位開始;緊接著是數據字的最低位,數據字最多可以有9 個數據位,以數據
的最高位結束。如果使能了校驗位,校驗位將緊接著數據位,最后是結束位。當一個完整
的數據幀傳輸后,可以立即傳輸下一個新的數據幀,或使傳輸線處于空閑狀態(tài)。Figure
72 所示為可能的數據幀結構組合。括號中的位是可選的。



數據幀的結構由UCSRB 和 UCSRC 寄存器中的UCSZ2:0、 UPM1:0、USBS 設定。接
收與發(fā)送使用相同的設置。設置的任何改變都可能破壞正在進行的數據傳送與接收。

USART的字長位UCSZ2:0確定了數據幀的數據位數;校驗模式位UPM1:0用于使能與決
定校驗的類型; USBS 位設置幀有一位或兩位結束位。接收器忽略第二個停止位,因此
幀錯誤(FE) 只在第一個結束位為"0” 時被檢測到。

2)校驗位的計算

校驗位的計算是對數據的各個位進行異或運算。如果選擇了奇校驗,則異或結果還需要取
反。校驗位與數據位的關系如下:



注意:校驗位位于最后一個數據位與第一個停止位之間。

5、USART的寄存器及設置

1)USART I/O數據寄存器



USART 發(fā)送數據緩沖寄存器和USART 接收數據緩沖寄存器共享相同的I/O 地址,稱為
USART 數據寄存器或UDR。將數據寫入UDR 時實際操作的是發(fā)送數據緩沖器存器
(TXB),讀UDR 時實際返回的是接收數據緩沖寄存器(RXB) 的內容。
在5、6、7 比特字長模式下,未使用的高位被發(fā)送器忽略,而接收器則將它們設置為0。
只有當UCSRA寄存器的UDRE標志置位后才可以對發(fā)送緩沖器進行寫操作。如果UDRE
沒有置位,那么寫入UDR 的數據會被USART 發(fā)送器忽略。當數據寫入發(fā)送緩沖器后,
若移位寄存器為空,發(fā)送器將把數據加載到發(fā)送移位寄存器。然后數據串行地從TxD 引
腳輸出。
接收緩沖器包括一個兩級FIFO,一旦接收緩沖器被尋址FIFO 就會改變它的狀態(tài)。因此
不要對這一存儲單元使用讀- 修改- 寫指令(SBI 和CBI)。使用位查詢指令(SBIC 和SBIS)
時也要小心,因為這也有可能改變FIFO 的狀態(tài)(這些東西果斷沒有用過)。

2)USART控制和狀態(tài)寄存器A



? Bit 7 – RXC: USART 接收結束
接收緩沖器中有未讀出的數據時RXC 置位,否則清零。接收器禁止時,接收緩沖器被刷
新,導致RXC 清零。RXC 標志可用來產生接收結束中斷( 見對RXCIE 位的描述)。
? Bit 6 – TXC: USART 發(fā)送結束
發(fā)送移位緩沖器中的數據被送出,且當發(fā)送緩沖器 (UDR) 為空時TXC 置位。執(zhí)行發(fā)送結
束中斷時TXC 標志自動清零,也可以通過寫1 進行清除操作。TXC 標志可用來產生發(fā)送
結束中斷( 見對TXCIE 位的描述)。
? Bit 5 – UDRE: USART 數據寄存器空
UDRE標志指出發(fā)送緩沖器(UDR)是否準備好接收新數據。UDRE為1說明緩沖器為空,已
準備好進行數據接收。UDRE標志可用來產生數據寄存器空中斷(見對UDRIE位的描述)。
復位后UDRE 置位,表明發(fā)送器已經就緒。
? Bit 4 – FE: 幀錯誤
如果接收緩沖器接收到的下一個字符有幀錯誤,即接收緩沖器中的下一個字符的第一個
停止位為0,那么FE 置位。這一位一直有效直到接收緩沖器(UDR) 被讀取。當接收到的
停止位為1 時, FE 標志為0。對UCSRA 進行寫入時,這一位要寫0。
? Bit 3 – DOR: 數據溢出
數據溢出時DOR 置位。當接收緩沖器滿( 包含了兩個數據),接收移位寄存器又有數據,
若此時檢測到一個新的起始位,數據溢出就產生了。這一位一直有效直到接收緩沖器
(UDR) 被讀取。對UCSRA 進行寫入時,這一位要寫0。
? Bit 2 – PE: 奇偶校驗錯誤
當奇偶校驗使能(UPM1 = 1),且接收緩沖器中所接收到的下一個字符有奇偶校驗錯誤時
UPE 置位。這一位一直有效直到接收緩沖器 (UDR) 被讀取。對UCSRA 進行寫入時,這一
位要寫0。
? Bit 1 – U2X: 倍速發(fā)送
這一位僅對異步操作有影響。使用同步操作時將此位清零。
此位置1 可將波特率分頻因子從16 降到8,從而有效的將異步通信模式的傳輸速率加倍。
? Bit 0 – MPCM: 多處理器通信模式
設置此位將啟動多處理器通信模式。MPCM 置位后, USART 接收器接收到的那些不包
含地址信息的輸入幀都將被忽略。發(fā)送器不受MPCM設置的影響。

3)USART控制和狀態(tài)寄存器B



? Bit 7 – RXCIE: 接收結束中斷使能
置位后使能RXC 中斷。當RXCIE 為1,全局中斷標志位SREG 置位, UCSRA 寄存器
的RXC 亦為1 時可以產生USART 接收結束中斷。

? Bit 6 – TXCIE: 發(fā)送結束中斷使能
置位后使能TXC 中斷。當TXCIE 為1,全局中斷標志位SREG 置位,UCSRA 寄存器的
TXC 亦為1 時可以產生USART 發(fā)送結束中斷。
? Bit 5 – UDRIE: USART 數據寄存器空中斷使能
置位后使能UDRE 中斷。當UDRIE 為1,全局中斷標志位SREG 置位,UCSRA 寄存器
的UDRE 亦為1 時可以產生USART 數據寄存器空中斷。
? Bit 4 – RXEN: 接收使能
置位后將啟動USART 接收器。RxD 引腳的通用端口功能被USART 功能所取代。禁止
接收器將刷新接收緩沖器,并使 FE、DOR 及PE 標志無效。
? Bit 3 – TXEN: 發(fā)送使能
置位后將啟動將啟動USART 發(fā)送器。TxD 引腳的通用端口功能被USART 功能所取代。
TXEN 清零后,只有等到所有的數據發(fā)送完成后發(fā)送器才能夠真正禁止,即發(fā)送移位寄存
器與發(fā)送緩沖寄存器中沒有要傳送的數據。發(fā)送器禁止后,TxD引腳恢復其通用I/O功能。
? Bit 2 – UCSZ2: 字符長度
UCSZ2與UCSRC寄存器的UCSZ1:0結合在一起可以設置數據幀所包含的數據位數(字符
長度)。
? Bit 1 – RXB8: 接收數據位 8
對9 位串行幀進行操作時,RXB8 是第9 個數據位。讀取UDR 包含的低位數據之前首先
要讀取RXB8。
? Bit 0 – TXB8: 發(fā)送數據位8
對9 位串行幀進行操作時,TXB8 是第9 個數據位。寫UDR 之前首先要對它進行寫操作。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉