隨著通信技術(shù)的進(jìn)步和總線技術(shù)的廣泛應(yīng)用,對(duì)總線帶寬和傳輸速率提出了更高的要求。MD9360-T核心板提供四路CANFD,讓你的數(shù)據(jù)傳輸更快速、更可靠。
MD9360-EV-Board評(píng)估板(如圖 1所示)是致遠(yuǎn)電子精心推出的集工控與評(píng)估于一身的評(píng)估底板。該評(píng)估底板可選搭配MD9360-T系列核心板,根據(jù)核心板的選型提供豐富的外圍接口做評(píng)估和擴(kuò)展使用,方便靈活。該評(píng)估底板提供四路CANFD接口。在實(shí)際使用過程中,可以滿足汽車工業(yè)、?工業(yè)自動(dòng)化、?能源管理等領(lǐng)域應(yīng)用需求。
圖1 MD9360-EV-Board評(píng)估板MD9360-EV-Board的4路CANFD位于IO擴(kuò)展接口中,接口采用2.54間距的2*20P雙排母座或雙排針,如圖 2所示。接口引腳定義如表 1所示。
圖2 IO擴(kuò)展接口表1IO擴(kuò)展接口引腳定義
為了測(cè)試MD9360-EV-Board的四路CANFD同時(shí)收發(fā)的性能,將CANFD0和CANFD1對(duì)接、CANFD2和CANFD3對(duì)接,然后同時(shí)進(jìn)行收發(fā)測(cè)試(CANFD0向CANFD1發(fā)送數(shù)據(jù)的同時(shí),CANFD1也向CANFD0發(fā)送數(shù)據(jù)。CANFD2和CANFD3也是如此),先使用啟動(dòng)腳本(如程序清單 1所示)啟動(dòng)四路CANFD。
程序清單1啟動(dòng)腳本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
然后,使用測(cè)試腳本can_send.sh(如程序清單 2所示)進(jìn)行測(cè)試。
程序清單2測(cè)試腳本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 "測(cè)試結(jié)束,正常無丟幀。" timestamp_new=$(date +%s) tmp=$((timestamp_new - timestamp_old)) speed=$((FRAMES / tmp)) echo "四路canfd同時(shí)雙向發(fā)送、接收64字節(jié)定長(zhǎng)隨機(jī)數(shù)據(jù)幀,速率為: ${speed} frame/s" break fi echo "測(cè)試結(jié)束,異常有丟幀!" break fi sleep 1done
測(cè)試結(jié)果如圖 3所示。
圖3 CANFD測(cè)試結(jié)果
以上結(jié)果3303 frame/s,是四路CANFD同時(shí)雙向收發(fā)64字節(jié)數(shù)據(jù)幀時(shí)的速率,如果是單向收發(fā)速率將達(dá)到5000 frame/s以上,本文只討論雙向收發(fā)的情況。
-
評(píng)估板
+關(guān)注
關(guān)注
1文章
544瀏覽量
29316 -
致遠(yuǎn)電子
+關(guān)注
關(guān)注
13文章
406瀏覽量
31308 -
CANFD
+關(guān)注
關(guān)注
0文章
58瀏覽量
4945
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論