規 格: |
型 號:CIU32M010、CIU32M030 |
數 量: |
品 牌: |
包 裝: |
價 格:面議 |
1. 通用異步收發器(UARTx) 1.1. 模塊介紹 CIU32M010、CIU32M030 集成的通用異步收發器(UART)提供了一種靈活的方法與使用工業標準NRZ 異步串行數據格式的外部設備之間進行全雙工數據交換。 1.2. 功能特點 • 支持 8bit 數據和 9bit 數據模式 • 支持 18bit 波特率寄存器靈活配置 • 支持全雙工異步通信、單工發送、單工接收、單線通信模式 • 支持硬件奇偶校驗可選 • 具有 4 幀數據的接收緩存,1 幀數據的發送緩沖 • 硬件檢測接收超時,超時長度可以配置,配置范圍:1~16384 比特率時間 • 支持幀出錯檢測 • 可選 STOP 位為 1 位或 2 位 1.3. 功能說明 1.3.1. 波特率生成功能 波特率計算公式 = SYSCLK/(UART_BAUD+1) (UART_BAUD>=6) UART 模塊的工作時鐘為系統時鐘,因此,應當根據當前系統時鐘頻率以及需要的波特率計算 UART_BAUD 的配置值。一旦系統時鐘頻率改變,應當相應修改波特率配置。 1.3.2. UART 發送器 發送器可發送 8/9bit 數據,由寄存器 UART_CON 中的 BIT9_EN 位的配置值決定。軟件向寄存器 UART_DATA 寫入數據時,發送器將通過 IO 管腳 UART_TX 發送數據幀,UART_TX 的極性可以通過寄存 器 UART_CON 中的 TX_INV 位來配置。 發送數據流程:發射器輸出管腳(UART_TX)閑置狀態時,默認為高電平。模塊使能后,軟件向寄存 器 UART_DATA 寫入要發送的數據啟動發送。發送器有一幀的發送緩沖,寄存器 UART_STA 中 TX_BUF_EMPTY 為高電平時,軟件可向寄存器 UART_DATA 再寫入一幀數據,它將被存入發送緩沖區, TX_BUF_EMPTY 會變零,在當前幀發送完成時,會接著發送緩沖區中的數據。 數據發送完成且緩沖區為空時,寄存器 UART_STA 中 TC_PEND 位置 1,此時如果寄存器 UART_CON 中 TCIE 位使能,則產生中斷。 發送器發送序列:起始位->數據位(LSB)->停止位 1.3.3. UART 接收器 接收器可接收 8/9bit 數據,由寄存器 UART_CON 中的 BIT9_EN 位的配置值決定。 數據字符由邏輯 0 的起始位、8/9bit 數據位,奇偶校驗位和邏輯 1 的停止位組成。 接收器有 4 個 8/9bit 的數據緩沖。在緩沖區接收到 4 個數據之后,且又有一幀數據接收完成時,寄存器 UART_STA 中 RX_BUF_OV 會置 1,新的數據將不會存儲在數據緩沖區中,即新數據丟失。 在接收一個數據幀的過程中可使能奇偶錯誤檢測、幀錯誤檢測和超時檢測,通過配置寄存器 UART_CON 打開相應的錯誤檢測使能位和相應的錯誤中斷使能位。 幀錯誤檢測機制是指在 stop 位檢測到 IO 引腳 UART_RX 是低電平時,為幀錯誤。 超時檢測機制是指在接收到 1byte 之后,檢測是否超過了設置的時間,如果沒有則繼續接收數據,超時時間可以通過寄存器 UART_CON 中 TO_BIT_LEN 進行配置。接收緩沖區有數據,即寄存器 UART_STA 中的 RX_BUF_NOT_EMPTY=1 時,軟件可以通過讀 UART_DATA 寄存器的方式來獲取收到的數據。 1.4 時鐘與復位 1.4.1. 時鐘介紹 該模塊時鐘來源于系統時鐘,可通過配置系統寄存中 CLKCON2 來使能時鐘。 1.4.2. 復位介紹 該模塊的復位源有兩個,分別是系統復位和軟件復位,軟件復位可通過配置系統寄存器觸發。
|