[二] Nuttx移植-星瞳pyboard开发板_HotIce0-CSDN博客
一、各种配置文件位置说明
1、时钟配置
nuttx/boards/arm/stm32/stm32f103-minimum/include/board.h
board.h文件由于是主控芯片时钟,外设等的配置文件
2、mcu硬件资源
nuttx/arch/arm/include/stm32/chip
芯片硬件资源配置,一般是有的,不需要自己添加
3、引脚定义的配置:
nuttx/arch/arm/src/stm32/hardware/stm32f103c_pinmap.h
修改pin脚对应不同的功能
nuttx\boards\arm\stm32\stm32f103-minimum\src\stm32f103_minimum.h
4、对应板件更换模块的驱动代码
nuttx/boards/arm/stm32/stm32f103-minimum/src
如果不想使用里面的已有的驱动代码的文件命名,可以使用按照下面的步骤进行重新指定驱动代码:
-
把自定义的驱动文件放到src目录下,如下stm32_gpio_test.c
-
在src目录下,vi Make.defs,在该文件内,找到指定驱动文件的代码,进行替换
替换前:
替换后:
5、保存后make构建即可
二、示例
此处,我们修改sim的gpio驱动为自定义驱动,以及在app初始化函数中加入自定义的信息。
1、nuttx配置:开启GPIO示例
Device Drivers → IO Expander/GPIO Support->Enable IO Expander Support
Device Drivers → IO Expander/GPIO Support -> GPIO driver
Application Configuration → Examples->GPIO driver example
2、自定义gpio驱动
1、`cd nuttx/boards/sim/sim/sim/src`
2、复制gpio驱动`cp sim_gpio.c sim_gpio_test.c`
3、修改sim_gpio_test.c,在初始化GPIO函数中添加打印信息
`vi sim_gpio_test.c`
4、重新指定驱动文件的代码,替换为新的驱动文件
`vi Makefile`
3、在sim_appinit初始化函数中加入自定义的打印信息
`vi sim_appinit.c`
4、编译运行
`cd ~/nuttx/nuttx`
`make clean;make`
`./nuttx`