嵌入式系統(tǒng)原理及應(yīng)用項目化教程 課件 項目六 串行通信設(shè)計與實現(xiàn)_第1頁
嵌入式系統(tǒng)原理及應(yīng)用項目化教程 課件 項目六 串行通信設(shè)計與實現(xiàn)_第2頁
嵌入式系統(tǒng)原理及應(yīng)用項目化教程 課件 項目六 串行通信設(shè)計與實現(xiàn)_第3頁
嵌入式系統(tǒng)原理及應(yīng)用項目化教程 課件 項目六 串行通信設(shè)計與實現(xiàn)_第4頁
嵌入式系統(tǒng)原理及應(yīng)用項目化教程 課件 項目六 串行通信設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

嵌入式系統(tǒng)原理及應(yīng)用

項目化教程項目6串行通信設(shè)計與實現(xiàn)學(xué)習(xí)目標(biāo)1.了解串行通信的基本概念;2.掌握STM32F1的USART接口及配置;3.掌握printf重定向;4.利用STM32F1的USART1實現(xiàn)與PC機對話。目錄6.1串行通信6.2USART介紹6.3任務(wù)10USART1與PC機實現(xiàn)對話6.4任務(wù)11printf重定向至串口1.通信接口背景知識

處理器與外部設(shè)備通信的兩種方式:并行通信-傳輸原理:數(shù)據(jù)各個位同時傳輸。-優(yōu)點:速度快-缺點:占用引腳資源多串行通信-傳輸原理:數(shù)據(jù)按位順序傳輸。-優(yōu)點:占用引腳資源少-缺點:速度相對較慢6.1串行通信1.通信接口背景知識

串行通信:按照數(shù)據(jù)傳送方向,分為:單工:

數(shù)據(jù)傳輸只支持?jǐn)?shù)據(jù)在一個方向上傳輸半雙工:

允許數(shù)據(jù)在兩個方向上傳輸,但是,在某一時刻,只允許數(shù)

據(jù)在一個方向上傳輸,它實際上是一種切換方向的單工通信;全雙工:允許數(shù)據(jù)同時在兩個方向上傳輸,因此,全雙工通信是兩個

單工通信方式的結(jié)合,它要求發(fā)送設(shè)備和接收設(shè)備都有獨立

的接收和發(fā)送能力。6.1串行通信1.通信接口背景知識

串行通信三種傳送方式:6.1串行通信1.通信接口背景知識

串行通信的通信方式同步通信:帶時鐘同步信號傳輸。-SPI,IIC通信接口異步通信:不帶時鐘同步信號。-UART(通用異步收發(fā)器),單總線6.1串行通信1.通信接口背景知識

常見的串行通信接口:通信標(biāo)準(zhǔn)引腳說明通信方式通信方向UART(通用異步收發(fā)器)TXD:發(fā)送端RXD:接受端GND:公共地異步通信全雙工單總線(1-wire)DQ:發(fā)送/接受端異步通信半雙工SPISCK:同步時鐘MISO:主機輸入,從機輸出MOSI:主機輸出,從機輸入同步通信全雙工I2CSCL:同步時鐘SDA:數(shù)據(jù)輸入/輸出端同步通信半雙工6.1串行通信2.STM32串口通信基礎(chǔ)

STM32的串口通信接口UART:通用異步收發(fā)器USART:通用同步異步收發(fā)器大容量STM32F10x系列芯片,包含3個USART和2個UART6.1串行通信2.STM32串口通信基礎(chǔ)

UART異步通信方式引腳連接方法:-RXD:數(shù)據(jù)輸入引腳。數(shù)據(jù)接受。-TXD:數(shù)據(jù)發(fā)送引腳。數(shù)據(jù)發(fā)送。6.1串行通信2.STM32串口通信基礎(chǔ)

UART異步通信方式引腳:-RXD:數(shù)據(jù)輸入引腳。數(shù)據(jù)接受。-TXD:數(shù)據(jù)發(fā)送引腳。數(shù)據(jù)發(fā)送。串口號RXDTXD1PA10PA92PA3PA23PB11PB104PC11PC105PD2PC126.1串行通信2.STM32串口通信基礎(chǔ)

UART異步通信方式特點:全雙工異步通信。分?jǐn)?shù)波特率發(fā)生器系統(tǒng),提供精確的波特率。-發(fā)送和接受共用的可編程波特率,最高可達4.5Mbits/s可編程的數(shù)據(jù)字長度(8位或者9位);可配置的停止位(支持1或者2位停止位);可配置的使用DMA多緩沖器通信。單獨的發(fā)送器和接收器使能位。檢測標(biāo)志:①

接受緩沖器②發(fā)送緩沖器空③傳輸結(jié)束標(biāo)志多個帶標(biāo)志的中斷源。觸發(fā)中斷。其他:校驗控制,四個錯誤檢測標(biāo)志。6.1串行通信2.STM32串口通信基礎(chǔ)

串口通信過程數(shù)據(jù)接收過程:MCU內(nèi)核輸入數(shù)據(jù)緩沖器串行輸入移位寄存器MCU內(nèi)核輸出數(shù)據(jù)緩沖器串行輸出移位寄存器數(shù)據(jù)發(fā)送過程:RXDTXD串行數(shù)據(jù)輸入串行數(shù)據(jù)輸出外部設(shè)備外部設(shè)備……6.1串行通信

STM32串口異步通信需要定義的參數(shù):

起始位數(shù)據(jù)位(8位或者9位)

奇偶校驗位(第9位)

停止位(1,15,2位)

波特率設(shè)置范例:2.STM32串口通信基礎(chǔ)6.1串行通信2.STM32串口通信基礎(chǔ)6.1串行通信STM32串口資源166.2USART介紹USART是通用同步/異步收發(fā)器(帶同步時鐘線USART_CK)UART是通用異步收發(fā)器(沒有同步時鐘線)

但最常用的是異步模式,同步模式很少用,所以二者區(qū)別不大。USART只是一種協(xié)議方式,根據(jù)不同電平方式分為RS232和RS485等

6.2USART介紹6.2USART介紹序號名稱功能序號名稱功能12PA2USART2_TX30PA9USART1_TX13PA3USART2_RX31PA10USART1_RX21PB10USART3_TX42PB6USART1_TX22PB11USART3_RX43PB7USART1_RX通過搜索關(guān)鍵字USART,可以找到STM32F103單片機的串口引腳分布STM32串口資源19同一個引腳可以對應(yīng)多個功能,同一個功能也可以對應(yīng)多個引腳6.2USART介紹6.2USART介紹6.3任務(wù)10USART1與PC機實現(xiàn)對話6.4任務(wù)11printf重定向至串口需要將fputc里面的輸出指向STM32串口即可,fputc函數(shù)有固定的格式,只需要在函數(shù)內(nèi)操作STM32串口即可,代碼如下:intfputc(intch,FILE*p)//函數(shù)默認(rèn)的,在使用printf函數(shù)時自動調(diào)用{USART_SendData(USART1,(u8)ch);while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論