本文将分几个部分详细分享嵌入式初学者拿到开发板后需要做的一些基本测试,如系统启动、文件传输、LED、按钮、时钟设置、DDR读写、SATA等接口读写、串口等测试,有兴趣的话可以根据文章数查一下。
该测试板基于创龙科技TLT3-EVM,这是一款基于全志科技T3处理器设计的4核ARM Cortex-A7高性能低功耗国产评估板。每个核心主频高达1.2GHz。
评估板具有丰富的接口资源,包括双网口、双CAN、双USB、双RS485等通信接口,板载蓝牙、WIFI、4G(可选)模块,以及MIPI LCD、LVDS LCD、TFT LCD。CVBS OUT、CAMERA、LINE IN、H/P OUT等音视频多媒体接口,支持双屏差分显示,1080P@45fps H.264视频硬件编解码,支持SATA大容量存储接口。
本指导文件适用于开发环境:
Windows开发环境:Windows 7 64位、Windows 10 64位
Linux开发环境:Ubuntu18.04.4 64bit
虚拟机:VMware15.1.0
在进行本文档之前,请按照调试工具安装和Linux开发环境搭建相关文档,安装SecureCRT串口调试终端、VMware虚拟机等相关软件。
本文档主要提供评估板的硬件资源测试方法。如无特殊说明,默认使用USB TO UART0作为调试串口,使用Linux系统启动卡(Micro SD模式)启动系统,网络通过路由器与PC连接。
Linux系统启动卡对应的设备节点为mmcblk1,eMMC对应的设备节点为mmcblk0。
使用TTL转Micro USB模块将评估板的UART6(CON25)或UART7(CON27)串口连接到PC的USB接口,如下图所示。
本章使用UART6(CON25)串口(设备节点:ttyS6)进行演示。如果需要测试UART7(CON27)串口,请将设备节点更改为ttyS7。
图55
打开设备管理器。本次测试中,调试串口USB TO UART0端口号为COM9,UART6串口端口号为COM4,如下图所示。
图56
打开串口调试终端,将COM4和CON9的波特率设置为115200、8N1、无校验位,建立串口连接,如下图所示。
图57
发送测试
进入评估板文件系统,执行以下命令设置UART6串口。
Target# stty -F /dev/ttyS6 ispeed 115200 ospeed 115200 cs8 //设置串口波特率
目标# echo tronlong /dev/ttyS6
图58
图59
验收测试
执行以下命令,将调试串口的数据发送到UART6串口。 UART6串口对应的串口调试终端会显示接收到的数据。按“Ctrl + C”终止测试命令。
Target# cat /dev/ttyS6 //等待接收UART6串口数据
图60
图61
使用RS232交叉串口母头总线和USB转RS232公头串口线将评估板的RS232串口连接到PC机的USB接口,如下图所示。
图62
打开设备管理器。本次测试中,USB TO UART0调试串口的端口号为COM9,RS232 UART3串口的端口号为COM12,如下图所示。
图63
打开串口调试终端,将COM9和CON12的波特率设置为115200、8N1、无校验位,建立串口连接,如下图所示。
图64
发送测试
进入评估板文件系统,执行以下命令,将调试串口的数据发送到RS232 UART3串口。 RS232 UART3串口对应的串口调试终端会显示接收到的数据。
Target# stty -F /dev/ttyS3 ispeed 115200 ospeed 115200 cs8 //设置串口波特率
目标# echo tronlong /dev/ttyS3
图65
图66
验收测试
执行以下命令,将数据输入RS232 UART3串口。调试串口对应的串口调试终端会显示接收到的数据。按“Ctrl + C”终止测试命令。
Target# cat /dev/ttyS3 //等待接收RS232 UART3串口数据
图67
图68
使用RS232转RS485模块或USB转RS232公串口线将评估板的RS485 UART4或RS485 UART5串口连接到PC的USB接口,如下图所示。
RS232转RS485模块与评估板RS485串口的连接方法如下:
RS232转RS485模块485+端子,连接评估板的RS485串口A端子。 RS232转RS485模块485端子,连接评估板的RS485串口B端子。 RS232转RS485模块GND端子,连接评估板RS485串口GND1端子。本章以RS485 UART4串口(设备节点:ttyS4)进行演示。如果需要测试RS485 UART5串口,请将设备节点更改为ttyS5。
图69
打开设备管理器。本次测试中,调试串口USB TO UART0端口号为COM9,RS485 UART4串口端口号为COM12,如下图所示。
图70
打开串口调试终端,将COM9和CON12波特率设置为115200、8N1、无校验位,建立串口连接,如下图所示。
图71
发送测试
进入评估板文件系统,执行以下命令,调试串口与RS485 UART4串口相互发送数据。 RS485 UART4串口的测试步骤和现象与RS232串口类似。
Target# stty -F /dev/ttyS4 ispeed 115200 ospeed 115200 cs8 //设置波特率
Target# echo tronlong /dev/ttyS4 //向RS485 UART4串口发送数据
图72
图73
验收测试
执行以下命令,向RS458 UART4串口输入数据。调试串口对应的串口调试终端会显示接收到的数据。按“Ctrl + C”终止测试命令。
Target# cat /dev/ttyS4 //等待接收RS485 UART4串口数据
图74
图75
请先按照调试工具安装文档安装CAN接口调试工具ECAN Tools。使用USB转CAN模块将评估板的CAN0 SPI2(CON9)或CAN1 SPI2(CON8)接口连接到PC的USB接口,如下图所示。
本章以CAN0 SPI2接口(设备节点:can0)进行演示。如果需要测试CAN1 SPI2接口,请将设备节点更改为can1。
图76
进入评估板文件系统,执行以下命令将CAN0总线比特率配置为1MHz,并启动CAN0总线。
Target# canconfig can0 stop //注意设备节点
目标# canconfig can0 比特率1000000
目标# canconfig can0 start
图77
发送测试
执行以下命令接收PC发送的数据。
目标# candump can0
图78
在PC上打开ECANTools软件,选择设备类型,点击“打开设备”。
图79
等待软件检测到设备后,点击“确定”,进入软件操作界面,如下图所示。
图80
在如下数据发送界面中,点击“发送”开始发送数据。
图81
依次发送两组数据到接收端,在ECAN Tools和串口调试终端中可以看到数据,如下图所示。
图82
图83
验收测试
评估板文件系统执行以下命令将数据发送到ECANTools软件。当ECANTools软件收到数据时,表明功能正常。
目标# cansend can0 123#1122334455667788
图84
图85
我公司提供的Linux系统镜像默认为VGA显示。请将评估板的VGA OUT接口连接至VGA显示器。系统启动后,可以在VGA显示屏上看到Qt界面。
图86
请通过FFC软排线将TL070A LCD触摸屏连接至评估板的TFT LCD(CON11)接口。硬件连接如下图所示。
图87
将产品信息“4-Software Information\Linux\Boot_package\AA_BB_CC\”目录下的boot_package_tft_lcd.fex文件(支持LCD显示)复制到评估板文件系统根用户目录下,执行以下命令将其固化为Linux系统启动卡。
目标# dd if=boot_package_tft_lcd.fex of=/dev/mmcblk1eek=32800
目标# dd if=boot_package_tft_lcd.fex of=/dev/mmcblk1eek=24576
目标#同步
目标#重新启动
图88
LCD显示屏显示测试
重启评估板,进入文件系统后,可以在LCD显示屏上观察Qt界面。
图89
LCD显示屏校准测试
执行以下命令删除校准文件并关闭默认启动的Qt程序。
Target# rm /etc/pointercal //如果提示符“/etc/pointercal”不存在,请忽略。
目标# mv /etc/init.d/runqt /etc/init.d/K99runqt
目标#重新启动
图90
评估板重启后,执行以下命令打开背光并执行校准命令。
目标# mount -t debugfs none /sys/kernel/debug
目标# echo PB20 1 /sys/kernel/debug/sunxi_pinctrl/function
目标# echo PB20 1 /sys/kernel/debug/sunxi_pinctrl/data
目标# ts_calibrate
图91
执行命令后,进入如下界面进行校准。根据提示点击坐标点。连续点击五次后,将在文件系统的“/etc/”目录下生成校准文件pointercal,并在该文件中记录校准信息。
图92
要检查校准坐标,请执行以下命令,然后单击屏幕查看打印的坐标是否正常。按“Ctrl + C”结束。
目标# ts_print
图93
校准完成后,执行以下命令恢复默认启动Qt程序。
目标# mv /etc/init.d/K99runqt /etc/init.d/runqt
目标#重新启动
图94