打开/关闭搜索
搜索
打开/关闭菜单
71
34
49
838
Robuddy
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
上传文件
打开/关闭外观设置菜单
无法加载偏好设置。请检查您的网络连接并重试。
重试
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。
user-interface-preferences
个人工具
讨论
贡献
创建账号
登录
编辑“︁
机器人大赛/第二十二届/人民当家作组/雪饼-电控升级计划
”︁(章节)
来自Robuddy
分享此页面
更多语言
查看
阅读
编辑
编辑源代码
查看历史
associated-pages
页面
讨论
更多操作
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
== STM32:两条技术路径,入门推荐 HAL 库 == STM32 是意法半导体推出的 32 位单片机,性能比 Arduino 强一个量级——主频更高、外设更丰富,但上手难度也明显更大。 {{Warning|校赛定位:除非你有两周以上的提前量,否则不建议在校赛阶段碰 STM32。我们队决赛前一周想换 STM32,结果没赶上,血的教训。}} === 路径一(推荐入门):HAL库 + CubeMX + Keil5 === 为什么推荐这条路径?因为 HAL 库把底层寄存器操作都封装成了函数,你不需要一上来就纠结时钟树怎么配、寄存器怎么改,先把业务逻辑跑通再说。对于大一新生,这种"先看到成果"的正反馈非常重要。 '''工作流程:''' # '''STM32CubeMX''':图形化配置工具,点鼠标选引脚、配时钟、设外设,自动生成初始化代码 # '''Keil5(MDK)''':CubeMX 生成 Keil 工程文件后,用 Keil 打开,在里面写业务逻辑(比如电机控制、通信协议),最后在 Keil 里编译、烧录、调试 两者配合使用:CubeMX 负责"搭架子",Keil5 负责"填内容"。 入门门槛:需要熟悉两套软件的操作,但 CubeMX 的图形化界面大大降低了配置难度,网上 HAL 库教程也最多,遇到问题好搜答案。 === 路径二(进阶):标准库 + Keil5 === 标准库是 ST 早期推出的固件库,特点是偏底层,需要直接操作寄存器。学完之后你对单片机的理解会更透彻——因为你知道每一行代码背后在改什么硬件状态。 代价是:要学的东西多得多。需要手动建工程、配启动文件、查寄存器手册,一个 GPIO 点灯可能就要折腾半天。 {{Note|不推荐大一新手从这条路起步。如果以后想补这块,B 站"江科大 STM32"教程是经典入门课程。}} 需要的软件:只装一个 Keil5 就够了,不需要 CubeMX。新建工程时手动添加启动文件、标准库源文件,并配置头文件路径和预处理器宏(如 USE_STDPERIPH_DRIVER),以及指定芯片型号和烧录工具(如 ST-Link)。 === HAL库 vs 标准库:怎么选? === {| class="wikitable" ! !! HAL库(推荐入门) !! 标准库(进阶) |- | 上手速度 || 快,CubeMX 帮你配好底层 || 慢,每步都要自己搭 |- | 学习内容 || 学调用 API 和业务逻辑 || 学寄存器、时钟树、启动文件 |- | 对硬件的理解 || 较浅,API 封装了细节 || 深入,知道每行代码在操作什么 |- | 学习动力 || 快速看到灯闪、电机转,正反馈强 || 前期挫折感强,容易劝退 |- | IDE 组合 || CubeMX(配置)+ Keil5(编译烧录) || Keil5 单件搞定 |- | 适合人群 || 大一新生、校赛选手、想快速出活 || 想深入底层、为后续比赛/工作打基础 |} 我的建议:先用 HAL 库把车跑起来,获得成就感之后,如果还有余力,再回头补标准库的知识。先会开车,再学修车,顺序很重要。
摘要:
请注意,所有对Robuddy的贡献均被视为依照知识共享署名-非商业性使用-相同方式共享发表(详情请见
Robuddy:著作权
)。如果您不希望您的文字作品被随意编辑和分发传播,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
编辑“︁
机器人大赛/第二十二届/人民当家作组/雪饼-电控升级计划
”︁(章节)
来自Robuddy