文章转载自易百纳技术社区
本片文章主要是对SS928评估板的使用讲解,为了帮助大家快速了解使用方法。
一、开发环境搭建
在开发软件之前,要先准备好一台性能足够高的PC主机,高效的主频和大容量的内存可以节省很多开发时间。
推荐windows10操作系统+虚拟机linux的搭配方式,做开发的同时,方便处理一些常用需求。
虚拟机软件:可以使用VMwareWorkstationPro或者VMwareWorkstationPlayer等软件。【推荐VMware15以上的版本】
linux开发环境:推荐桌面版Ubuntu18及以上的版本,本文以Ubuntu18.04为例。
Ebaina社区提供了已经完全搭建好开发环境的Ubuntu18.04虚拟机,建议用户使用该
虚拟机,节省繁琐的环境安装过程,直接进入板卡设备的学习和使用。
虚拟机用户:ebaina
虚拟机密码:1
二、开发资料
SDK等开发资源,已经搭建于社区提供的Ubuntu18.0虚拟机中;
1.板卡资源包
社区提供的EB-SS928-DC-393型开发板资源包目录如下:
/home/ebaina/ebaina_resource_pack
该目录适配资源:
Uboot源码:A393_ss928_u-boot-2020.01.zip
Kernel源码:A393_ss928_linux-4.19.y.zip
Rootfs:A393_ss928_ubi_rootfs.zip
RTC芯片控制:pcf8563
IO拓展芯片控制:tca9535
sample源码:sample.zip
出厂镜像:A393_SS928V100_SPINAND_IMAGE
2.板卡SDK
保留ss928v100原始SDK与交叉编译工具链压缩包;
提供已完成对SDK的初步展开与补丁安装的SDK目录,目录如下:
/home/ebaina/ss928v100_sdk
该目录适配资源:
SDK:SS928V100_SDK_V2.0.2.1
补丁包:SS928V100_REF_V2.0.2.1
补丁安装脚本:ref_patch.sh
交叉编译工具链:aarch64-mix210-linux
riscv交叉编译工具链:cc-riscv32-cfg5-musl-20211008-elf
3.MindStudio
MindStudio所需的开发环境已搭建完成,如需使用,根据官方安装步骤,安装MindStudio与CANN即可;
目录如下:
/home/ebaina/Downloads
该目录适配资源:
MindStudio安装包:MindStudio_5.0.RC2_linux.tar.gz
CANN安装包:Ascend-cann-toolkit_6.0.RC1.alpha003_linux-x86_64.run
Python-3.7.6插件包:Python-3.7.6
三、固件快速编译
1.u-boot编译
进入u-boot目录
cd/home/ebaina/ss928v100_sdk/SS928V100_SDK_V2.0.2.1/open_source/u-boot/u-boot-2020.01
执行
./build_uboot.sh
编译完成后将生成u-boot镜像“boot_image.bin”到Ubuntu系统桌面。
2.内核编译
进入kernel目录
cd/home/ebaina/ss928v100_sdk/SS928V100_SDK_V2.0.2.1/open_source/linux/linux-4.19.y
执行
./build_kernel.sh
编译完成后将生成内核镜像“fip.bin”到Ubuntu系统桌面。
3.文件系统编译
进入rootfs目录
cd/home/ebaina/ss928v100_sdk/SS928V100_SDK_V2.0.2.1/osdrv/rootfs_scripts/A393_ss928_ubi_rootfs
执行
./build_rootfs.sh
编译完成后将生成文件系统镜像“rootfs_ss928v100_2k_128k_128M.ubifs”到Ubuntu系统桌面。
4.环境变量参考
查看环境变量配置,该配置将使用在固件烧写成功后,于uboot内设置;
cat/home/ebaina/ebaina_resource_pack/A393_SS928V100_SPINAND_IMAGE/环境变量.txt
四、固件烧写
本设备固件烧写步骤:
1.启动烧写工具
2.选择分区表
3.烧写固件
4.进入Uboot设置环境变量
5.进入系统
五、接口测试
成功烧写出厂固件后,进入系统,于设备/app/目录下能够找到所有设备外围接口的测试程序;
1.HDMI输出测试
HDMI的输出测试,使用海思VDEC解码模块进行测试;
测试视频用例,存放于/app/source_file,需要进入/app目录执行测试程序;
命令操作:
cd /app ./sample_vdec 0 #测试 4K60 解码输出 ./sample_vdec 1 #测试 1080P60 解码输出
2.音频测试
音频部分使用海思sample进行输入到输出的环出测试;
由GPIO10_0引脚对音频是否静音进行控制,在执行音频测试程序之前,需要取消音频禁用;
命令操作:
echo 0 > /sys/class/gpio/gpio80/value #0:静音 echo 1 > /sys/class/gpio/gpio80/value #1:取消静音 /app/sample_audio 0 #环出测试
3.RS232自环测试
232串口节点为/dev/ttyAMA4;
测试可以使用杜邦线对232TXRX进行短接,运行板端测试程序进行测试,查看到消息循环打印,则串口收发正常;
命令操作:
/app/serial_test-d/dev/ttyAMA4-s115200-lHiSerial:HelloWorld
4.485测试
485串口节点为/dev/ttyAMA3;
可以用485转USB模块接到电脑端,使用串口调试工具进行收发测试;
命令操作:
/app/serial_test-d/dev/ttyAMA3-s115200-lHiSerial:HelloWorld
5.继电器测试
继电器使用TCA9535IO扩展模块进行控制;
对其输出的电平发生变化能够听到切换响声,接口通断发生改变;
命令操作:
/app/tca9535_tool 1 3 1 #导通 /app/tca9535_tool 1 3 0 #断开
6.RTC测试
RTC芯片为pcf8563,可以通过I2C对寄存器进行读写来完成测试;
命令操作:
date -s "2022-09-01 00:00:00" XXXXX(见原文) #写入 RTC /app/rtc_test -r #断电后重启后,查询 RTC 时间
7.按键测试
按键测试通过查询TCA9535IO扩展模块中IO脚的电平,来确认状态是否正常;
按住或松开按键,查看当前按键电平;
命令操作:
/app/tca9535_tool 0 2 #查看 key1 当前电平状态 /app/tca9535_tool 0 1 #查看 key2 当前电平状态
8.USB测速
USB测试可以通过终端命令查看USB设备是否接入;
对速度的检测则通过dd命令进行读写测试;
命令操作:
fdisk -l #查看 USB 设备是否正确识别 #挂载 USB 设备进行测速 mount /dev/sda1 /mnt/ dd if=/dev/zero of=/mnt/testfile bs=64k count=24000 #测试写入速度 dd if=/mnt/testfile of=/dev/null bs=4k #测试读取速度 umount /dev/sda1
9.拓展电源口测试(J9)
拓展电源口,是预留给风扇的电源接口,其供电通过TCA9535IO扩展芯片进行控制;
命令操作:
/app/tca9535_tool 1 0 0 #断电 /app/tca9535_tool 1 0 1 #通电
10.minipcie(4G测试)
Minipcie接口可使用4G模块EC20进行测试;
命令操作:
/app/tca9535_tool 1 7 0 #设置模块电压 /app/tca9535_tool 1 10 1 #选择 USB->4G /app/quectel-CM & #拨号 ping -I wwan0 180.76.76.76 #PING 百度 IP 测试网络
ps:如果无法正常拨号请查询SIM卡状态
microcom -s 115200 /dev/ttyUSB2 AT+QCCID < ctrl + x >
11.m.2(5G测试)
m.2接口可使用5G模块FM650进行测试;
命令操作:
/app/tca9535_tool 1 7 0 #设置模块电压 /app/tca9535_tool 1 10 0 #选择 USB->5G /app/tca9535_tool 1 5 1 #使能 5G 模块,等待 5G 模块启动 ifconfig usb0 up udhcpc -i usb0 & ping -I usb0 180.76.76.76 #PING 百度 IP 测试网络 /app/tca9535_tool 1 5 0 #关闭 5G 模块
ps:如果无法正常拨号请确认模块工作状态,0:不工作1:工作
microcom -s 115200 /dev/ttyUSB0 AT+CFUN? AT+CFUN=1 AT+CPIN? < ctrl + x >
六、sample例程编译
适配EB-SS928-DC-393型开发板的例程sample已经更新至sample目录下;
进入sample目录
cd/home/ebaina/ss928v100_sdk/SS928V100_SDK_V2.0.2.1/smp/a55_linux/mpp/sample
执行
make
将编译所有sample例程,不同模块的例程均生成在对应模块的文件夹中。
文章转载自易百纳技术社区
审核编辑:汤梓红
-
Linux
+关注
关注
87文章
11292浏览量
209327 -
操作系统
+关注
关注
37文章
6801浏览量
123283 -
VMware
+关注
关注
1文章
297浏览量
21624 -
Windows10
+关注
关注
1文章
126浏览量
34236
发布评论请先 登录
相关推荐
评论