EC :UART

UART Module

UART (Universal Asynchronous Receiver-Transmitter) 主要是利用RS232的串列傳輸,經由Tx/Rx把資料傳送給Remote System或接收從Remote System傳送的資料。所以設定和系統相的的傳輸封包為格式為EC的主要工作。

一般UART的應用是在工廠模式,經由Remote System的指令來查詢系統是否出問題或做出廠前的檢測,或者是出廠後出問題,回廠維修時,把系統的狀態傳給維修人員,讓機器在出問題時,可以在最短的時間找出問題,並把它修好。 

UART的方塊圖

  1. Baud Rate Generator – 設定UART的傳輸的封包格式
  2. Transmitter – 傳送到Remote System的緩衝區
  3. Receiver – 接收Remote System的緩衝區

UART Transmitter 緩衝器

Transmit Data Buffer (UTBUF) - Hold the data byte to be tramitteed.

UART Receiver 緩衝器

Receive Data Buffer (URBUF) - Holds the received data byte. 


Baud Rate Generator – 設定RS-232的封包格式
  • UFRS
    • PEN B[6]  – 是否設定同位元。0 – Disable 1- Enable
    • PSEL B[5:4]  – 設定同位元。0x00 – 奇同位 ;0x01 – 偶同位。
    • STP B[2]  – 停止位元的數目。0 – 1個停止位元 ;1 – 2 個停止位元。
    • CHAR B[1:0]  – 資料位元的數目。0x00 – 8個位元資料 ;0x01 – 7個位元資料;0x10 – 9個位元資料。

  • URAUD/UPSR
    • Baud rate = Core Clock / ( 16 * UDIV * UPSC )
    • UDIV (Baud Rate Divisor)
    • UPSC (Baud Rate Prescaler)
    • UPSC對應的除頻值如下表:
    • 建議的Baud Rate的設定數值

Core Clock

Baud Rate

DIV

UPSC

Real baud rate

Error %

20MHz

19200

5

13

19230.769

0.16    




留言

這個網誌中的熱門文章

EC 所需知識 - SMBUS

EC 所需知識 - KBC

EC 所需知識 - LPC