阅界资讯

从C语言的main到STM32的main

阅阅界编辑部1阅读6分钟

推荐《从C语言的main到STM32的main》:作者把经验掰开揉碎讲得很细。下面按要点重新组织一遍,方便你快速抓住重点、用起来。

经典三问 Q: STM32 里的 main 是什么? A: 它是上电后由启动代码交给用户程序的入口函数,之后通常一直运行主循环。 Q: 为什么需要理解 main 的启动过程? A: 只有知道时钟、全局变量和外设初始化何时发生,才能判断程序到底从哪里开始、哪里出了问题。 Q: STM32 的 main 常见使用场景? A: 初始化芯片资源、启动任务循环,以及组织 LED、按键、串口和电机等模块的业务流程。 我第一次看到 STM32 的 GPIO 初始化代码时,真正卡住我的不是某个拼写,而是它看起来根本不像我熟悉的 C: [代码示例略] GPIO_InitTypeDef 是什么?为什么要先声明一个它,再往里面塞三个参数?这些参数是谁规定的?如果我把其中一个选错了,STM32 会不会直接完蛋?

经典三问 Q: STM32 里的 main 是什么? A: 它是上电后由启动代码交给用户程序的入口函数,之后通常一直运行主循环。 Q: 为什么需要理解 main 的启动过程? A: 只有知道时钟、全局变量和外设初始化何时发生,才能判断程序到底从哪里开始、哪里出了问题。 Q: STM32 的 main 常见使用场景? A: 初始化芯片资源、启动任务循环,以及组织 LED、按键、串口和电机等模块的业务流程。 我第一次看到 STM32 的 GPIO 初始化代码时,真正卡住我的不是某个拼写,而是它看起来根本不像我熟悉的 C: [代码示例略] GPIO_InitTypeDef 是什么?为什么要先声明一个它,再往里面塞三个参数?这些参数是谁规定的?如果我把其中一个选错了,STM32 会不会直接完蛋?更让人不安的是,这些东西像是突然从工程里冒出来的,写完之后,代码居然就能控制芯片上的一根引脚。

经典三问 Q: STM32 里的 main 是什么? A: 它是上电后由启动代码交给用户程序的入口函数,之后通常一直运行主循环。 Q: 为什么需要理解 main 的启动过程? A: 只有知道时钟、全局变量和外设初始化何时发生,才能判断程序到底从哪里开始、哪里出了问题。 Q: STM32 的 main 常见使用场景? A: 初始化芯片资源、启动任务循环,以及组织 LED、按键、串口和电机等模块的业务流程。 我第一次看到 STM32 的 GPIO 初始化代码时,真正卡住我的不是某个拼写,而是它看起来根本不像我熟悉的 C: [代码示例略] GPIO_InitTypeDef 是什么?为什么要先声明一个它,再往里面塞三个参数?这些参数是谁规定的?如果我把其中一个选错了,STM32 会不会直接完蛋?更让人不安的是,这些东西像是突然从工程里冒出来的,写完之后,代码居然就能控制芯片上的一根引脚。 后来我才发现,问题不在于 C 语言突然换了一套规则。

经典三问 Q: STM32 里的 main 是什么? A: 它是上电后由启动代码交给用户程序的入口函数,之后通常一直运行主循环。 Q: 为什么需要理解 main 的启动过程? A: 只有知道时钟、全局变量和外设初始化何时发生,才能判断程序到底从哪里开始、哪里出了问题。 Q: STM32 的 main 常见使用场景? A: 初始化芯片资源、启动任务循环,以及组织 LED、按键、串口和电机等模块的业务流程。 我第一次看到 STM32 的 GPIO 初始化代码时,真正卡住我的不是某个拼写,而是它看起来根本不像我熟悉的 C: [代码示例略] GPIO_InitTypeDef 是什么?为什么要先声明一个它,再往里面塞三个参数?这些参数是谁规定的?如果我把其中一个选错了,STM32 会不会直接完蛋?更让人不安的是,这些东西像是突然从工程里冒出来的,写完之后,代码居然就能控制芯片上的一根引脚。 后来我才发现,问题不在于 C 语言突然换了一套规则。还是变量、结构体、函数和地址,只是这些东西不再对着电脑屏幕工作,而是要绕一圈,落到芯片里的寄存器,再从寄存器落到 PC13 的电平上。

经典三问 Q: STM32 里的 main 是什么? A: 它是上电后由启动代码交给用户程序的入口函数,之后通常一直运行主循环。 Q: 为什么需要理解 main 的启动过程? A: 只有知道时钟、全局变量和外设初始化何时发生,才能判断程序到底从哪里开始、哪里出了问题。 Q: STM32 的 main 常见使用场景? A: 初始化芯片资源、启动任务循环,以及组织 LED、按键、串口和电机等模块的业务流程。 我第一次看到 STM32 的 GPIO 初始化代码时,真正卡住我的不是某个拼写,而是它看起来根本不像我熟悉的 C: [代码示例略] GPIO_InitTypeDef 是什么?为什么要先声明一个它,再往里面塞三个参数?这些参数是谁规定的?如果我把其中一个选错了,STM32 会不会直接完蛋?更让人不安的是,这些东西像是突然从工程里冒出来的,写完之后,代码居然就能控制芯片上的一根引脚。 后来我才发现,问题不在于 C 语言突然换了一套规则。还是变量、结构体、函数和地址,只是这些东西不再对着电脑屏幕工作,而是要绕一圈,落到芯片里的寄存器,再从寄存器落到 PC13 的电平上。 在电脑上, main 可以下班 普通 C 程序大概是这样: [代码示例略] 程序启动,变量有了值, printf 把文字送到终端, return 0 把结果交给操作系统。

读完别停:把最触动你的一条记下来,这周就用上。能落地的阅读才算数,欢迎回来聊聊你的实践结果。 来源|博客园《从C语言的main到STM32的main》,https://www.cnblogs.com/zw-awa/p/22957997.html

工具方法工具实践

评论(0)

暂无评论,来抢第一条。