stm32最小开发板原理图 都需要用什么相关软件呢求指教

小圈 2024-04-09 94次阅读

本文目录

  1. stm32数组越界一定会进硬件错误中断吗
  2. 小白想学习stm32***都需要用什么相关软件呢求指教

stm32数组越界一定会进硬件错误中断吗

stm32数组越界一定会进硬件错误中断的。可以从以下几个方面查找原因:

1.意外中断。

是否打开了某个中断,但是没有响应和清除中端标志,导致程序一直进入中断,造成死机假象2.中断变量处理不妥。

若定义某些会在中断中修改的全局变量,这时要注意两个问题:

首先为了防止编译器优化中断变量,要在这些变量定义时前加volatile,其次在主循环中读取中断变量前应该首先关闭全局中断,防止读到一半被中断给修改了,读完之后再打开全局中断;否则出现造成数据乱套。

3.地址溢出,常见错误为指针操作错误。我要着重说的是数组下标使用循环函数中循环变量,如果循环变量没控制好则会出现数组下标越界,意外修改系统的寄存器造成死机,这种情况下如果死机说明运气好,否则后面不知道发生什么头疼的事。

4.无条件的死循环;比如使用while(x);等待电平变化,正常情况下x都会变成0,就怕万一,因此最好加上时间限制;5.看门狗没有关闭。

有的单片机即使没使用看门狗开机时也有可能意外自动开启了最小周期的看门狗,导致软件不断复位,造成死机,这个要看芯片手册,最好在程序复位后首先应该显式清除看门狗再关闭看门狗;6.堆栈溢出。

最难查找的问题,对于容量小的单片机,尽量减少函数调用层级,减少局部变量,从而减少压栈的时候所需的空间。

当你把以上几条都试过不能解决问题,试一试把你的被调用少函数直接内置到调用的地方并且把占用RAM大的局部变量改成全局变量,试一试说不定就可以了。

小白想学习stm32***都需要用什么相关软件呢求指教

问STM32相关的使用软件,说明学习思路很正确,单片机是一门动手课程,没有必要抱着书去看,而是要去实际动手操作,遇到具体问题了才去查找资料解决问题。在学习STM32的过程中会用到以下软件。

1.编程环境:KeilMDK

STM32单片机需要编程,就必须用到编程环境,KEIL是应用最广泛的STM32单片机编程环境,该软件界面友好、易操作、用户体验很好,很受欢迎。但是该软件存在版权问题,在商业使用上可能需要购买license。

其实,支持STM32编程的软件非常多,在ST的官网列出了足有15个之多,大部分都没有听说过,大家可以根据自己的实际使用情况去选用。

2.图形配置软件:STM32CUBE

这个是官方推出的可视化图形配置软件,通过该软件可以具体的查看每一款单片机的引脚情况、复用功能情况、片上资源等,所有功能一目了然,就跟C8051F的交叉配置软件一样。但是目前该软件还不支持代码生成功能。添加该功能的呼声很高,希望官方能听到及时推出。

3.原理图设计软件:AltiumDesigner

学习单片机是为了做产品,做产品必然要画原理图,这时就要用到原理图和PCB设计软件。这种软件在国内比较流行的是AltiumDesigner、Cadence、Mentor等。使用这种软件的目的是为了根据产品需求设计原理图从而设计PCB做出板子调试产品。大家可以根据自己的喜好和资源选用使用哪种软件。

4.其他辅助软件

在学习单片机和设计电子产品的过程中,根据不同的功能会用到各种各样的软件。在调试串口通信时要用到串口调试软甲,在设计点阵时要用到取字模软件,在调试蓝牙功能时要用到蓝牙调试助手,在下载程序时可能用到MCUISP或者STVP等烧录软件。总之,会有比较多的软件,这个在用到该功能时才去使用。

在学习之处,先把跟单片机紧密相关的软件,如编程环境软件使用起来。

以上就是这个问题的回答,感谢留言、评论、转发。

更多精彩内容请关注本头条号:玩转嵌入式。感谢大家。



发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。