0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【OpenHarmony开发】基于Hi3518开发板开发的智能猫眼(案例演示)

电子发烧友论坛 ? 2022-04-11 15:07 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1

概述


本Demo是基于Hi3518开发板,使用开源OpenHarmony开发的RTSP协议流媒体应用。达到将Hi3518开发板中摄像头获取的数据通过RTSP协议传输到手机并显示 。

rtsp实现可参考文档:RTSPServer


1.1 应用运行效果图

745b5088-b2ac-11ec-82f6-dac502259ad0.png

1.2 设备与手机间交互示意图

748a38da-b2ac-11ec-82f6-dac502259ad0.png

如上图所示,手机播放3518摄像头采集的视频数据。

2

快速上手


2.1 硬件开发环境准备

1. 预装windows系统的PC机

2. Hi3518EV300 IoT Camera开发板

3. USB转串口线、网线(Windows工作台通过USB转串口线、网线与开发板连接)

4. 开发板介绍参照文档:Hi3518开发板介绍

5. 淘宝店Hi3518EV300开发板购买地址:HarmonyOS HiSpark Aries IPC 摄像头(Hi3518E)开发板套件

2.2 下载源码准备

1. 注册码云gitee账号。

2. 注册码云SSH公钥,请参考码云帮助中心的公钥管理:https://gitee.com/help/articles/4181

3. 安装下载工具

sudo apt-get install git-lfs
sudo apt-get install curl
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1

4. 安装git客户端并配置用户信息。

git config --global user.name "yourname"
git config --global user.email "your-email-address"
git config --global credential.helper store

5. 安装码云repo工具,可以执行如下命令。

curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo
chmod a+x /usr/local/bin/repo
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests

下载OpenHarmony源码

#特别注意:请下载OpenHarmony 1.0.1 版本,后续会更新支持OpenHarmony其他版本
repo init -u git@gitee.com:openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'

下载smart_door_viewer_3518代码

具体仓库地址: knowLEDge_demo_smart_home
通过git命令下载(方便后期代码上传管理,建议先将仓库fork到自己账号目录,然后再下载):

git clone git@gitee.com:xxxxxxx/knowledge_demo_smart_home.git
其中xxxxxxx为fork后相关账号名字。

代码拷贝


1.在OpenHarmony的vendor目录下新建一个team_x的目录:

mkdir vendor/team_x

2.将下载的智能油烟机代码的代码拷贝到新建的team_x下面:

cp -RF ../knowledge_demo_smart_home/dev/team_x/smart_door_viewer_3518/ vendor/team_x/

3.将下面文件替换到openHarmony1.0.1源码下的文件


749e57e8-b2ac-11ec-82f6-dac502259ad0.png

代码目录结构

├── smart_door_viewer_3518
│  ├── BUILD.gn                                        // 编译脚本
│  ├── include
│  │  ├── camera_sample.h                                // 摄像头定义头文件
│  │  ├── rtp.h                    // rtp协议传输头文件
│  │  ├── rtsp_log.h                 // 打印调试头文件
│  │  └── rtsp_server.h                // rtsp_server头文件
│  └── src
│    ├── camera_sample.cpp              // 摄像头实现
│    ├── main.cpp                  // 主函数
│    ├── rtp.cpp                   // rtp协议实现
│    └── rtsp_server.cpp               // rtsp协议实现
├── foundation       
│  └── multimedia
│    └── media_lite
│      ├── frameworks
│      │  └── recorder_lite 
│      │    ├── recorder.cpp          //增加获取h.265数据存放至环形缓冲区接口实现
│      │    ├── recorder_impl.cpp        //增加向应用层提供环形缓冲区接口实现
│      │    └── recorder_impl.h         //增加向应用层提供环形缓冲区接口定义
│      └── interfaces
│        └── kits
│          └── recorder_lite
│            └── recorder.h         //增加获取h.265数据存放至环形缓冲区接口定义

2.3 Linux编译服务器开发环境准备


开发基础环境由windows 工作台和Linux 编译服务器组成。windows 工作台通过samba 服务或ssh 方式访问Linux编译服务器。其中windows 工作台用来烧录和代码编辑,Linux编译服务器用来编译OpenHarmony代码,为了简化步骤,Linux编译服务器推荐安装Ubuntu20.04。


参考官方文档搭建开发Linux编译环境。

1. 系统基础环境搭建

2. Hi3518搭建环境


编译

源码和环境准备完后,接下来就是编译,编译涉及的指令有2条,hb set和hb build -f

hb set     --     设置工程目录和选择对应的目标,通过键盘的上下键来选择。

74b3e978-b2ac-11ec-82f6-dac502259ad0.png

hb build -f -- 开始全量编译。(hb build 为增量编译)

编译完后会生成对应整个系统固件(u-boot-hi3518ev300.bin,OHOS_Image.bin, rootfs_vfat.img, userfs_vfat.img)


以下表格为所有生成的固件及对应的位置:

74cdac0a-b2ac-11ec-82f6-dac502259ad0.png

2.4 固件烧录烧录工具选择

固件编译完后,是需要烧录到单板的。这里我们用的是HiTool工具烧录的。(HiTool工具下载地址:HiHope官网)


烧录步骤

打开HiTool工具,如下图:

烧写步骤按照图中标注即可。点击擦除后再拔出USB口再接入。

74dd33fa-b2ac-11ec-82f6-dac502259ad0.png

擦除成功如下所示。

74f1d878-b2ac-11ec-82f6-dac502259ad0.png

然后按如下图选择,再点击烧写。

7508d212-b2ac-11ec-82f6-dac502259ad0.png

烧录成功后,会弹出如下提示,单板也会自行启动。

7518309a-b2ac-11ec-82f6-dac502259ad0.png

单板在启动的时候需要设置bootargs,否则不能正常启动。单板第一次启动会停在hisilicon界面:

752bb084-b2ac-11ec-82f6-dac502259ad0.png

输入以下启动参数:

setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";
setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M";
save;
reset

......

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    25

    文章

    5805

    浏览量

    106926
  • OpenHarmony
    +关注

    关注

    31

    文章

    3870

    浏览量

    19026
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    开源鸿蒙开发必备!OpenHarmony替换Full SDK全攻略

    本文介绍开源鸿蒙OpenHarmony替换FullSDK的方法,演示设备为触觉智能PurplePiOH鸿蒙开发板获取FullSD
    的头像 发表于 06-06 18:11 ?373次阅读
    开源鸿蒙<b class='flag-5'>开发</b>必备!<b class='flag-5'>OpenHarmony</b>替换Full SDK全攻略

    Ubuntu系统安装Docker详细攻略,触觉智能RK3568开发板演示

    本文介绍Ubuntu系统安装Docker方法,使用触觉智能EVB3568鸿蒙开发板演示,搭载瑞芯微RK3568,四核A55处理器,主频2.0Ghz,1T算力NPU;支持开源鸿蒙
    的头像 发表于 06-06 18:05 ?321次阅读
    Ubuntu系统安装Docker详细攻略,触觉<b class='flag-5'>智能</b>RK3568<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    贝启BQ3568HM 开发板被选用为 OpenHarmony 明星开发板

    经开放原子开源基金会OpenHarmony社区官方测评评选,贝启科技BQ3568HM开源鸿蒙开发板被正式选用为OpenHarmony明星开发板。BQ3568HM开源鸿蒙
    的头像 发表于 05-25 00:22 ?842次阅读
    贝启BQ3568HM <b class='flag-5'>开发板</b>被选用为 <b class='flag-5'>OpenHarmony</b> 明星<b class='flag-5'>开发板</b>

    Linux开发板CAN总线测试方法,触觉智能RK3568开发板演示

    本文介绍Linux开发板CAN总线测试方法,使用触觉智能EVB3568鸿蒙开发板演示,搭载瑞芯微RK3568,四核A55处理器,主频2.0Ghz,1T算力NPU;支持
    的头像 发表于 04-11 19:14 ?456次阅读
    Linux<b class='flag-5'>开发板</b>CAN总线测试方法,触觉<b class='flag-5'>智能</b>RK3568<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    鸿蒙北向开发OpenHarmony5.0 DevEco Studio开发工具安装与配置

    本文介绍OpenHarmony5.0 DevEco Studio开发工具安装与配置,鸿蒙北向开发入门必备!由触觉智能Purple Pi OH鸿蒙开发
    的头像 发表于 03-28 18:05 ?1003次阅读
    鸿蒙北向<b class='flag-5'>开发</b><b class='flag-5'>OpenHarmony</b>5.0 DevEco Studio<b class='flag-5'>开发</b>工具安装与配置

    北京迅为RK3568开发板OpenHarmony系统南向驱动开发内核HDF驱动框架架构

    北京迅为RK3568开发板OpenHarmony系统南向驱动开发内核HDF驱动框架架构
    的头像 发表于 03-11 14:13 ?1225次阅读
    北京迅为RK3568<b class='flag-5'>开发板</b><b class='flag-5'>OpenHarmony</b>系统南向驱动<b class='flag-5'>开发</b>内核HDF驱动框架架构

    Linux系统更换开机logo方法教程,触觉智能RK3562开发板演示

    本文介绍Linux系统更换开机logo方法教程,通用RK3566、RK3568、RK3588、RK3576等开发板,触觉智能RK3562开发板演示
    的头像 发表于 01-06 10:53 ?906次阅读
    Linux系统更换开机logo方法教程,触觉<b class='flag-5'>智能</b>RK3562<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    OpenHarmony源码编译后烧录镜像教程,RK3566鸿蒙开发板演示

    本文介绍瑞芯微主板/开发板编译OpenHarmony源码后烧录镜像的教程,触觉智能Purple Pi OH鸿蒙开发板演示。搭载了瑞芯微RK3
    的头像 发表于 12-30 10:08 ?964次阅读
    <b class='flag-5'>OpenHarmony</b>源码编译后烧录镜像教程,RK3566鸿蒙<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    OpenHarmony怎么修改DPI密度值?触觉智能RK3566鸿蒙开发板演示

    开源鸿蒙OpenHarmony系统下,修改DPI密度值的方法,触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566四核处理器,Laval鸿蒙社区推荐
    的头像 发表于 12-24 11:46 ?851次阅读
    <b class='flag-5'>OpenHarmony</b>怎么修改DPI密度值?触觉<b class='flag-5'>智能</b>RK3566鸿蒙<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    瑞芯微主板/开发板Linux系统播放音频方法,触觉智能RK3562开发板演示

    本文介绍瑞芯微方案主板/开发板Linux系统播放音频的方法,触觉智能RK3562开发板演示,通用RK3566、RK3568、RK3588等
    的头像 发表于 12-13 11:40 ?1051次阅读
    瑞芯微主板/<b class='flag-5'>开发板</b>Linux系统播放音频方法,触觉<b class='flag-5'>智能</b>RK3562<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    OpenHarmony默认30秒熄屏太麻烦?触觉智能鸿蒙开发板教你轻松取消

    OpenHarmony系统开机后 30 秒会自动息屏,教大家两招轻松取消自动息屏,触觉智能Purple Pi OH鸿蒙开发板演示,已适配全新Open
    的头像 发表于 12-09 11:45 ?930次阅读
    <b class='flag-5'>OpenHarmony</b>默认30秒熄屏太麻烦?触觉<b class='flag-5'>智能</b>鸿蒙<b class='flag-5'>开发板</b>教你轻松取消

    OpenHarmony属性信息怎么修改?触觉智能RK3566鸿蒙开发板演示

    本文介绍开源鸿蒙OpenHarmony系统下,修改产品属性信息的方法,触觉智能Purple Pi OH鸿蒙开发板演示,已适配全新OpenHarmon
    的头像 发表于 11-27 09:31 ?846次阅读
    <b class='flag-5'>OpenHarmony</b>属性信息怎么修改?触觉<b class='flag-5'>智能</b>RK3566鸿蒙<b class='flag-5'>开发板</b>来<b class='flag-5'>演示</b>

    如何在Linux系统实现屏幕旋转?触觉智能RK3568鸿蒙开发板演示

    本文介绍Linux系统实现屏幕旋转的方法,以解决产品形态的不同的展现方式,触觉智能EVB3568鸿蒙开发板演示,现已发布全新OpenHarmony5.0 Release固件!
    的头像 发表于 11-19 23:42 ?1192次阅读
    如何在Linux系统实现屏幕旋转?触觉<b class='flag-5'>智能</b>RK3568鸿蒙<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    如何在开源鸿蒙OpenHarmony开启SELinux模式?RK3566鸿蒙开发板演示

    本文介绍开源鸿蒙OpenHarmony系统下,开启/关闭SELinux权限的方法,触觉智能Purple Pi OH鸿蒙开发板演示,已适配全新Open
    的头像 发表于 11-18 19:03 ?972次阅读
    如何在开源鸿蒙<b class='flag-5'>OpenHarmony</b>开启SELinux模式?RK3566鸿蒙<b class='flag-5'>开发板</b><b class='flag-5'>演示</b>

    触觉智能Purple Pi OH鸿蒙开发板成功适配OpenHarmony5.0 Release,开启新征程

    触觉智能Purple Pi OH鸿蒙开发板,成功适配OpenHarmony5.0 Release版本!为大家带来OpenHarmony5.0特性讲解!关注触觉
    的头像 发表于 10-25 10:51 ?1238次阅读
    触觉<b class='flag-5'>智能</b>Purple Pi OH鸿蒙<b class='flag-5'>开发板</b>成功适配<b class='flag-5'>OpenHarmony</b>5.0 Release,开启新征程