
上QQ阅读APP看书,第一时间看更新
2.7 驱动配置
RT-Thread使用SCons构建工程,使用基于Kconfig机制的menuconfig工具配置工程。因此不仅要实现驱动,还要实现驱动相关的配置选项:一是Kconfig配置,配置好的配置文件将会在menuconfig工具中形成对应的配置界面;二是进行SConscript配置,配置好后,相应的驱动文件将会被添加到工程中。后面各章的驱动相关配置选项与此类似,如无特殊配置将不再赘述。
1.Kconfig配置
下面参考bsp/stm32/stm32f407-atk-explorer/board/Kconfig文件配置串口驱动的相关选项,如下所示:

代码段中相关宏的说明如下所示。
❏BSP_USING_UART:串口驱动代码对应的宏定义,这个宏控制串口驱动相关代码是否会添加到工程中。
❏RT_USING_SERIAL:串口驱动框架代码对应的宏定义,这个宏控制串口驱动框架的相关代码是否会添加到工程中。
❏BSP_USING_UART1:串口设备1对应的宏定义,这个宏控制串口设备1是否会注册到系统中。
❏BSP_UART1_RX_USING_DMA:串口设备1使用DMA接收数据。
2.SConscript配置
在HAL_Drivers/SConscript文件中为串口驱动添加判断选项,代码如下所示。这是一段Python代码,表示如果定义了宏BSP_USING_UART,则drv_uart.c会被添加到工程的源文件中。
