随着通信技术的进步和总线技术的广泛应用,对总线带宽和传输速率提出了更高的要求。MD9360-T核心板提供四路CANFD,让你的数据传输更快速、更可靠。
MD9360-EV-Board评估板(如图 1所示)是致远电子精心推出的集工控与评估于一身的评估底板。该评估底板可选搭配MD9360-T系列核心板,根据核心板的选型提供丰富的外围接口做评估和扩展使用,方便灵活。该评估底板提供四路CANFD接口。在实际使用过程中,可以满足汽车工业、工业自动化、能源管理等领域应用需求。
图1 MD9360-EV-Board评估板MD9360-EV-Board的4路CANFD位于IO扩展接口中,接口采用2.54间距的2*20P双排母座或双排针,如图 2所示。接口引脚定义如表 1所示。
图2 IO扩展接口表1 IO扩展接口引脚定义
为了测试MD9360-EV-Board的四路CANFD同时收发的性能,将CANFD0和CANFD1对接、CANFD2和CANFD3对接,然后同时进行收发测试(CANFD0向CANFD1发送数据的同时,CANFD1也向CANFD0发送数据。CANFD2和CANFD3也是如此),先使用启动脚本(如程序清单 1所示)启动四路CANFD。
程序清单 1 启动脚本can_init.sh
#!/bin/baship link set can0 downip link set can1 downip link set can2 downip link set can3 downip link set can0 type can bitrate 1000000 dbitrate 5000000 fd onip link set can1 type can bitrate 1000000 dbitrate 5000000 fd onip link set can2 type can bitrate 1000000 dbitrate 5000000 fd onip link set can3 type can bitrate 1000000 dbitrate 5000000 fd onip link set can0 upip link set can1 upip link set can2 upip link set can3 up
然后,使用测试脚本can_send.sh(如程序清单 2所示)进行测试。
程序清单 2 测试脚本can_send.sh
#!/bin/bashFRAMES=204800echo ${FRAMES} > /sys/class/net/can0/tx_queue_lenecho ${FRAMES} > /sys/class/net/can1/tx_queue_lenecho ${FRAMES} > /sys/class/net/can2/tx_queue_lenecho ${FRAMES} > /sys/class/net/can3/tx_queue_lensleep 1candump can0 -n ${FRAMES} -t d > /dev/null &candump can1 -n ${FRAMES} -t d > /dev/null &candump can2 -n ${FRAMES} -t d > /dev/null &candump can3 -n ${FRAMES} -t d > /dev/null &sleep 1timestamp_old=$(date +%s)cangen can0 -g 0 -f -L 64 -b -n ${FRAMES} &cangen can1 -g 0 -f -L 64 -b -n ${FRAMES} &cangen can2 -g 0 -f -L 64 -b -n ${FRAMES} &cangen can3 -g 0 -f -L 64 -b -n ${FRAMES} &while truedo if [[ `ps -ef | grep cangen | grep -v grep | wc -l` = 0 ]] ; then sleep 1 if [[ `ps -ef | grep candump | grep -v grep | wc -l` = 0 ]] ; then echo "测试结束,正常无丢帧。" timestamp_new=$(date +%s) tmp=$((timestamp_new - timestamp_old)) speed=$((FRAMES / tmp)) echo "四路canfd同时双向发送、接收64字节定长随机数据帧,速率为: ${speed} frame/s" break fi echo "测试结束,异常有丢帧!" break fi sleep 1done
测试结果如图 3所示。
图3 CANFD测试结果
以上结果3303 frame/s,是四路CANFD同时双向收发64字节数据帧时的速率,如果是单向收发速率将达到5000 frame/s以上,本文只讨论双向收发的情况。
全部0条评论
快来发表一下你的评论吧 !