2 axi_uart_rw案例
案例功能:PS端通過(guò)AXI4-Lite總線控制PL端AXI UARTLite IP核進(jìn)行數(shù)據(jù)收發(fā),以此來(lái)演示評(píng)估板上RS485、RS422和RS232的串口收發(fā)功能。
圖 15
圖 16
圖 17
工程管腳約束可查看工程文件"constrains"目錄下的.adc約束文件。
2.1 TD工程說(shuō)明
工程在PL端上使用AXI UARTLite IP核,ARM Processor System IP核(PS端)通過(guò)AXI4-Lite總線控制PL端AXI UARTLite IP核進(jìn)行數(shù)據(jù)收發(fā),Design Integrator工程和地址分配如下:
圖 18
圖 19
2.2 IP核簡(jiǎn)介
IP核開(kāi)發(fā)相關(guān)資料可查閱產(chǎn)品資料“6-開(kāi)發(fā)參考資料Anlogic官方參考文檔”目錄下文檔,IP核配置參數(shù)如下。
(1)ARM Processor System。
ARM Processor System IP核心配置和FSBL工程基本一致,僅修改GPIO PL(Width)的值為4,并從頂層引出,綁定管腳D15、B19、C19、D18,用于流控兩個(gè)RS485及一個(gè)RS422。其他詳細(xì)配置可參考位于產(chǎn)品資料“4-軟件資料LinuxFSBLfsbl-[版本號(hào)]”目錄下的FSBL工程。
圖 20
(2)AXI UARTLite。
本案例工程使用了4個(gè)AXI UARTLite IP核,4個(gè)AXI UARTLite IP核的配置均相同。
圖 21
(3)AXIProtocol Converter。
圖 22
(4)AXI Matrix。
圖 23
圖 24
圖 25
2.3 案例測(cè)試
將本案例的動(dòng)態(tài)設(shè)備樹(shù)鏡像文件pl.dtbo和PL端.bit鏡像文件拷貝至"/lib/firmware/"目錄下(若該目錄不存在,請(qǐng)新建),并將PL端可執(zhí)行文件重命名為system_wrapper.bit,然后執(zhí)行如下命令加載PL端鏡像。
Target# mkdir -p /lib/firmware
Target# cp pl.dtbo /lib/firmware/
Target# cp axi_uart_rw_dr1m90.bit /lib/firmware/system_wrapper.bit
Target# mount -t configfs none /sys/kernel/config
Target# mkdir /sys/kernel/config/device-tree/overlays/full //創(chuàng)建full目錄,可根據(jù)實(shí)際情況修改
Target# echo pl.dtbo > /sys/kernel/config/device-tree/overlays/full/path //dtbo文件名稱(chēng)請(qǐng)根據(jù)實(shí)際情況修改
圖 26
(1)RS232測(cè)試
請(qǐng)通過(guò)RS232交叉串口母線、USB轉(zhuǎn)RS232公頭串口線,將評(píng)估板的RS232調(diào)試串口連接至PC機(jī)的USB接口,如下圖所示。
圖 27
執(zhí)行如下命令,調(diào)整RS232串口通信參數(shù)。
Target# stty -F /dev/ttySL0 115200 cs8 -cstopb -parenb -crtscts clocal raw -echo
圖 28
a)評(píng)估板接收
打開(kāi)設(shè)備管理器,本次測(cè)試中調(diào)試串口USB TO UART1端口號(hào)為COM13,RS232串口的端口號(hào)為COM16,如下圖所示。
圖 29
打開(kāi)調(diào)試串口終端,COM16波特率設(shè)為115200,8N1,無(wú)校驗(yàn)位。COM13波特率設(shè)為115200,8N1,無(wú)校驗(yàn)位,并建立串口連接。評(píng)估板調(diào)試串口終端執(zhí)行如下命令,評(píng)估板等待接收上位機(jī)發(fā)送的數(shù)據(jù)。
Target# cat /dev/ttySL0
圖 30
在RS232串口終端點(diǎn)擊"View -> Command (Chat) Window",選中并打開(kāi)"Command (Chat) Window"窗口。
圖 31
在窗口中輸入數(shù)據(jù),例如"Tronlong",再按回車(chē)鍵。
圖 32
評(píng)估板調(diào)試串口終端將會(huì)打印接收到的數(shù)據(jù)。
圖 33
b)評(píng)估板發(fā)送
執(zhí)行如下命令,評(píng)估板通過(guò)RS232串口發(fā)送數(shù)據(jù)至上位機(jī)。
Target# echo tronlong > /dev/ttySL0
圖 34
RS232串口終端將會(huì)打印接收到的數(shù)據(jù),如下圖所示。
圖 35
(2)RS485串口測(cè)試
使用RS232轉(zhuǎn)RS485模塊、USB轉(zhuǎn)RS232公頭串口線,將評(píng)估板RS485串口連接至PC機(jī)的USB接口,硬件連接如下圖所示。
RS232轉(zhuǎn)RS485模塊與評(píng)估板RS485串口硬件連接關(guān)系如下表所示。

圖 36
本章節(jié)以RS485串口(設(shè)備節(jié)點(diǎn)為:ttySL2)為例進(jìn)行演示。如需測(cè)試RS485另一個(gè)串口,請(qǐng)將設(shè)備節(jié)點(diǎn)修改為ttySL3。
執(zhí)行如下命令,調(diào)整RS485串口通信參數(shù)。
Target# stty -F /dev/ttySL2 115200 cs8 -cstopb -parenb -crtscts clocal raw -echo
圖 37
a)評(píng)估板接收
打開(kāi)設(shè)備管理器,本次測(cè)試中調(diào)試串口USB TO UART1端口號(hào)為COM13,RS485串口的端口號(hào)為COM16,如下圖所示。
圖 38
評(píng)估板調(diào)試串口終端執(zhí)行如下命令,評(píng)估板等待接收上位機(jī)發(fā)送的數(shù)據(jù)。
Target# cat /dev/ttySL2
圖 39
在RS485串口終端點(diǎn)擊"View -> Command (Chat) Window",選中并打開(kāi)"Command (Chat) Window"窗口。
圖 40
在窗口中輸入數(shù)據(jù),例如"Tronlong",再按回車(chē)鍵。
圖 41
評(píng)估板調(diào)試串口終端將會(huì)打印接收到的數(shù)據(jù)。
圖?42
b)評(píng)估板發(fā)送
執(zhí)行如下命令,評(píng)估板通過(guò)RS485串口發(fā)送數(shù)據(jù)至上位機(jī)。
Target# echo tronlong > /dev/ttySL2
圖 43
RS485 UART3串口終端將會(huì)打印接收到的數(shù)據(jù),如下圖所示。
圖 44
(3)RS422串口測(cè)試
使用RS232轉(zhuǎn)RS485/RS422模塊、USB轉(zhuǎn)RS232公頭串口線,將評(píng)估板RS422串口連接至PC機(jī)的USB接口,硬件連接如下圖所示。
RS232轉(zhuǎn)RS485/RS422模塊與評(píng)估板RS422串口硬件連接關(guān)系如下表所示。

圖 45
本章節(jié)以RS422串口(設(shè)備節(jié)點(diǎn)為:ttySL1)為例進(jìn)行演示。執(zhí)行如下命令,配置RS422端口的RE_n管腳為低電平。
Target# echo 421 > /sys/class/gpio/export
Target# echo out > /sys/class/gpio/gpio421/direction
Target# echo 0 > /sys/class/gpio/gpio421/value
圖 46
執(zhí)行如下命令,配置RS422端口的DE管腳為高電平。
Target# echo 420 > /sys/class/gpio/export
Target# echo out > /sys/class/gpio/gpio420/direction
Target# echo 1 > /sys/class/gpio/gpio420/value
圖 47
執(zhí)行如下命令,調(diào)整RS422串口通信參數(shù)。
Target# stty -F /dev/ttySL1 115200 cs8 -cstopb -parenb -crtscts clocal raw -echo
圖 48
a)評(píng)估板接收
打開(kāi)設(shè)備管理器,本次測(cè)試中調(diào)試串口USB TO UART1端口號(hào)為COM13,RS422串口的端口號(hào)為COM16,如下圖所示。
圖 49
評(píng)估板調(diào)試串口終端執(zhí)行如下命令,評(píng)估板等待接收上位機(jī)發(fā)送的數(shù)據(jù)。
Target# cat /dev/ttySL1
圖 50
在RS422串口終端點(diǎn)擊"View -> Command (Chat) Window",選中并打開(kāi)"Command (Chat) Window"窗口。
圖 51
在窗口中輸入數(shù)據(jù),例如"Tronlong",再按回車(chē)鍵。
圖 52
評(píng)估板調(diào)試串口終端將會(huì)打印接收到的數(shù)據(jù)。
圖?53
b)評(píng)估板發(fā)送
執(zhí)行如下命令,評(píng)估板通過(guò)RS422串口發(fā)送數(shù)據(jù)至上位機(jī)。
Target# echo tronlong > /dev/ttySL1
圖 54
RS422串口終端將會(huì)打印接收到的數(shù)據(jù),如下圖所示。
圖 55
由于篇幅過(guò)長(zhǎng)等原因,部分內(nèi)容均不逐一展示,如需獲取完整版詳細(xì)資料,請(qǐng)關(guān)注創(chuàng)龍科技微信公眾號(hào)或官網(wǎng),或者評(píng)論區(qū)留言,感謝您的支持!
審核編輯 黃宇
-
核心板
+關(guān)注
關(guān)注
6文章
1425瀏覽量
32156
發(fā)布評(píng)論請(qǐng)先 登錄
ZYNQ PS + PL異構(gòu)多核案例開(kāi)發(fā)手冊(cè)之1axi_gpio_led_demo案例
DR1平臺(tái)Linux應(yīng)用開(kāi)發(fā)指南:含GDB調(diào)試、Python及MQTT實(shí)戰(zhàn)
FM20S用戶手冊(cè)-PS + PL異構(gòu)多核案例開(kāi)發(fā)手冊(cè)
復(fù)旦微PS+PL異構(gòu)多核開(kāi)發(fā)案例分享,基于FMQL20SM國(guó)產(chǎn)處理器平臺(tái)
米爾瑞芯微多核異構(gòu)低功耗RK3506核心板重磅發(fā)布
ZYNQ PS + PL異構(gòu)多核案例開(kāi)發(fā)手冊(cè)之a(chǎn)xi_timer_pwm_demo案例
Zynq-7000系列打得火熱,異構(gòu)多核技術(shù)需求怎么解決
【資料分享】Zynq-7010/7020工業(yè)核心板規(guī)格書(shū)(雙核ARM Cortex-A9 + FPGA,主頻766MHz)
【資料分享】Xilinx Zynq-7010/7020工業(yè)核心板規(guī)格書(shū)(雙核ARM Cortex-A9 + FPGA,主頻766MHz)
創(chuàng)龍科技Zynq-7010/7020異構(gòu)多核SoC工業(yè)級(jí)核心板-性能及參數(shù)資料
基于Xilinx Zynq-7010/20系列——PS+PL異構(gòu)多核案例開(kāi)發(fā)手冊(cè)
基于全志T113-i多核異構(gòu)處理器的全國(guó)產(chǎn)嵌入式核心板簡(jiǎn)介
DR1 評(píng)估板 PL 端 FPGA 開(kāi)發(fā)完全指南:基礎(chǔ)案例與 ADC 采集模塊詳解(一)
DR1 系列核心板 PS+PL 異構(gòu)多核實(shí)戰(zhàn)案例手冊(cè)(一)
DR1 系列評(píng)估板 PS 端裸機(jī)與 FreeRTOS 開(kāi)發(fā)案例手冊(cè)
DR1 系列核心板 PS+PL 異構(gòu)多核實(shí)戰(zhàn)案例手冊(cè)(二)
評(píng)論