一、 S32K144 LPUART 介紹
1. LPUART 模塊特性
低功耗通用異步收發器(Low Power Universal Asynchronous Receiver/Transmitter, LPUART)支持帶有DMA 接口功能的基本UART,和x4 到x32 的過采樣波特率,支持LIN 主從操作。該模塊在Stop 和VLPS 模式提供的時鐘保持啟用時,仍可保持功能。
在S32K144 中有如下三個LPUART 模塊:
S32K144 LPUART模塊具備以下特點:
- 全雙工,標準的非歸零(non-return-to-zero, NRZ)格式
- 可編程的波特率(13 位數模轉換器)與可配置的比率從x4 到x32 的過采樣
- 發送和接受波特率可以異步操作到總線時鐘:
- 波特率可以配置獨立的總線時鐘頻率
- 支持在Stop 模式下操作
- 中斷,DMA 或者拉起操作
- 硬件奇偶校驗生成和檢查
- 可編程的7-bit,8-bit,9-bit 或10-bit 的字符長度
- 可編程的1-bit 或者2-bit 停止位
- 3 種接收器喚醒方法:
- 閑置線喚醒
- 地址標記喚醒
- 接收數據匹配
- 自動地址匹配,減少中斷服務程序(ISR)開銷
- 地址標志匹配
- 閑置線地址匹配
- 地址匹配開始和結束
- 可選的13-bit 終止字符生成/11-bit 終止字符檢測
- 可配置的空閑長度檢測,支持1, 2, 4, 8, 16, 32, 64 或128 空閑字符
- 可選的發送器輸出和接收器輸入極性
- 硬件流控制支持RTS(request to send)和CTS(clear to send)信號
- 可選的4 歸零變換(return-to-zero-inverted, RZI)格式,可編程脈寬
- 獨立的FIFO 收發結構:
- 可獨立配置水印的收發請求
- 如果接收FIFO 不是空的,在可配置的閑置字符長度后,可以選擇讓接收器聲明請求
2. LPUART運行模式
S32K144運行模式 | 工作狀態 |
Run Mode | 正常工作 |
Stop Mode | 時鐘使能則保留功能(可產生中斷) |
Wait Mode | 等待模式(DOZEEN 位置1時) |
Debug Mode | 保留功能 |
3. LPUART 發送/接收器結構框圖
LPUART 發送器部分示意圖
LPUART 接收器部分示意圖
4. LPUART 寄存器映射
以下寄存器用來控制波特率,選擇LPUART 選項,報告LPUART 狀態,收發數據等。訪問有效內存映射之外的地址將產生總線錯誤。查詢寄存器請參考《S32K144 Reference Manual,Page -1092》
LPUART寄存器映射地址
二、 S32DS LPUART 例程簡介與應用
下面我們以S32DS 開發環境中自帶的例程LPUART_s32k144為例。
1. 例程導入
- 打開S32 Design Studio,點擊:“File”->“New”->“S32DS Project from Example”。
- 在彈出的窗口選取S32K144 目錄下的LPUART_s32k144 例程,點擊“Finish”。
- 點擊左上角“Build”按鈕,編譯例程。
- 注意: “\r”是回車,“\n”是換行,windows 系統中每行結尾應按<回車><換行>的順序,即“\r\n”。需要將例程主函數中所有的“\n\r”改為“\r\n”,否則串口工具顯示輸出字符串將不會換行,出現錯誤格式。
2. 例程簡介
- LPUART 例程介紹
此例程實現了一個簡單的UART 9600 波特率的數據從COM 端口傳到電腦。不包含FIFOs 中斷和DMA。在此評估板上可以使用OpenSDA(micro USB),板上UART 信號可以通過USB 接口傳輸。通過串口調試工具(例如安信可串口調試助手)可以發送并查看接收到的信息。
- 例程框圖
3. 例程設計思路
- 初始化系統晶振(SOSC)為8MHz,系統時鐘為80MHz,RUN 模式80MHz
- 禁止看門狗
- 初始化端口引腳:
- PORT C模塊時鐘使能
- PTC6,PTC7:配置為LPUART_RX,LPUART_TX
- 初始化LPUART1:
- 使能時鐘源為SOSC_DIV2_CLK
- 配置波特率:9600 波特,1 個停止位,8 個字符位
- 不使用終端,DMA 或匹配特征
- 配置LPUART1 控制:使能發送器,接收器,無極性,8 位字符
- 發送兩個字符串:
- 每個字符串發送的判斷:如果發送數據準備狀態位置1,將字符寫入數據寄存器
- 回傳收到的字符:
- 發送提示字符'>'
- 等到RDRF 標志位被置1,然后讀取字符
- 發送回讀取到的字符
三、 例程效果演示
- 我們使用S32K144 EVB (LQFP-100)評估板連接電腦,接線方式如圖。OpenSDA(micro USB)串口通信。
- 注意哪個COM 端口是OpenSDA,例如:COM4。注:串口號可在“計算機管理”->“設備管理器”->“端口”中查看。
- 打開串口通信工具,根據例程設置“串口號:COM4”“波特率:9600”,點擊打開串口。
- 點擊“Debug”按鈕。進入例程Debug頁面。
- 點擊運行程序
- 按鈕,在終端模擬器中“發送”中輸入任意單個字符,觀察接受窗口數據內容。S32K144 EVB開發板接收到輸入的單個字符并回傳。
四、 參考文獻
[1] S32K144 Reference Manual.pdf,NXP
[2] S32K1xx Series Cookbook.pdf,NXP
[3] S32K1xx Series Reference Manual.pdf,NXP
[4] S32K144_IO_Signal_Description_Input_Multiplexing,NXP
[5] PS32K144HFT0VLLT-datasheet.pdf,NXP
-
mcu
+關注
關注
146文章
17123瀏覽量
350992 -
NXP
+關注
關注
60文章
1278瀏覽量
184048 -
恩智浦
+關注
關注
14文章
5857瀏覽量
107319 -
S32k144
+關注
關注
1文章
9瀏覽量
1894
發布評論請先 登錄
相關推薦
評論