通過非同步收發器(uart)用來傳輸序列資料。uart之間以全雙工方式傳輸資料,最精簡的連線方法只有三條連線:txd用於傳送資料,rxd用於接收資料,gnd給雙方提供參考電平。
uart使用標準的cmos邏輯電平(0—5v、0—3.3v、0—2.5v或0—1.8v四種)來表示資料,高電平為1,低電平為0。為了增強干擾能力,提到傳輸長度,通常將cmos邏輯電平轉換為rs-232邏輯電平(3—15v以0表示,-3 — -15v以1表示)。txd、rxd資料線以「位」位最小傳輸單位,傳輸資料報括1位起始位、5—8位資料位、1位奇偶校驗位(需要的話)和1—2位停止位。
傳輸資料之前,uart之間要約定資料的傳輸速率(即每位所佔時間,其倒數成為波特率)、資料的幀格式(即有多少個資料位、是否使用校驗位、是奇校驗還是偶校驗、有幾位停止位)。
其資料傳輸流程如下:
1、平時資料線處於「空閉」狀態(1狀態)。
2、當要傳送資料時,uart改變txd資料線的狀態(變為0狀態)並維持1位的時間,這樣,接收方檢測到開始位後,在等待1.5位的時間就開始一位一位地檢測資料線的狀態,得到所傳輸的資料。
3、uart一幀中可以有5、6、7或8位資料,傳送方一位一位地改變資料線的狀態,將它們傳送出去,首先傳送最低位。
4、如果使用奇偶校驗功能,uart在傳送完資料位後,還要傳送1個校驗位。有兩種校驗方法,即奇校驗和偶校驗(資料位連同校驗位中「1」的數目分別等於奇數或偶數)。
5、傳送停止位,資料線恢復到「空閉」狀態(1狀態)。停止位的長度有三種:1位、1.5位、2位。
用普通 I O 口模擬標準 UART 序列口
用普通 i o 口也可以模擬標準 uart 序列口,進行序列通訊。幀 uart 通訊規範是以 8 位二進位制數為一幀,低位在前,逐位的傳輸。為了區分各個幀,在每一幀之前,要有乙個 0 作為起始標記,之後,有乙個 1,作為結束符。在結束符之前,還可選髮乙個 校驗位 但是,目前多數的應用都不選擇這個位。...
序列口接收訊號
以下是程式 include stm32f10x.h include stm32f10x gpio.h include stm32f10x rcc.h include stm32f10x usart.h define led0 gpio pin 8 define led1 gpio pin 9 def...
序列口動態掃瞄顯示電路
2006 05 11 09 29 36 51微控制器程式設計範例 序列口動態掃瞄顯示電路 微控制器並行i o口數量總是有限的,有時並行口需作其他更重要的用途,一般也不會用數量眾多的並行i o口專門用來驅動顯示電路,能否用80c51的序列通訊口加上少量i o及擴充套件晶元用於顯示電路呢?答案是肯定的。...