【产品应用】MD9360四路CANFD应用实例

企业   2024-08-07 11:36   广东  

随着通信技术的进步和总线技术的广泛应用,对总线带宽和传输速率提出了更高的要求。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以上,本文只讨论双向收发的情况。


MD9360核心板

* 长按识别,复制链接至淘宝app打开。如有问题或想加入技术交流群可以咨询小致微信:zlgmcu-888。




ZLG官方旗舰店

广州致远电子

官方企业店

ZLG旗舰店

ZLG京东自营

旗舰店


更多往期文章,请点击“ 阅读原文 ”。

ZLG致远电子
ZLG官方账号,一个汇聚500名工程师的研发测试分享平台,为您提供电子世界领先的产品技术与行业解决方案。
 最新文章