目錄
內容
5.4 UART_ReceiveDataBlocking. 16
5.8 UART_GetTransmitStatus. 20
6.4 UART 參數與 Baud (rate) 設定... 28
1. 概述
1.1 功能描述
本範例將使用 S32DS SDK 燒入程式,由 MPC5777C_EVB 與電腦進行 Uart
通訊,並驗證電腦端是否接收正確,與 MPC5777C 是否正確接收電腦端由鍵盤
輸入的 ASCLL_CODE資料,確認資料接收無誤與沒有資料的缺失
1.2 硬體開發工具
MPC5777C-EVB 評估板
PEmicro Multilink Universal 燒錄器
USB 轉 Uart 轉換器
1.3 軟體開發工具
S32 Design Studio IDE for Power Architecture , 版本 2017.R1 , Build id: 171018
S32 SDK PA , BETA 2.9.0
TeraTerm ( Uart 介面)
1.4 參考相關程式碼
MPC5777C_Uart.zip
2. Uart 原理
2.1 Baud ( 調製速率 )
1 Baud 代表一秒傳輸1個 bit 的訊號
9600 Baud 代表一秒傳輸9600 bits 的訊號
2.2 Uart 通訊格式
2.2.1 起始欄位 ( start bit )
Uart 在閒置狀態時為高電位 ( 1 ),傳送 1 個 bit 的 start bit ( 0 ) 將電位,轉換為低電位來表示開始傳送資料 ( data ) ,一般 data 位元為8 個 bits
2.2.2 結束欄位 ( stop bit )
傳送完資料位元後,傳送1 個 bit 的 stop bit ( 1 ) 來表示資料傳輸完畢。
2.3 全雙工模式
使用 buffer 來實現全雙工模式,將資料儲存於 buffer 再使用 shift register 來達到同時接收與傳送資料。
3. 程式碼功能描述
3.1 功能概述
3.1.1將傳輸速率設定調整電腦端與 MPC5777C 一致後,輸入欲傳輸資料利用 UART 通訊與 TeraTerm 軟體介面,將資料顯示於電腦螢幕上,並由鍵盤輸入訊號,由 MPC5777C 接收,資料為 ASCLL_CODE ,傳送資料為 2 個陣列 data ,確認上筆陣列 data 資料成功傳輸後,換下個陣列 data 傳送。
3.2 程式流程圖
4. 硬體接線圖
4.1 MPC5777C 內部接線圖
UART RX 與 TX 線路可與 CAN 通用
( 例 : FLEXCAN_RXA PIN 腳可設置為 eSCI_0 RX )
( 例 : FLEXCAN_TXA PIN 腳可設置為 eSCI_0 TX )
MPC5777C EVB 板有 UART to USB converter
4.2 外部接線圖
系統接線圖
實體接線圖
USB 轉 Uart 連接器
5. 相關 function 介紹
5.1 UART_Init
5.1.1 功能描述
設置字元長度,傳輸速率
指定錯誤回授、狀態回授的暫存器
Parity 、 stop bit 設定
5.1.2 函式原型
UART_Init ( const uart_instance_t * const instance , const uart_user_config_t *config )
5.1.3 參數
參數名稱 |
類型 |
描述 |
const instance |
const uart_instance_t * |
指定 UART 函式模塊 |
config |
const uart_user_config_t * |
設置 baud rate、字元長度、Parity、stop bit 設定……等等 |
5.1.4 return 值
回傳 STATUS_SUCCESS
STATUS_ERROR
STATUS_BUSY
STATUS_TIMEOUT
STATUS_UNSUPPORTED
5.1.5 範例
UART_Init ( &uart_pal1_instance, &uart_pal1_Config0 )
評論