十一、e2studio VS STM32CubeIDE之宏函数展开

目录

一、概述/目的

二、复杂宏函数举例

三、编译-预处理

四、stm32cubeide和e2studio的预处理

[五、source insight和vscode](#五、source insight和vscode)


一、概述/目的

  • 复杂宏函数如何快速展开

二、复杂宏函数举例

复制代码
#define R_BSP_MODULE_START(ip, channel)            {FSP_CRITICAL_SECTION_DEFINE;                                   \
                                                    FSP_CRITICAL_SECTION_ENTER;                                    \
                                                    BSP_MSTP_REG_ ## ip(channel) &= ~BSP_MSTP_BIT_ ## ip(channel); \
                                                    BSP_MSTP_REG_ ## ip(channel);                                  \
                                                    BSP_MSTP_DMY_ ## ip(channel);                                  \
                                                    BSP_MSTP_DMY_ ## ip(channel);                                  \
                                                    BSP_MSTP_DMY_ ## ip(channel);                                  \
                                                    BSP_MSTP_DMY_ ## ip(channel);                                  \
                                                    BSP_MSTP_DMY_ ## ip(channel);                                  \
                                                    FSP_CRITICAL_SECTION_EXIT;}

三、编译-预处理

嵌入式科普(21)c代码究竟是如何一步步运行的之编译

三、编译的过程

3.1 linux gcc hello.c -o hello

预处理(生成预处理后的文件):

虽然 GCC 没有直接输出预处理后文件的选项,但你可以通过重定向输出到一个文件来查看预处理后的内容。

复制代码
gcc -E hello.c -o hello.i

-E 选项告诉 GCC 只进行预处理并停止。

在stm32cubeide、e2studio中如何预处理?

四、stm32cubeide和e2studio的预处理

  • stm32cubeide
  • e2studio

五、source insight和vscode

  • 对比结果不用多说
相关推荐
FreakStudio10 小时前
【电子DIY神器】通吃各种5线步进电机!I2C接口控制28BYJ-48五线四相步进电机
stm32·单片机·mcu·嵌入式·arm·技术栈·电子diy
学渣6765612 小时前
【GPIO8个函数解释】
stm32·单片机·嵌入式硬件
不不不丶19 小时前
STM32——RTC实时时钟
stm32·嵌入式硬件·实时音视频
damo王20 小时前
STM32 的编程方式总结
stm32·单片机·嵌入式硬件
买辣椒用券1 天前
STM32 vs ESP32:如何选择最适合你的单片机?
stm32·单片机·嵌入式硬件
广药门徒1 天前
FRP调用本地摄像头完成远程拍照
网络·stm32·单片机·智能路由器·腾讯云
爱学电子的刻刻帝1 天前
基于FreeRTOS和LVGL的多功能低功耗智能手表
stm32·freertos·lvgl·智能手表
weixin_508821651 天前
STM32在裸机(无RTOS)环境下,需要手动实现队列机制来替代FreeRTOS的CAN发送接收函数
stm32·单片机·嵌入式硬件
不不不丶1 天前
STM32——I2C通讯(软件模拟)
stm32·单片机·嵌入式硬件
星辰pid1 天前
stm32+esp8266+机智云手机app
stm32·单片机·嵌入式硬件