SOM-6540

来自ARM Wiki
Tangdapeng讨论 | 贡献2020年1月17日 (五) 14:47的版本
跳转至: 导航搜索

介绍

正面
  • SOM-6540的核心芯片是Hi3536, 其计算单元架构包括四核A17、单核A7。 四核A17主频1.4GHz,32KB L1 I-Cache,32KB L1 D-Cache,1MB L2 Cache。单核A7的主频为0.9GHz,32KB L1 I-Cache,32KB L1 D-Cache,128KB L2 Cache。
  • GPU方面,集成 Mali-T720 GPU,支持 OpenGL ES3.1/2.0/1.1,支持 OpenCL 1.2/1.1/1.0,支持双精度 FP64 及抗锯齿功能,三角形填充率高达 63MTris/s。
  • SOM-6540,大小为82mmx 80mm,运行Linux操作系统,拥有稳定可靠的工业级性能,高品质超高清视频编解码能力、支持强大硬件加速算法、接口丰富、扩展性强,可应用神经引擎,深度学习,人工智能等领域开发,以及网络视频监控系统、高清摄像机、视频服务器、无人驾驶、医疗领域、军工等行业。


快速入门

下载

  • 镜像 下载
  • sample 下载
  • 烧录工具 下载
  • 交叉编译工具下载

烧录方法

HiTool 烧录方法

适用场景

  • 适用于一键烧写所有程序镜像到单板flash 上的场景、单板已有 boot 可按地址烧写其他程序镜像到单板 flash 上的场景,以及在空板上只烧写 boot 到单板 flash 上的场景。
  • 本文只介绍 <eMMC烧录>方法。

环境部署

HiBurn 工具烧写的环境准备如下:
  • 步骤 1. PC 与单板之间连接好串口、网线,且因工具烧写需要涉及到与 bootrom 交互,故单板硬件上 bootrom_sel 需要设置为 1,从 bootrom 启动。
  • 步骤 2. 把 HiTool-BVT-X.X.X.zip 拷贝到 PC 上(PC 要求安装 Win7、XP 操作系统)的某个本地硬盘。
  • 步骤 3. 解压 HiTool-BVT-X.X.X.zip,双击工具目录下的 HiTool.exe,打开 HiTool 工具,如图 1-1 所示。
图1-1 从 HiTool 工具目录打开 HiTool 工具
  • 步骤 4. 选择单板对应的芯片型号,如图 1-2 所示。
图1-2 选择单板对应的芯片型号
  • 步骤 5. 在欢迎页中选择 HiBurn 工具, 如图 1-3 所示。
图1-3 选择 HiBurn 工具
  • 步骤 6. 参数配置,选择连接单板所用的串口,选择 PC 端使用的网络 IP 地址,配置好单板的MAC 地址、IP 地址、子网掩码以及网关,配置如图 1-4 所示。
图1-4 参数设置

eMMC烧录

适用场景
适用场景如下:只适用于 eMMC 烧写,不管单板上有没有 boot 都适用,可实现一键烧写所有镜像。
烧写步骤
具体烧写步骤如下:
  • 步骤 1. 切换到“烧写 eMMC”页签,如图 5-1 所示。
图5-1 eMMC 烧写界面
说明:
切换“默认采用 XML 所在路径”的勾选状态,若勾选,则优先在 XML 路径下查找该分区文件。若不勾选,则优先采用绝对路径查找该文件,若找不到,再尝试以在 XML 所在目录下查找该文件,该状态默认被勾选。
XML 是一个配置文件用于保存分区表信息的,可以将编辑的分区表使用工具上的 Save 按钮保存成一个 XML 文件,下次打开工具时,将 XML 导入进来,分区表信息就直接加载进来。
  • 步骤 2. 配置单板分区信息,点击“浏览”,可选择已设置好的分区表信息,载入工具中,如图 5-2 所示界面。
图5-2 配置单板分区信息
  • 步骤 3. 准备单板环境。连接单板的串口和网口,如果单板处于通电状态,给单板下电 。
  • 步骤 4. 烧写单板,点击烧写按钮【Burn】。
  • 步骤 5. 给单板上电,进入烧写过程,等待烧写完成。
  • 烧写过程的信息会在控制台中显示。
  • 串口选择是否正确。
  • IP 地址设置是否正确,地址是否被占用。
  • 是否有短接单板上的自举跳线。
  • 步骤 6. 烧写完成,连接终端工具,重启单板。

U盘烧录方法

  • 此方法适用于主板已有Uboot及内核的情况

例程环境搭建

  • 主板默认已搭建好例程运行环境。

DEMO使用

sample_audio(音频相关)

 1 root@root:/mpp/sample/audio# ./sample_audio
 2 
 3 
 4 /************************************/
 5 please choose the case which you want to run:
 6         0:  start AI to AO loop
 7         1:  send audio frame to AENC channel from AI, save them
 8         2:  read audio stream from file, decode and send AO
 9         3:  start AI(AIC31) to AO(Hdmi) loop
10         q:  quit whole audio sample
11 
12 sample command:
shell 说明:
1.  运行sample_audio 音频 (输入/输出/编码/解码)样例
5.  选择要运行的选项
6.  0) 音频从输入到输出 (话筒功能)
7.  1) 采集音频输入帧发送到编码通道,保存文件 (录音功能)
8.  2) 从文件读取音频流,解码然后发送到输出 (解码播放功能)
9.  3) 采集音频输入到HDMI中音频输出 (HDMI设备播放音频功能)
10.  q) 退出整个音频示例
12.  选项输入框

usbCamTest(usb摄像头)

1 root@root:/mpp/sample/ght_usb_camera_vdec_vo# ./usbCamTest
shell 说明:
1.  运行usb摄像头样例程序,实现usb摄像头获取264的码流 然后解码在hdmi显示。

其他功能说明

nfs配置和网络

1,pc机安装nfs服务,安装前可以先学习下这个网站内容:https://blog.csdn.net/iamplane/article/details/53912176
pc机操作示例如下:
1 $ sudo apt-get install nfs-kernel-server
2 $ sudo apt-get install nfs-common​
3 $ sudo gedit /etc/exports #添加下面内容/home/nfs *(rw,sync,no_root_squash,no_subtree_check)
4 $ sudo /etc/init.d/rpcbind restart #重启rpcbind
5 $ sudo /etc/init.d/nfs-kernel-server restart #重启nfs服务
6 $ showmount -e #使用此命令后有”/home/nfs“则安装成功
2,设备debug串口链接到PC机上,串口参数是115200 8N1(详细见 调试串口接口定义
在设备串口终端上,通过下面命令配置IP eth0:
1 ~ # ifconfig eth0 192.168.8.189
在设备串口终端,通过下面命令挂载PC机的/home/nfs目录到设备的/mnt/nfs目录(192.168.8.xx是PC机的IP,和设备eth0的IP处在同一网段即可):
1 ~ # mount -t nfs -o nolock -o tcp 192.168.8.xx:/home/nfs /mnt/nfs
2 ~ # cd /mnt/nfs
3 ~ # ls #查看PC机共享的内容
这样PC机共享出/home/nfs目录后,在设备的/mnt/nfs目录就可以访问PC机/home/nfs目录的内容。

gpio使用

16路DI电平由外部控制,4路DO。此处示例设置4路DO的电平。
 1 root@root:~# cat /sys/class/gpio/gpionl1/value       #查看gpionl1脚的输出电平
 2 1                                                    #高电平
 3 root@root:~# echo 0 > /sys/class/gpio/gpionl2/value  #把gpionl1脚的输出电平拉低
 4 root@root:~# cat /sys/class/gpio/gpionl1/value       #查看gpionl1脚的输出电平
 5 0                                                    #低电平
 6 root@root:~# cat /sys/class/gpio/gpionl2/value       #查看gpionl2脚的输出电平
 7 1                                                    #高电平
 8 root@root:~# echo 0 > /sys/class/gpio/gpionl2/value  #把gpionl2脚的输出电平拉低
 9 root@root:~# cat /sys/class/gpio/gpionl2/value       #查看gpionl2脚的输出电平
10 0                                                    #低电平

USB口U盘挂载

将U盘插入USB口,会有很多提示信息,其中比较有用的标识是sda: sda1信息(第一个U盘,后面以此是sdb1,sdc1...),然后通过下面命令进行U盘挂载,进入/mnt/usb目录可以看到U盘内容。
1 ~ # mount -t vfat /dev/sda1 /mnt/usb #假设看到的提示信息是sda1
2 ~ # cd /mnt/usb
3 ~ # ls #查看U盘内容

TF口使用

将TF卡插入到设备TF卡槽内,重启系统,在终端会有mmc1: new high speed SD card at address 0001提示。使用下面命令进行挂载(mmcblk0是系统emmc使用,TF卡为mmcblk1),在 /mnt/mmc目录下可以看到TF卡里面的内容。
1 # mount -t vfat /dev/mmcblk1p1 /mnt/mmc
2 # cd /mnt/mmc
3 # ls #查看TF卡内容

COM口使用

一个COM232,一个COM485,两个debug调试串口,COM0_DB为主系统的调试口COM1_DB为从系统的调试口,引脚定义详见串口接口定义和J46接口定义
软件上COM232口和COM485对应/dev/ttyAMA1和/dev/ttyAMA2,debug串口对应的设备是/dev/ttyS000。
调试串口默认参数是115200 8 N 1。