鸿蒙第一个应用程序 hello world

鸿蒙第一个应用程序 hello world

1、应用程序存放路径:

applications/sample/camera/app/src

2、编译指令:在源码的根目录下执行如下指令

python3 build.py ipcamera_hi3518ev300 -b debug

3、编译后输出文件:

out/ipcamera_hi3518ev300路径下:

OHOS_Image.bin

rootfs.img

userfs.img

4、uboot文件:目录路径vendor/hisi/hi35xx/hi3518ev300/uboot/out/boot下的

u-boot-hi3518ev300.bin

5、文件烧录

工具: hitools

文件地址分配以及器件类型如图
在这里插入图片描述
这里要注意的位置都用红框标记了起来,主要是芯片的型号以及地址分配。

第一步:先用串口擦除原来的uboot
在这里插入图片描述
有几点要注意:

1、擦除有概率会失败,关掉软件重新擦除即可。

1、如果始终擦除失败,有可能是uboot之前已经被擦除,那么再次擦除一定会失败。所以直接跳过这一步,直接到烧录环节即可。

第二步: 烧录固件

配置如下:
在这里插入图片描述
注意事项:

这里因为HiUSBBurn驱动安装,有几个坑需要注意

1、usb驱动一定要安装 , 驱动名: HiTool-HM-5.4.9-win32-x86_64.zip

2、还有一个软件zadig-2.5.exe(通用usb驱动),该驱动安装方法参考如下链接https://blog.csdn.net/wirner/article/details/106899388
(注: 这两个驱动网上都可以找到。)
3、驱动安装之后,插入usb到电脑时,这个驱动仍然一直在不停的装载以及卸载。当时总是以为驱动没有安装好(因为电脑一直不停的发出插入usb及拔出usb的声音),但是直接点击烧写之后,声音停止,同时烧录也能正常进行

1和2也不知道到底哪个生效,总之最好两个都装上,应该没有问题。

烧录成功之后截图如下:
在这里插入图片描述

6、单板重启及配置

切换到终端
在这里插入图片描述
如上图,点击左上角红框内的图标,切换到终端界面;点击右边黄绿色小图标进行串口配置,接着按几下回车,有hisilicon 出现说明已经连接成功。

在终端输入如下指令:

指令1:设置bootcmd内容,选择FLASH器件0,读取FLASH起始地址为0x100000,大小为0x600000的内容到0x40000000的内存地址。

setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";

指令2:表示设置bootargs参数为串口输出,波特率为115200,数据位8,rootfs挂载于FLASH上,文件系统类型为jffs2 rw,以支持可读写JFFS2文件系统。“rootaddr=7M rootsize=8M”处对应填入实际rootfs.img的烧写起始位置与长度,此处应与HiTool新增文件时所填大小相同。

setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M";

指令3:表示保存当前配置。

saveenv

通常指令1、指令2、指令3一般一起执行:

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";saveenv

指令4:然后执行reset 复位单板

reset

7、执行应用程序

在这里插入图片描述

单板重启之后,进入到bin目录下,执行./camera_app; 程序运行成功!
在这里插入图片描述

8、总结

本文没什么高深的理论,基本是按照官方文档进行的常规操作,但是由于有些坑在里面,耗了一些时间,有必要做个记录。

猜你喜欢

转载自blog.csdn.net/u012323667/article/details/110914754
今日推荐