【STM32开发中遇到的一些问题(会持续更新......)】

1、STM32添加固件库编译时没有生成对应的.h文件

 原因是添加了的固件库,没有使能。在工程中找到py32f0xx_hal_conf.h,将需要的功能取消注释即可。



2、Keil编译出现error:  #29: expected an expression

原因是初始化结构体写法是按C语言 C99标准,keil5默认是C89的标准,所以出错。

解决办法:在keil5中的options for target点击C/C++栏中勾选C99 Mode


3、Keil编译出现error:  #35: Please select first the target PY32F0xx device used in your application


4、Keil编译出现error: A1355U: A Label was found which was in no AREA

        这个是由于你选择的startup_py32f003xx.s文件不对,请仔细确认好该文件并放在合适的文件目录位置中

5、Err:Flash Download failed - “Cortex-M0”

        检查好杜邦线与仿真器的连接是否出现松动,另外在Target中把SWD的下载速度降下来

6、STM32 Debug下载程序不进去的问题

        会弹出以下窗口:

        

         但是JTAG下载器又可以正常读取到,就是下载不进去。

        最后解决:是把RESET脚接到3.3V ,然后再下载程序,此时就正常了。我猜测是Debug时没有正常退出仿真界面或者运行时芯片断电导致的。下载完成后,我还是把RESET脚默认悬空。


7、Keil编译if语句出现error:  #127: expected a statement

        出现这种错误的时候,一般是语句出现问题,我遇到的是if语句缺少大括号{}导致的。

8、STM32中ADC多通道采集相互影响的问题?

        ①这种情况大多是因为在切换的时候速度太快,转换不过来导致数据测量出错,互相影响,解决方法是在通道转换时,先将ADC采集通道关闭,然后再转换到第二个通道上去,这样就给了一个转换时间,使得转换顺利进行,不会出错。
        ②在多通道采样时,采样通道数如果比较多,通道切换中采样值会有延迟,导致采集到的数据不正确。解决办法是将第一次采样到的值扔掉,使用第二次采样的值。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在完成STM32毕设时,我遇到了以下问题,并采取了相应的解决方法: 1. 硬件问题:在使用STM32进行开发时,可能遇到链接问题、电路板问题等。为解决此类问题,我首先仔细检查硬件连接是否正确,确保电路板和外部组件的连接与原理图一致。如果还不能解决问题,我咨询同学或教师,或者通过查找相关论坛和文档来寻求帮助。 2. 软件问题:在使用STM32 CubeMX生成底层代码时,可能遇到生成的代码不完全符合需求的情况。针对这个问题,我修改生成的代码,添加必要的功能和调整参数。此外,我参考官方文档、教程和其他开发者的经验,以便更好地理解和解决软件问题。 3. 调试问题:在调试期间,可能出现程序运行不正常、功能不完善等问题。为了解决这些问题,我使用调试工具(如ST-Link)进行调试,并利用串口打印功能来输出程序运行状态和调试信息。同时,我问题细化为较小的部分,分步骤进行调试,以确定问题出现的具体位置和原因。 4. 编程问题:在编写代码时,可能遇到语法错误、逻辑错误等。为了解决这些问题,我仔细检查代码,使用IDE提供的代码分析工具查找并修复错误。此外,我还参考相关资料和其他开发者的经验,以确保代码的正确性和可靠性。 5. 学习问题:对于不熟悉的知识或技术,可能需要学习和提升自己的能力。我的解决方法是通过阅读相关文档、教材和参考书籍,观看在线教程和视频,参加培训班等来学习和理解相关知识。此外,我也积极参与相关的论坛和社区,与其他开发者进行交流和学习。 总之,解决STM32毕设遇到问题需要耐心、勤奋和持续学习的态度。通过仔细检查硬件连接、修改代码、调试程序等方法,我能够解决并克服遇到问题,最终顺利完成了毕设任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值