SOMB-6540A

来自ARM Wiki
跳转至: 导航搜索

资源特性

概览
正面
  • CPU:HiSilicon HI3536  4xA17 + 单核A7
  • GPU:Mali-T720 GPU
  • Memory:板载内存最大容量4G,默认2GB
  • Storage:板载 8 GB ,1x TF卡槽,8个标准的SATA接口
  • Ethernet: 2 x LAN,100/1000Mbps
  • Display:1xHDMI,1xVGA/LVDS,1XCVBS接口
  • Encode/decode:视频支持H264/H.265/JPEG多种格式编解码
音频支持G.711/G.726/AAC/等编解码
  • Touch:电容或电阻屏
  • USB Host: 1x USB3.0,2x USB2.0(提供ESD保护)
  • COM: 提供4个串口,COM0->RS232(Debug),COM1->RS232(slave_Debug),COM2->RS232,COM3->RS485
  • Audio:1xMic;1xLine out;1xMic(3.5mm四节耳机孔)
  • Other I/O: 1个PCIEX1插槽;16路DI,4路DO
  • RTC:支持
  • Watchdog:支持
  • Power Supply:ATX供电
  • Temperature:Work :-20℃ ~ +65℃, Storage :-40℃ ~ +85℃
  • Humidity:5% ~ 95%相对湿度,无冷凝
  • Size: 218mmX133mm
  • OS: Linux

接口布局和尺寸

接口概览

SOMB-6540A 接口布局
SOMB-6540A 接口布局1

接口引脚定义

机械尺寸

SOMB-6540A尺寸.jpg

下载

  • 镜像 下载
  • sample 下载
  • [ 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及内核的情况

例程环境搭建

工具链安装

  • 1) 将安装包arm-hisiv400-linux.tar.gz拷贝到安装了ubuntu环境的PC机上,在PC机的shell中执行下面步骤进行安装:
1 $ tar -xvf arm-hisiv400-linux.tar.gz 
2 $ chmod +x cross.v400.install
3 $ sudo ./cross.v400.install
  • 2) 执行 source /etc/profile 或者重启电脑让环境变量生效。注意,如果不重启电脑,仅仅source一下,环境变量只在当前shell里生效。

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.  选项输入框

sample_hifb(Hisilicon Framebuffer,基于Linux FB 基本功能扩展了一些图形层控制功能)

 1 root@root:/mpp/sample/hifb# ./sample_hifb
 2 
 3 
 4 /************************************/
 5 please choose the case which you want to run:
 6         0:  ARGB1555 standard mode + cursor
 7         1:  ARGB1555 BUF_DOUBLE mode
 8         2:  ARGB1555 BUF_ONE mode
 9         3:  ARGB1555 BUF_NONE mode
10         4:  ARGB8888 BUF_NONE mode with compression
11         q:  quit the whole sample
shell 说明:
1. 运行 sample_hifb
4. <index>
5. 请选择一下您想运行的情况之一
6.  0: ARGB8888像素格式(标准模式)
7.  1: ARGB1555像素格式双缓存模式
8.  2: ARGB1555像素格式单缓存模式
9.  3: ARGB1555像素格式无缓存模式
10.  4: ARGB8888像素格式带压缩的单缓存模式
11.  q: 退出程序

sample_ive_main(智能加速引擎)

 1 root@root:/mpp/sample/ive# ./sample_ive_main
 2 Usage : ./sample_ive_main <index> [complete] [encode] [vo]
 3 index:
 4          0) Canny,   <complete>: 0--part canny; 1--complete canny.
 5          1) BgModel, <encode>:   0--no encode; 1--encode; <vo>: 0--no vo; 1--with vo.
 6          2) GMM,     <encode>:   0--no encode; 1--encode; <vo>: 0--no vo; 1--with vo.
 7          3) Occlusion detection.
 8          4) MemoryTest.
 9          5) Sobel.
10          6) ANN.
11          7) ShiTomasi And LKOpticalFlow.
12          8) SVM.
shell 说明:
1. 运行 sample_ive_main
2. 使用说明: ./sample_ive_main <index> [complete] [encode] [vo]
3. index:
4.  0) 边缘检测
5.  1) 背景模型
6.  2) 高斯模型Gmm
7.  3) 遮挡检测
8.  4) 内存测试
9.  5) Sobel算子分割
10  6) 图像检索Ann
11  7) St和LK光流法
12  8) 分类器SVM

sample_region(视频图片层叠)

1 root@root:/mpp/sample/region# ./sample_region
2 press sample command as follows!
3          0) VPSS: file->VDEC->VPSS(COVER+OVERLAY)->VO     HDMI VGA 1080P30
4          1) VPSS: file->VDEC->VPSS(COVEREX+OVERLAYEX+LINE)->VO     HDMI VGA 1080P30
5          2)   VO  : file->VDEC->VO(COVER+OVERLAY+LINE)->VO     HDMI VGA 1080P30
6          3) VENC: file->VDEC->VENC(OVERLAY)->file
7          q) quit the whole sample
8 sample command:
shell 说明:
1. 运行 sample_region
2. index:
3.  0) VPSS COVER.
4.  1) VPSS COVEREX.
5.  2) VO COVER.
6.  3) VENC OVERLAY.
7.  q) 退出程序

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。