stm32学习笔记一

作者在使用STM32进行开发时遇到汇编代码版本不匹配导致编译错误的问题,通过更换开发环境版本解决了此问题,并分享了在STM32开发中遇到的注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近小毅入手了一块stm32,考虑到其ARM cotexM3内核的强大性,决定学学。

今天是第一次接触,先从简单的开始。

小毅使用的开发环境是windows下的RVMDk,是keil的一个版本,keil大家都不陌生吧,哈哈,学过51的都知道,就不赘述了。

遇到了第一个问题:

led.axf: Error: L6218E: Undefined symbol SystemInit (referred from startup_stm32f10x_md.o).

这个函数是系统的启动代码里的,我也不知道为什么有问题,经过一顿google之后还是没能解决问题。

折腾了几分钟,小毅发现这段汇编代码既然是软件自动生成的,不妨看看头上的注释,一看果然版本号非常新,日期竟然是2010年的,直觉告诉我导致

这个问题的罪魁祸首应该是版本问题。

小毅又安装上了MDk的上一个版本,对比生成的startup code,果然有区别。哈哈。因为暂时没有时间研究汇编代码,所以这一大段跳过,直接把原版本的代码ctrl+C and ctrl+V放在了新的代码中,结果编译顺利~第一个hex文件顺利产生~


注意事项:

1、主函数返回值必须是int类型的;

2、stratup code版本不同值得注意。


【每天进步一点点,让优秀成为一种习惯】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值