AliOS Things增加自己的开发板STM32F407ZET6,使用CubeMX库-阿里云开发者社区

开发者社区> IoT> 正文

AliOS Things增加自己的开发板STM32F407ZET6,使用CubeMX库

简介: AliOS Things增加自定义开发板,使用CubeMX生成stm32f407zet6对应芯片板

1.在board/README.md中有需要的各个文件说明
2.复制一个已经有的3.0版本的板子进行修改
2.1startup.c不用修改
3.board文件
3.1仅用串口作为说明,其他IO/SPI同样使用(现在就测试这么多)
如结构体声明:image
变量声明:image
3.1.1结构体是配合board.c中的
image
image
image
image
3.1.2注意这里仅仅完成了stduart_init()的整个流程
3.1.3作用:就是将CubeMX中的HAL库的初始化与本系统对接,其中有些宏定义,变量值不一样就通过GPIO_MAPPING结构体转换。
3.1.4当然,HAL生成的其实用得不多,我就仅仅用到stm32f4xx_hal_msp.c(其实就是IO端口的配置初始化,以及是否开启中断),其他的其实已经在platform/mcu已经实现,不用自己做
3.1.5这样就可以使用inlude/aos/hal/uart.h中的对应函数使用
4.这个是CubeMX中生成的void SystemClock_Config(void),直接复制替换就行
4.1最终在image
调用
5.这个与CubeMX中的有些不一样
image
6.重定向printf中的输出与输入
image
6.1注意其中第一个变量改为了我串口中的第一个uart_0→PORT_UART_STD=0(这里宏定义0对应的变量一定是标准输入输出的设备);
7.k_config文件暂时不作修改
8.partition_conf.c就是划分芯片的flash,暂时不修改
9.拷贝CubeMX中生成的startup_stm32f407xx.s(这里注意,生成的时候改为makefile目标哟)
10.拷贝CubeMX中生成的stm32f4xx_hal_conf.h(其实就是个根据使用引用对应的头文件及相关宏定义,方便与HAL库的裁剪)
11.修改aos.mk(最好复制stm32f401的作修改)
11.1 NAME:=改为文件夹名字
image
$(NAME)_SOURCES表示需要编译的源文件(.c)文件
image
.s是启动汇编文件
.ld是链接文件(前面忘了说,这个也是CubeMX会生成的
GLOBAL_INCLUDES 头文件包含路径
下面这个就是自己尝试了,好像是留给后面的定义使用的
12.文件夹下的Config.in,一样的照着抄就行(注意几个地方“-”要改为“_”)
image
13.一定要修改board/Config.in(这个玩意就是板级下的最高层,只有在这里增加了你的选项,配置才能生成)
image
13.1感觉就是一阵复制粘贴,然后把需要的地方改为自己的名字
14这样就可以选择helloworld,再选中自己的开发板了

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
IoT
使用钉钉扫一扫加入圈子
+ 订阅

物联网软硬件开发者一站式基地

其他文章