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

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

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值