打印
[STM32L4]

stm32l476移植鸿蒙系统求助

[复制链接]
13347|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
walker2048|  楼主 | 2020-12-15 09:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 walker2048 于 2020-12-15 10:17 编辑

本人菜**一只,尝试着移植鸿蒙2.0系统到stm32l476rg_nucleo开发板。现在碰到一些问题,想问下论坛里的大佬是否可以给点提示,非常感谢。
环境配置描述:
目前已完成至设置好clang+gcc工具链(最后ld时使用arm-none-eabi-gcc)配置,编译参数根据cubeMX生成的makefile文件修改好了。该工具链与编译参数使用在cubeMX生成的标准程序里可正常运行(点灯OK,延时500毫秒OK,printf重定向串口输出OK)。
---------------------------
参数设置如下
defines = -DUSE_HAL_DRIVER -DSTM32L476xx
asmflags = -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard
#  -fshort-enums -target arm-none-eabi 这两个参数是clang用的
cflags = -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -fshort-enums -target arm-none-eabi -fPIC
cflags_c = -Og -Wall -fdata-sections -ffunction-sections -g -gdwarf-2
ldflags = -T ../../vendor/st/board/stm32l476rg/STM32L476RGTx_FLASH.ld -lc -lm -lnosys -specs=nano.specs -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Og -Wall -fdata-sections -ffunction-sections -g -gdwarf-2
---------------------------
问题描述如下,mcu的时钟定义设置为最高速80M,在cubeMX生成的标准程序里(不管是gcc编译或者clang编译),SystemCoreClock可顺利更新为80M,程序正常。但是在移植到鸿蒙的代码中,HAL库无法更新SystemCoreClock变量,不管是如何修改cubeMX的时钟定义(降频改配置,修改UART2时钟信号源),均无法正常运行点灯与串口输出功能,HAL_Delay功能也出错。目前判断是只要使用到SystemCoreClock变量的,都会出错。自己在单步调试中将SystemCoreClock变量赋值为80M,也无法正常运行程序。
--------------------------
想求助一下论坛里的大佬,是否能帮忙看一下到底是什么地方有问题。
源码地址附上:https://gitee.com/walker2048/hmos_iot,请切换到clang_stm32分支。
编译时需要LLVM,arm-none-eabi-gcc,gn,ninja工具,以及python3.7以上环境。Debug时需要Openocd和arm-none-eabi-gdb。
编译命令为python build.py stm32l476rg_nucleo(在源码根目录执行)。
如果大家懒得搭编译环境,可以使用我创建好的Docker镜像(arm-none-eabi-gcc工具链需要自行下载配置)
镜像运行命令:docker run -it --name build -v "D:/hmos_iot":"/mnt" walker2048/hm_build:slim_iot

使用特权

评论回复
沙发
yklstudent| | 2020-12-15 09:36 | 只看该作者
你也算先吃螃蟹的人了,好好踩坑,记得分享踩坑过程

使用特权

评论回复
板凳
gyh974| | 2020-12-15 10:35 | 只看该作者
这个光是环境搭建就比较难,这个系统不是普通人玩的

使用特权

评论回复
地板
walker2048|  楼主 | 2020-12-15 11:12 | 只看该作者
gyh974 发表于 2020-12-15 10:35
这个光是环境搭建就比较难,这个系统不是普通人玩的

还好吧。。。只是要求苛刻一点罢了

使用特权

评论回复
5
walker2048|  楼主 | 2020-12-15 11:13 | 只看该作者
yklstudent 发表于 2020-12-15 09:36
你也算先吃螃蟹的人了,好好踩坑,记得分享踩坑过程

估计下一个版本会好很多,目前这个版本坑确实很多,我只能说我自己水平太菜

使用特权

评论回复
6
xiaoqizi| | 2021-1-9 16:40 | 只看该作者
这是个什么系统啊

使用特权

评论回复
7
木木guainv| | 2021-1-9 16:42 | 只看该作者
这个环境不太好搭建

使用特权

评论回复
8
磨砂| | 2021-1-9 16:43 | 只看该作者
这个环境对系统有什么要求吗

使用特权

评论回复
9
晓伍| | 2021-1-9 16:44 | 只看该作者
会不会是一个bug呢

使用特权

评论回复
10
八层楼| | 2021-1-9 16:52 | 只看该作者
烧钱的系统啊

使用特权

评论回复
11
huangcunxiake| | 2021-1-9 21:56 | 只看该作者
单片机可以?

使用特权

评论回复
12
小灵通2018| | 2021-1-9 21:57 | 只看该作者
到时候分享一下啊。

使用特权

评论回复
13
pkoko| | 2021-1-10 14:02 | 只看该作者
环境搭建按指导书做,难度不大

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

31

帖子

0

粉丝