基于测试板卡:创龙科技TLIMX6U-EVM是一款基于NXP i.MX 6ULL的ARM Cortex-A7高性能低功耗处理器设计的评估板,由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。
评估板接口资源丰富,引出双路网口、双路RS485、双路CAN、三路USB、多路DI/DO、LCD等接口,板载WIFI、Bluetooth模块,支持LoRa、NB-IoT、Zigbee、4G模块,可选配外壳直接应用于工业现场,方便用户快速进行产品方案评估与技术预研。
NAND FLASH读写测试
进入评估板文件系统,执行如下命令查看NAND FLASH分区,本次对MTD5分区进行读写测试。
备注:测试会将分区内容擦除,请做好数据备份。如NAND FLASH已固化系统,测试完成后需重新固化系统。
Target# cat /proc/mtd
Target# flash_erase /dev/mtd5 0 0

- NAND FLASH写速度测试
进入评估板系统,执行如下命令对NAND FLASH设备进行写速度测试。
Target# time dd if=/dev/zero of=/dev/mtd5 bs=1024K count=238

测试写入238MByte数据至NAND FLASH的MTD5分区,可看到本次测试的NAND FLASH写速度约为:238MByte/94.783s = 2.51MB/s。
- NAND FLASH读速度测试
重启评估板,进入评估板文件系统,执行如下命令对NAND FLASH进行读速度测试。
Target# time dd if=/dev/mtd5 of=/dev/null bs=1024K

测试从NAND FLASH的MTD5分区读取238MByte数据,可看到本次测试的NAND FLASH读速度约为:238MByte/44.064s = 5.40MB/s。
Micro SD接口读写测试
本小节使用SanDisk品牌、128GByte容量的Micro SD卡来测试评估板Micro SD接口性能。请参考《Linux系统启动卡制作及系统固化》文档将其制作成Linux系统启动卡再进行测试。不同的Micro SD卡以及不同的测试方法,对Micro SD接口测试结果将造成一定差异。
将Linux系统启动卡插入评估板Micro SD卡槽,将启动方式选择拨码开关拨为011000(1~6),此档位为NAND FLASH启动模式。评估板上电,系统将从NAND FLASH启动。进入评估板文件系统执行如下命令查看Micro SD卡挂载信息。
Target# df -h

- Micro SD接口写速度测试
进入评估板文件系统,执行如下命令测试Micro SD接口写速度。
Target# echo 3 > /proc/sys/vm/drop_caches
Target# time dd if=/dev/zero of=/run/media/mmcblk0p2/test bs=1024K count=200 conv=fsync
time命令有计时作用,dd用于复制,从if(input file)文件读出,写到of(output file)指定的文件,bs是每次写块的大小,count是读写块的数量。
"if=/dev/zero"不产生IO,即不断输出数据,可用来测试纯写速度。

此处一共写200MByte测试数据至Micro SD卡的test文件,可看到本次测试的Micro SD接口写速度约为:200MB/12.310s = 16.25MB/s。
- Micro SD接口读速度测试
进入评估板文件系统,执行如下命令测试Micro SD接口读速度。
Target# echo 3 > /proc/sys/vm/drop_caches
Target# time dd if=/run/media/mmcblk0p2/test of=/dev/null bs=1024K
"of=/dev/null"不产生IO,即不断接收数据,可用来测试纯读速度。

此处从test文件一共读出200MByte的数据,可看到本次测试的Micro SD接口读速度约为:200MB/10.589s = 18.89MB/s。
串口测试
RS232 UART2串口
使用RS232交叉串口母母线、USB转RS232公头串口线,将评估板的RS232 UART2串口连接至PC机的USB接口,如下图所示。

打开设备管理器,本次测试中调试串口USB TO UART1端口号为COM19,RS232 UART2串口的端口号为COM4,如下图所示。

打开串口调试终端,COM19波特率设为115200,COM4波特率设为921600,8N1,无校验位,并建立串口连接,如下图所示。

进入评估板文件系统,在调试串口终端执行如下命令,向RS232 UART2串口发送数据,RS232 UART2串口调试终端将显示接收到的数据。
Target# stty -F /dev/ttymxc1 ispeed 921600 ospeed 921600 cs8 //设置RS232 UART2串口波特率
Target# echo tronlong > /dev/ttymxc1 //向RS232 UART2串口发送数据


在调试串口终端执行如下命令,等待接收数据。然后在RS232 UART2串口输入数据并按下回车键发送,调试串口终端将显示接收到的数据。
Target# cat /dev/ttymxc1 //等待接收RS232 UART2串口数据


RS485 UART3/RS485 UART4串口
使用RS232转RS485模块、USB转RS232公头串口线,将评估板RS485 UART3或RS485 UART4串口连接至PC机的USB接口,如下图所示。
RS232转RS485模块与评估板RS485串口连接方法如下:
- RS232转RS485模块485+端子,连接评估板RS485串口A端子。
- RS232转RS485模块485-端子,连接评估板RS485串口B端子。
- RS232转RS485模块GND端子,连接评估板RS485串口GNDI端子。

本次测试以RS485 UART3串口(设备节点为:ttymxc2)为例进行演示。如需测试RS485 UART4串口,请将设备节点修改为ttymxc3。
打开设备管理器,本次测试中调试串口USB TO UART1端口号为COM19,RS485 UART3串口的端口号为COM4,如下图所示。

打开串口调试终端,COM19、COM4波特率设为115200,8N1,无校验位,并建立串口连接,如下图所示。

进入评估板文件系统,在调试串口终端执行如下命令,与RS485 UART3串口互发数据。RS485 UART3串口测试步骤、现象与RS232 UART2串口类似。
Target# stty -F /dev/ttymxc2 ispeed 115200 ospeed 115200 cs8 //设置波特率
Target# echo tronlong > /dev/ttymxc2 //向RS485 UART3串口发送数据


在调试串口终端执行如下命令,等待接收数据。然后在RS458 UART3串口输入数据并按下回车键发送,调试串口终端将显示接收到的数据,按"Ctrl + C"可终止测试命令。
Target# cat /dev/ttymxc2 //等待接收RS485 UART3串口数据


CAN接口测试
请先按照调试工具安装文档安装CAN接口调试工具ECAN Tools。使用USB转CAN模块连接评估板CAN1或CAN2接口至PC机USB接口,如下图所示。

本次测试以CAN1接口(设备节点为:can0)进行演示。如需测试CAN2接口,请将设备节点修改为can1。
进入评估板文件系统,执行如下命令配置can0比特率为1MHz,并启动。
Target# canconfig can0 stop
Target# canconfig can0 bitrate 1000000
Target# canconfig can0 start

执行如下命令,接收PC端ECAN Tools发送的数据。
Target# candump can0

在PC端打开ECANTools软件,选择设备类型,然后点击“打开设备”。

等待软件检测到设备后,波特率选择1000K,点击“确定”进入软件操作界面,如下图所示。

在如下数据发送界面中,点击“发送”开始发送数据。

依次向接收端发送两组数据,在ECAN Tools及串口调试终端可看到数据,如下图所示。


评估板文件系统执行如下命令,发送数据至PC端ECANTools软件,ECANTools软件收到数据说明功能正常。
Target# cansend can0 --identifier=0x123 0x00 0x11 0x22 0x44 0x88 0x55 0xaa 0xff

