NuttX:如何移植新板件到NuttX/如何修改底层驱动

2023-05-16

[二] 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`

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NuttX:如何移植新板件到NuttX/如何修改底层驱动 的相关文章

随机推荐