正点原子STM32F103(精英版)------串行通信
處理器與外部設備通信的兩種方式:
并行通信
傳輸原理:數據各個位同時傳輸
優點:速度快
缺點:占用引腳資源多
串行通信
傳輸原理:數據按位順序傳輸
優點:占用引腳資源少
缺點:速度相對較慢
2.串行通信
按照數據傳送方向,分為:
單工:數據傳輸只支持數據在一個方向上傳輸
半雙工:允許數據在兩個方向上傳輸,但是,在某一適合,只允許數據在一個方向上傳輸,它實際上是一種切換方向的單工通信
全雙工:允許數據同時在兩個方向上傳輸,因此,全雙工通信是兩個單工通信方式的結合,它要求發送設備和接收設備都有獨立的接收和發送能力。
串行通信的通信方式
同步通信:帶時鐘同步信號傳輸。---SPI,IIC通信接口(按照時鐘同步信號一位一位傳輸)
異步通信:不帶時鐘同步信號。---UART(通用異步接發器),單總線? ?(不帶時鐘同步信號,雙方必須約定好波特率進行傳輸)
常見的串行通信接口
?STM32的串口通信接口
UART:通用異步收發器
USART:通用同步異步收發器
大容量STM32F10X系列芯片,包含3個USART和2個UART
UART異步通信方式引腳連接方法:
-RXD:數據輸入引腳。數據接受
-TXD:數據發送引腳。數據發送
| 串口號 | RXD | TXD |
| 1 | PA10 | PA9 |
| 2 | PA3 | PA2 |
| 3 | PB11 | PB10 |
| 4 | PC11 | PC10 |
| 5 | PD2 | PC12 |
UART異步通信方式特點
全雙工異步通信。
分數波特率發生器系統,提供精確的波特率----發送和接受共用的可編程波特率,最高可達4.5Mbits/s
可編程的數據字長度(8位或者9位)
可配置的停止位(支持1或者2位停止位)
可配置的使用DMA多緩沖器通信
單獨的發送器和接收器使能位
檢測標志:①接受緩沖器? ②發送緩沖器空?③傳輸結束標志
多個帶標志的中斷源。出發中斷。
其他:校驗控制,四個錯誤檢測標志。
串口通信過程
?STM32串口異步通信需要定義的參數(參考野火P34視頻)
①起始位
②數據位(8位或者9位)
③奇偶校驗位(第9位)
④停止位(1,15,2位)
⑤波特率設置
?
串口通信協議簡介
串口數據包的基本組成
?起始位:由1個邏輯0的數據位表示
結束位:由0.5、1、1.5或2個邏輯1的數據位表示
有效數據:在起始位后緊跟著的就是有效數據,有效數據的長度常被約定為5、6、7或8位長
校驗位:可選,為的是數據的抗干擾性
1-奇校驗 (odd)? ?2-偶校驗 (even)?3-0校驗(space)??4-1校驗 (mark)? ? 5-無校驗(noparity)
奇校驗
有效數據和校驗位中“1”的個數為奇數
比如:一個8位的有效數據為 0110 1001? ? ,此時共有4個“1”,為達到奇校驗效果,校驗位為“1” ,最后傳輸的數據將是8位的有效數據加上 1位的校驗位?總共為9位。
偶校驗
有效數據和校驗位中“1”的個數為偶數
比如:一個8位的有效數據為 0110 1001? ? ,此時共有4個“1”,為達到偶校驗效果,校驗位為“0” ,最后傳輸的數據將是8位的有效數據加上 1位的校驗位?總共為9位。
0校驗
不管有效數據中的內容是什么,校驗位總為0
1校驗
校驗位總為1
無校驗
數據包中不包含校驗位
總結
以上是生活随笔為你收集整理的正点原子STM32F103(精英版)------串行通信的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在output 子句和 scope_id
- 下一篇: 极详细的ECC讲解 -OOB与ECC