1.1 簡介
HD-AM335X-IOT評估板采用TI AM3352處理器, 800MHz主頻,集成6路UART ( 提供RS-485驅動 ),支持GPS、GPRS、傳感器、采集模塊等功能擴展。2路CAN總線接口,實現車輛、工業現場控制數據的可靠傳輸。1路百兆網接口、1路千兆網接口,滿足電網、軍工等特殊環境內外網隔離與雙網冗余的應用需求,同時可通過光纖交換機實現數據高速上傳。

1.2 串口簡介
AM335x共6路原生串口,所有原生串口的相關信息如表1.1所示。
表1.1 串口系統信息

/proc/tty/driver/目錄內的各個文件是Linux系統記錄串口各類事件的接口文件,內部記錄該驅動的基本信息,如中斷號、發送字節數、接收字節數、異常狀態觸發次數等,用戶根據針對這些信息可反向分析異常原因,從而確認問題解決思路,文件內容如圖1.1所示。

圖1.1 OMAP_SERIAL文件內容
所謂Linux驅動,實際是對硬件寄存器的讀寫操作封裝,將難以理解的硬件操作封裝成統一的便于管理的接口函數。AM335x的串口狀態寄存器如下所示。

RXFIFOSTS:接收緩沖區狀態位;
TXSRE:記錄發送保持和移位寄存器是否為空;
TXFIFOE:記錄發送保持寄存器是否為空;
RXBI:記錄接收緩沖區是否有Break觸發;
RXFE:記錄接收緩沖區是否有幀錯誤;
RXPE:記錄接收緩沖區是否有奇偶校驗錯誤;
RXOE:記錄接收緩沖區是否有溢出錯誤;
RXFIFOE:記錄接收緩沖區是否有數據;
AM335x的原生串口驅動為kernel-source/drivers/tty/serial/omap-serial.c,驅動代碼內通過查找UART模塊的LSR(Uart Line Status)寄存器,將所有狀態信息記錄在up->port.icount內,如圖 1.2所示。例如rx記錄接收字節數,tx記錄發送字節數,break記錄UART_LSR_BI位觸發次數,parity記錄奇偶校驗錯誤,frame記錄幀錯誤觸發次數,overrun記錄緩沖區溢出錯誤,等。然后系統把這些錯誤計數反饋到對應硬件平臺的/proc/tty/driver/目錄內對應的驅動文件上。

圖 1.2 串口狀態記錄接口
在現場使用環境下,當出現串口報文異常時,有經驗的工程師可直接通過此文件分析各類錯誤。常見的錯誤關系與應對方法如下所示。
?

-
評估板
+關注
關注
1文章
743瀏覽量
30065 -
AM335x
+關注
關注
1文章
95瀏覽量
25522
發布評論請先 登錄
am335x開發板能否支持Vxworks操作系統的移植?
用am335x芯片把16bit的rgb怎么通過SN65LVDS93A這個芯片轉化為lvds接口的?
AM335x和AMIC110 Sitara?處理器技術參考手冊

am335x evm板音頻播放正常,但是無法錄音,怎么解決?
AM335x接TLV320AIC3104然后接外置揚聲器,播放歌曲時沒有聲音輸出是怎么回事?
適用于AM335x TRF7970A的neard(Linux NFC)構建說明

TLV320DAC3100音頻播放偶爾出一聲比正常聲音響的聲音是怎么回事?
AM335x和AM43xx Sitara處理器USB布局指南

GPMC并口多通道AD采集案例,基于TI AM62x四核處理器平臺!

評論