以Atlas 500 A2 智能小站的UART3调试作为参考,采用两台Atlas 500 A2 智能小站的对接测试UART3串口收发功能。具体请参见《Atlas 500 A2 智能小站 用户指南》的“RS485全双工接口使用指导”或“RS485半双工接口使用指导”章节。
在Atlas 500 A2 智能小站(A设备)设备上执行如下命令,通过uart3发送数据包。
echo test > /dev/ttyAMA2
在Atlas 500 A2 智能小站(B设备)设备上执行如下命令,通过uart3接收数据包。
cat /dev/ttyAMA2
test
Atlas 500 A2 智能小站的RS485半双工接口调试中,会使用到Atlas 500 A2 智能小站“/usr/local/scripts”路径下自带的“485_work_mode_switch.sh”文件。Atlas 200I A2 加速模块环境需要通过如下操作增加“485_work_mode_switch.sh”文件。
cd /usr/local/scripts
vim 485_work_mode_switch.sh
添加如下代码,完成后,按“Esc”键,再执行:wq!保存修改,并按“Enter”键退出。
#! /bin/bash # set 485 work mode switch current_time=`date +"%b %-d %H:%M:%S"` if [ "$1" == "send" ];then gpio_operate set_direction 4 19 1 > /dev/null gpio_operate set_value 4 19 1 > /dev/null if [ $? -eq 0 ];then echo "Setting to send mode succeeded." echo "$current_time Euler 485_work_mode_switch.sh[8]: Setting to send mode succeeded." >> /var/log/messages else echo "Setting to send mode failed." echo "$current_time Euler 485_work_mode_switch.sh[11]: Setting to send mode failed." >> /var/log/messages fi elif [ "$1" == "recv" ];then gpio_operate set_direction 4 19 1 > /dev/null gpio_operate set_value 4 19 0 > /dev/null if [ $? -eq 0 ];then echo "Setting to receive mode succeeded." echo "$current_time Euler 485_work_mode_switch.sh[18]: Setting to receive mode succeeded." >> /var/log/messages else echo "Setting to receive mode failed." echo "$current_time Euler 485_work_mode_switch.sh[21]: Setting to receive mode failed." >> /var/log/messages fi else echo "invalid parameter" fi
chmod u+x 485_work_mode_switch.sh