UART 使用
簡介
Face-RK3399 外置3個增強功能串口(UART)的功能,分別為UART1,UART2,RS485。每個UART都擁有256字節(jié)的FIFO緩沖區(qū),用于數據接收和發(fā)送。 其中:
UART1,UART2為TTL電平接口,RS485為RS485電平接口
UART1 UART2最高支持波特率691200。RS485受通訊媒介影響一般只支持115200以下。
每個子通道具備收/發(fā)獨立的256 BYTE FIFO,F(xiàn)IFO的中斷可按用戶需求進行編程觸發(fā)點
具備子串口接收FIFO超時中斷
支持起始位錯誤檢測
其中,RS485的端口可復用為韋根協(xié)議端口
設備端接口對應軟件上的節(jié)點分別為:
RS485:/dev/ttyS4 UART2:/dev/ttyS0 UART1:/dev/ttyS3
Face-RK3399開發(fā)板的串口接口圖如下:
RS485調試方法
DTS配置
文件kernel/arch/arm64/boot/dts/rockchip/rk3399.dtsi 有uart轉RS485相關節(jié)點的定義:
uart4: serial@ff370000 { compatible = “rockchip,rk3399-uart”, “snps,dw-apb-uart”; reg = 《0x0 0xff370000 0x0 0x100》; clocks = 《&pmucru SCLK_UART4_PMU》, 《&pmucru PCLK_UART4_PMU》; clock-names = “baudclk”, “apb_pclk”; interrupts = 《GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH 0》; reg-shift = 《2》; reg-io-width = 《4》; pinctrl-names = “default”; pinctrl-0 = 《&uart4_xfer》; status = “disabled”; };
可以看到,在kernel/arch/arm64/boot/dts/rockchip/rk3399-firefly-face.dtsi文件中使能該節(jié)點即可使用,如下:
&uart4 { - status = “disable”; + status = “okay”; };
連接硬件
將開發(fā)板RS485 的A、B、GND 引腳分別和主機串口適配器(USB轉485轉串口模塊)的 A、B、GND 引腳相連。
(1) 首先在PC端運行以下命令接收數據:
cat /dev/ttyUSB1
(2) 在設備端運行下列命令發(fā)送數據:
echo 1 》 /sys/devices/platform/wiegand-gpio/mode_switch //切換為RS485接口功能 echo firefly RS485 test.。. 》 /dev/ttyS4
然后在PC端的串口終端便可以看到與設備端相同的字符串 “Firefly RS485 test…”。
-
嵌入式主板
+關注
關注
7文章
6085瀏覽量
35295 -
可制造性設計
+關注
關注
10文章
2065瀏覽量
15529 -
Firefly
+關注
關注
2文章
538瀏覽量
7027 -
華秋DFM
+關注
關注
20文章
3494瀏覽量
4455
發(fā)布評論請先 登錄
相關推薦
評論