查看“EMB-7542”的源代码
←
EMB-7542
跳转至:
导航
,
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
=='''介绍'''== [[File:7542-概览图.jpg|thumb|frameless|300px|概览]] [[File:7542主视图.jpg|thumb|frameless|300px|正面]] [[File:7542侧视图.jpg|thumb|frameless|300px|侧面]] * EMB-7542的核心芯片是3516dv300,双核 ARM Cortex-A7@ 900MHz,32KB I-Cache,32KB D-Cache,256KB L2 Cache, 支持 NEON 加速,集成 FPU 处理单元。 * EMB-7542(简称7542),大小仅为120x80mm大小,运行Linux操作系统,拥有稳定可靠的工业级性能,高品质超高清视频编解码能力、支持强大硬件加速算法、接口丰富、扩展性强,可应用神经引擎,深度学习,人工智能等领域开发,以及网络视频监控系统、高清摄像机、视频服务器、无人驾驶、医疗领域等行业。 =='''资源特性'''== * CPU:双核 ARM Cortex-A7 * Memory: * Storage: * Ethernet: * Input:CMOS Sensor(根据镜头规格设计转接板) * 支持两路输入:第一路支持输入最大宽度 2688,最大分辨率 2688x1944第二路支持输入最大宽度 2048,最大分辨率 2048x1536 *Display:1xHDMI *Touch:电容或电阻屏 * USB Host: * COM: * Audio:1xMic;1xLine out;1xMic(3.5mm四节耳机孔) * Other I/O: * System Control: * RTC:支持 * Watchdog:支持 * Power Supply:单电源+ 12V DC * Temperature:Work :-20℃ ~ +65℃, Storage :-40℃ ~ +85℃ * Humidity:5% ~ 95%相对湿度,无冷凝 * Size: 120mm x 80 mm * OS: Linux =='''接口布局和尺寸'''== ===接口概览=== [[File:EMB-7542正面接口布局.jpg |thumb|frameless|300px|EMB-7542 正面接口布局]] [[File:EMB-7542侧面接口布局侧面接口布局.jpg |thumb|frameless|300px|EMB-7542 侧面接口布局]] ===接口引脚定义=== :*[[EMB-7541-COM|串口,DI/DO(COM0,J1)]] :*[[EMB-7541-USB|USB接口(USB,OTG)]] :*[[EMB-7541-LAN|LAN接口(LAN)]] :*[[EMB-7541-SPEAKER|音频接口(HP,MIC)]] :*[[EMB-7541-RESET|复位按键(RESET)]] :*[[EMB-7541-PWR&LED|电源及LED指示灯(LED)]] :*[[EMB-7541-HDMI|HDMI接口]] :*[[EMB-7541-Sensor|摄像头接口(J12,J13,J14)]] :*[[EMB-7541-TF|TF卡接口(TF)]] :*[[EMB-7541-J2|扩展接口(J2)]] :*[[EMB-7541-JTAG|JTAG调试接口(JTAG)]] :*[[EMB-7541-J7&J8|自动光圈调节接口(J7,J8)]] :*[[EMB-7541-JFP|前面板接口(JFP)]] ===传感器接口转接板定义=== [[File:EMB-7540转接板.jpg |thumb|frameless|300px|EMB-7542 转接板]] :*[[EMB-7540-CAM|camera接口]] ===机械尺寸=== :*[[EMB-7542尺寸图]] =='''下载'''== :*系统烧录工具下载 ::*[http://norcord.com:8070/f/22a02da68ade4d84b1ad/?dl=1 HiTool 下载] :*系统镜像文件下载 ::*[http://norcord.com:8070/f/d06efb58e77047ada085/?dl=1 系统镜像文件 下载] :*Sample文件下载 ::*[http://norcord.com:8070/f/8cad788c8d3f4f3798df/?dl=1 Sample文件 下载] :*Sample源码下载 ::*[http://norcord.com:8070/f/6a2c6a82b12f4c649c10/?dl=1 Sample源码文件 下载] :*交叉编译工具下载 ::*[http://norcord.com:8070/f/78c2fbce854b478cb66d/ 交叉编译工具 下载] =='''烧录方法'''== ==='''HiTool 烧录方法'''=== ====适用场景==== :*适用于一键烧写所有程序镜像到单板flash 上的场景、单板已有 boot 可按地址烧写其他程序镜像到单板 flash 上的场景,以及在空板上只烧写 boot 到单板 flash 上的场景。 :* 本文只介绍 <eMMC烧录>方法。 ====环境部署==== :HiBurn 工具烧写的环境准备如下: :*步骤 1. PC 与单板之间连接好串口、网线,且因工具烧写需要涉及到与 bootrom 交互,故单板硬件上 bootrom_sel 需要设置为 1,从 bootrom 启动。 :*步骤 2. 下载HiTool http://norcord.com:8070/f/22a02da68ade4d84b1ad/ 把HiTool-BVT-5.0.46.zip 拷贝到 PC 上(PC 要求安装 Win7、XP 操作系统)的某个本地硬盘。 :*步骤 3. 解压 HiTool-BVT-5.0.46.zip,双击工具目录下的 HiTool.exe,打开 HiTool 工具,如图 1-1 所示。 ::[[文件:EMB-7540-HiBurn1-1.jpg|300px| 图1-1 从 HiTool 工具目录打开 HiTool 工具]] :*步骤 4. 选择单板对应的芯片型号,如图 1-2 所示。 ::[[文件:Se_platform.PNG|500px| 图1-2 选择单板对应的芯片型号]] :*步骤 5. 在欢迎页中选择 HiBurn 工具, 如图 1-3 所示。 ::[[文件:7541_burn2.PNG|500px| 图1-3 选择 HiBurn 工具]] :*步骤 6. 参数配置,选择连接单板所用的串口,选择 PC 端使用的网络 IP 地址,配置好单板的MAC 地址、IP 地址、子网掩码以及网关,配置如图 1-4 所示。 ::[[文件:Set_burn_7542.png|600px| 图1-4 参数设置]] ====eMMC烧录==== =====适用场景===== :适用场景如下:只适用于 eMMC 烧写,不管单板上有没有 boot 都适用,可实现一键烧写所有镜像。 =====烧写步骤===== :具体烧写步骤如下: :*步骤 1. 切换到“烧写 eMMC”页签,如图 5-1 所示。 ::[[文件:7541_burn4.png|500px| 图5-1 eMMC 烧写界面]] :::说明: ::::切换“默认采用 XML 所在路径”的勾选状态,若勾选,则优先在 XML 路径下查找该分区文件。若不勾选,则优先采用绝对路径查找该文件,若找不到,再尝试以在 XML 所在目录下查找该文件,该状态默认被勾选。 ::::XML 是一个配置文件用于保存分区表信息的,可以将编辑的分区表使用工具上的 Save 按钮保存成一个 XML 文件,下次打开工具时,将 XML 导入进来,分区表信息就直接加载进来。 :*步骤 2. 配置单板分区信息,点击“浏览”,可选择已设置好的分区表信息,载入工具中,如图 5-2 所示界面。 ::[[文件:7541_burn5.PNG|500px|图5-2 配置单板分区信息]] :*步骤 3. 准备单板环境。连接单板的串口和网口,如果单板处于通电状态,给单板下电 。 :*步骤 4. 烧写单板,点击烧写按钮【Burn】。 :*步骤 5. 给单板上电,进入烧写过程,等待烧写完成。 ::*烧写过程的信息会在控制台中显示。 ::*串口选择是否正确。 ::*IP 地址设置是否正确,地址是否被占用。 ::*是否有短接单板上的自举跳线。 :*步骤 6. 烧写完成,连接终端工具,重启单板。 =='''Demo使用'''== :*系统出厂时默认已搭建好了相应的Demo运行环境。 ====sample_audio(音频相关)==== :<syntaxhighlight lang="bash" line> /data/sample/audio # ./sample_audio /Usage:./sample_audio <index>/ index and its function list below 0: start AI to AO loop 1: send audio frame to AENC channel from AI, save them 2: read audio stream from file, decode and send AO 3: start AI(VQE process), then send to AO 4: start AI to AO(Hdmi) loop 5: start AI to AO(Syschn) loop 6: start AI to Extern Resampler </syntaxhighlight> :shell 说明: ::1. 运行sample_audio 音频 (输入/输出/编码/解码)样例 ::2. 使用提示:./sample_audio <索引> ::3. 以下内容是索引对应的功能 ::4. 0) 音频从输入到输出 (话筒功能) ::5. 1) 采集音频输入帧发送到编码通道,保存文件 (录音功能) ::6. 2) 从文件读取音频流,解码然后发送到输出 (解码播放功能) ::7. 3) 通过音频输入声音质量增强处理,然后输出音频 (声音质量增强处理功能) ::8. 4) 采集音频输入到HDMI中音频输出 (HDMI设备播放音频功能) ::9. 5) 音频输入到系统音输出 (话筒功能) ::10. 6) 音频输入到外部重采样器 ====sample_region==== :<syntaxhighlight lang="bash" line> /data/sample/region # ./sample_region Usage : ./sample_region <index> index: 0)VI OSDEX. 1)VI COVEREX. 2)VPSS OSDEX. 3)VPSS COVEREX. 4)VPSS COVER. 5)VPSS MOSAIC. 6)VO OSDEX. 7)VO COEREX. </syntaxhighlight> :shell 说明: ====sample_vdec(视频数据解码)==== :<syntaxhighlight lang="bash" line> /data/sample/vdec # ./sample_vdec Invaild input! For examples: /************************************/ Usage : ./sample_vdec <index> <IntfSync > index: 0: VDEC(H265 PLAYBACK)-VPSS-VO 1: VDEC(H264 PLAYBACK)-VPSS-VO 2: VDEC(JPEG PLAYBACK)-VPSS-VO </syntaxhighlight> :shell 说明: ::1. 运行sample_vdec 视频解码样例,解码目录下的视频和图片文件。 ::3. 非法输入,使用示例如下: ::6. 使用提示: ./sample_vdec <索引> ::7. 参数<索引>: ::8. 0) VDEC解码器输入(H265的编码格式视频)--->VPSS(视频处理)--->VO(视频输出) ::9. 1) VDEC解码器输入(H264的编码格式视频)--->VPSS(视频处理)--->VO(视频输出) ::10. 2) VDEC解码器输入(JPEG格式图片)--->VPSS(视频处理)--->VO(视频输出) ====sample_awb_calibration(自动白光平衡)==== :<syntaxhighlight lang="bash" line> /data/sample/awb_online_calibration # ./sample_awb_calibration Usage : ./sample_awb_calibration <mode> <intf1> <intf2> <intf3> mode: 0) Calculate Sample gain. 1) Adjust Sample gain according to Golden Sample. intf1: The value of Rgain of Golden Sample. intf2: The value of Bgain of Golden Sample. intf3: The value of Alpha ranging from 0 to 1024 (The strength of adusting Sampe Gain will increase with the value of Alpha) . </syntaxhighlight> :shell 说明: ====sample_venc(视频数据编码)==== :<syntaxhighlight lang="bash" line> /data/sample/venc # ./sample_venc Usage : ./sample_venc [index] index: 0) H.265e + H264e. 1) Lowdelay:H.265e. 2) Qpmap:H.265e + H264e. 3) IntraRefresh:H.265e + H264e. 4) RoiBgFrameRate:H.265e + H.264e. 5) DeBreathEffect:H.265e + H.264e. 6) svc-t :H.264. 7) Mjpeg +Jpeg. </syntaxhighlight> :shell 说明: ::1. 运行sample_venc (录制) 视频编码样例,需要接摄像头 ::2. 使用方法: ./sample_venc [index] ::3. 参数<索引> ::4. 0) 录制h265编码视频 + h264编码视频 ::5. 1) 使用Lowdelay模式:录制h265编码视频 ::6. 2) 使用Qpmap模式:录制h265编码视频 + h264编码视频 ::7. 3) 使用IntraRefresh模式:录制h265编码视频 + h264编码视频 ::8. 4) 使用RoiBgFrameRate模式:录制h265编码视频 + h264编码视频 ::9. 5) 使用DeBreathEffect模式:录制h265编码视频 + h264编码视频 ::10. 6) 使用svc-t模式:录制h264编码视频 ::11. 7) Mjpeg(Mjpeg协议编码方式) + Jpeg(Jpeg的编码) ====sample_dis(Digital Image Stabilization,数字防抖)==== :<syntaxhighlight lang="bash" line> /data/sample/dis # ./sample_dis Usage : ./sample_dis <index> index: 0)DIS-4DOF_GME.VI-VO VENC. 1)DIS-6DOF_GME.VI-VO VENC. </syntaxhighlight> :shell 说明: ::1. 运行 sample_dis ::2. 使用说明: ./sample_dis <index> ::3. index: ::4. 0) DIS-4DOF_GME(四自由度 GME 算法,不使用陀螺仪),输入-输出 同时H265格式录像(存储在当前) ::5. 1) DIS-6DOF_GME(六自由度 GME 算法,不使用陀螺仪),输入-输出 同时H265格式录像(存储在当前) ====sample_snap(拍照)==== :<syntaxhighlight lang="bash" line> /data/sample/snap # ./sample_snap Usage : ./sample_snap <index> index: 0)double pipe offline, normal snap. </syntaxhighlight> :shell 说明: ::1. 运行sample_snap 拍照 ::2. 使用说明:./sample_snap <索引> ::3. 参数<索引> ::4. 0)双 pipe 离线模式普通拍照 ====sample_vgs(Video Graphics Sub-System,视频图形子系统)==== :<syntaxhighlight lang="bash" line> /data/sample/vgs # ./sample_vgs /*****************************************/ Usage: ./sample_vgs <index> index: 0) FILE -> VGS(Scale) -> FILE. 1) FILE -> VGS(Cover+OSD) -> FILE. 2) FILE -> VGS(DrawLine) -> FILE. 3) FILE -> VGS(Rotate) -> FILE. /*****************************************/ </syntaxhighlight> :shell 说明: ::1. 运行 sample_vgs ::2. 使用说明:./sample_vgs <index> ::3. index: ::4. 0) FILE-->视频图像子系统(Scale)-->FILE ::5. 1) FILE-->视频图像子系统(Cover+OSD)-->FILE ::6. 2) FILE-->视频图像子系统(DrawLine)-->FILE ::7. 3) FILE-->视频图像子系统(Rotate)-->FILE ====sample_hifb(基于Linux FB 基本功能扩展了一些图形层控制功能)==== :<syntaxhighlight lang="bash" line> /data/sample/hifb # ./sample_hifb Usage : ./sample_hifb <index> /****************index******************/ please choose the case which you want to run: 0: ARGB8888 standard mode 1: ARGB1555 BUF_DOUBLE mode 2: ARGB1555 BUF_ONE mode 3: ARGB1555 BUF_NONE mode 4: ARGB1555 BUF_ONE mode with compress 5: ARGB8888 BUF_ONE mode with compress </syntaxhighlight> :shell 说明: ::1. 运行 sample_hifb ::2. 使用说明:./sample_hifb <index> ::5. <index> ::6. 请选择以下您想运行的情况之一 ::7. 0: ARGB8888像素格式(标准模式) ::8. 1: ARGB1555像素格式双缓存模式 ::9. 2: ARGB1555像素格式单缓存模式 ::10. 3: ARGB1555像素格式无缓存模式 ::11. 4: ARGB1555像素格式带压缩的单缓存模式 ::12. 5: ARGB8888像素格式带压缩的单缓存模式 ====sample_ive_main(智能加速引擎)==== :<syntaxhighlight lang="bash" line> /data/sample/svp/ive # ./sample_ive_main Usage : ./sample_ive_main <index> [complete] [encode] [vo] index: 0)Occlusion detected.(VI->VPSS->IVE->VO_HDMI). 1)Motion detected.(VI->VPSS->IVE->VGS->VO_HDMI). 2)Canny,<complete>:0, part canny;1,complete canny.(FILE->IVE->FILE). 3)Gmm2.(FILE->IVE->FILE). 4)MemoryTest.(FILE->IVE->FILE). 5)Sobel.(FILE->IVE->FILE). 6)St Lk.(FILE->IVE->FILE). 7)Kcf track.(VI->VPSS->IVE->VO_HDMI). 8)PerspTrans.(FILE->IVE->FILE). </syntaxhighlight> :shell 说明: ::1. 运行 sample_ive_main ::2. 使用说明: ./sample_ive_main <index> ::3. index: ::4. 0) 遮挡检测 ::5. 1) 运动检测 ::6. 2) 边缘检测 ::7. 3) 高斯模型Gmm ::8. 4) 内存测试 ::9. 5) Sobel算子分割 ::10. 6) St和LK光流法 ::11. 7) 高速跟踪 ::12. 8) PerspTrans =='''其他功能说明'''== ====nfs配置和网络==== :1,pc机安装nfs服务,安装前可以先学习下这个网站内容:https://blog.csdn.net/iamplane/article/details/53912176 :pc机操作示例如下: :<syntaxhighlight lang="bash" line> $ sudo apt-get install nfs-kernel-server $ sudo apt-get install nfs-common $ sudo gedit /etc/exports #添加下面内容/home/nfs *(rw,sync,no_root_squash,no_subtree_check) $ sudo /etc/init.d/rpcbind restart #重启rpcbind $ sudo /etc/init.d/nfs-kernel-server restart #重启nfs服务 $ showmount -e #使用此命令后有”/home/nfs“则安装成功 </syntaxhighlight> :2,设备debug串口链接到PC机上,串口参数是115200 8N1(详细见[http://android1.norco.com.cn:7070/index.php/EMB-7541-COM 串口接口定义]) :在设备串口终端上,通过下面命令配置IP eth0: :<syntaxhighlight lang="bash" line> ~ # ifconfig eth0 192.168.8.189 </syntaxhighlight> :在设备串口终端,通过下面命令挂载PC机的/home/nfs目录到设备的/mnt/nfs目录(192.168.8.xx是PC机的IP,和设备eth0的IP处在同一网段即可): :<syntaxhighlight lang="bash" line> ~ # mount -t nfs -o nolock -o tcp 192.168.8.xx:/home/nfs /mnt/nfs ~ # cd /mnt/nfs ~ # ls #查看PC机共享的内容 </syntaxhighlight> :这样PC机共享出/home/nfs目录后,在设备的/mnt/nfs目录就可以访问PC机/home/nfs目录的内容。 <!-- ====视频网络直播==== :1,这个demo不是sdk里面自带的,是后期移植的,解码后分辨率只有1920x1080,30帧每秒,如果需要高清直播,需要客户自行移植。 ::<syntaxhighlight lang="bash" line> ~# ifconfig eth0 192.168.8.189 ~# cd /root/ ~# ./sample_rtsp </syntaxhighlight> :2,然后在vlc视频播放器的URL的流媒体栏输入:rtsp://192.168.8.189/stream_chn0.h264既可进行实时视频播放,注意安装vlc的电脑IP和设备IP在同一网段。 ::[[文件:EMB-7540-rtsp8-1.jpg|500px| 图8-1 VLC输入URL ]] :3,在ubuntu系统里面,打开video播放器,添加rtsp://192.168.8.189/stream_chn0.h264 即可实时视频播放,ubuntu电脑IP和设备IP在同一网段。 ::[[文件:EMB-7540-rtsp8-2.png|500px| 图8-2 video输入URL ]] ::[[文件:EMB-7540-rtsp8-3.png|500px| 图8-3 video直播视频 ]] --> ====设置RTC时间==== :查看当前时间 :<syntaxhighlight lang="bash" line> ~ # date Mon Jan 8 00:00:01 UTC 2018 </syntaxhighlight> :设置时间并保存到硬件 :<syntaxhighlight lang="bash" line> ~ # date -s "2019-1-17 11:38:45" #设置系统时间 ~ # hwclock -w #将时间保存到硬件 </syntaxhighlight> ====USB口U盘挂载==== :将U盘插入USB口,会有很多提示信息,其中比较有用的标识是sda: sda1信息(第一个U盘,后面以此是sdb1,sdc1...),然后通过下面命令进行U盘挂载,进入/mnt/usb目录可以看到U盘内容。 :<syntaxhighlight lang="bash" line> ~ # mount -t vfat /dev/sda1 /mnt/usb #假设看到的提示信息是sda1 ~ # cd /mnt/usb ~ # ls #查看U盘内容 </syntaxhighlight> ====TF口使用==== :将TF卡插入到设备TF卡槽内,重启系统,在终端会有mmc1: new high speed SD card at address 0001提示。使用下面命令进行挂载(mmcblk0是系统emmc使用,TF卡为mmcblk1),在 /mnt/mmc目录下可以看到TF卡里面的内容。 :<syntaxhighlight lang="bash" line> ~ # mount -t vfat /dev/mmcblk1p1 /mnt/mmc ~ # cd /mnt/mmc ~ # ls #查看TF卡内容 </syntaxhighlight> ====COM口使用==== :一个COM232,一个COM485,一个debug调试串口,引脚定义详见串口[http://android1.norco.com.cn:7070/index.php/EMB-7541-COM 接口定义]。 :软件上COM232口对应的设备是/dev/ttyAMA2,COM485对应的设备是/dev/ttyAMA1,debug串口对应的设备是/dev/ttyS000。 :调试串口默认参数是115200 8 N 1。
返回至
EMB-7542
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息