YuzukiXR806 使用 FreeRTOS 开发运行Hello Demo
-
下载SDK
打开全志客户服务平台,找到XR806的SDK,翻到第二页找到v1.2.1版本。
一定要下载v1.2.1版本
一定要下载v1.2.1版本
一定要下载v1.2.1版本相关说明:
【严重警告】不要用全志客户服务平台Freertos v1.2.0版本编出来的固件烧到XR806开源鸿蒙开发板,否则板子会烧掉
https://bbs.aw-ol.com/topic/1124/share/1然后拉取代码,拉代码之前务必确认正确添加了本机公钥。配置方法见https://www.bilibili.com/video/BV1gu411q7E8/
配置工具链
下载gcc-arm-none-eabi-8-2019-q3-update编译器,并解压。
~$ wget https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/8-2019q3/RC1.1/gcc-arm-none-eabi-8-2019-q3-update-linux.tar.bz2 ~$ tar -jvxf gcc-arm-none-eabi-8-2019-q3-update-linux.tar.bz2
打开
gcc.mk
文件,修改CC_DIR :=
到工具链位置。修改前
修改后
编译Demo
make menuconfig
然后进入这样的窗口
键盘方向键选择到Exit,回车
选择Yes,保存配置。
然后就可以编译demo了
make PRJ=demo/hello_demo
制作镜像
进入上一步的demo目录下:
cd project/demo/hello_demo/gcc/
执行
make image
可以看到:
Flash Layout: sec bin 0 boot_40M.bin : flash_offs: 0x00000000( 0K) data_size: 0x00002F28( 12K) sec bin 1 app.bin : flash_offs: 0x00004000( 16K) data_size: 0x00004920( 19K) sec bin 2 app_xip.bin : flash_offs: 0x00029800( 166K) data_size: 0x000058D0( 23K) generate image: xr_system.img cp -t ../../../../out/ ../image/"xr806"/*.bin ../image/"xr806"/xr_system.img *.map
回到SDK根目录下可以看到out文件夹,进入后可见输出文件:
打开烧录软件PhoenixMC,选择编译出来的固件,选择COM口,选择115200
按住UPG键,点一下RST键让其进入下载模式
运行
-
问题来了,运行完hello demo后呢??怎么进行开发?需要了解Makefile文件,重新写一遍?因为要增改文件。
-
来个xr872整个活
-
@wlb965 对
-
@yuzukitsuru
嗯,Makefile一直没学,因为我在想能不能直接通过该Makefile文件就可以持续的开发,因为BootLoader不用改,编译器会自己生成链接脚本,所以我只需要把后面新增的文件加入到路径中就可以了,或者直接include官方的库函数就可以进行后续的开发。还有一个大问题就是,能不能设置当芯片出现错误的时候芯片自动打印出backtrace,这样这样方便调试,定位错误。 -
@wlb965 可以,project里按照那个目录结构编写就行了,不需要完全懂
-
@yuzukitsuru
但是,我感觉还是有点难下手。我其实也就是加几个自己写的文件,可能还得包括一下一些内核的头文件,如何就编译,然后make image然后就烧录,再之后就是debug。我先琢磨一下呢,不会再发帖了。 -
奇怪,我下载下来,配好环境,make menuconfig 会提示缺少 <ncurses.h> 文件,为啥楼主那么顺利的 :
$ make menuconfig make[1]: Entering directory '/cygdrive/d/Work/xr806_sdk/tools/config' HOSTCC mconf.c In file included from mconf.c:23: lxdialog/dialog.h:19:10: fatal error: ncurses.h: No such file or directory 19 | #include <ncurses.h> | ^~~~~~~~~~~ compilation terminated. make[1]: *** [Makefile:24: build/mconf.o] Error 1 make[1]: Leaving directory '/cygdrive/d/Work/xr806_sdk/tools/config' /cygdrive/d/Work/xr806_sdk tools/config/mconf ./Kconfig make: tools/config/mconf: No such file or directory make: *** [Makefile:124: menuconfig] Error 127
-
@dream 缺ncurses,包管理器进行安装
-
@yuzukitsuru 是的,后来我也发现了。谢谢。
Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号