keil出错情况及解决办法 如何自学stm32?
如何自学stm32?
答主作为在嵌入式开发领域奋斗拼搏了十多年的老兵,其中STM32单片机可以说用得非常多。今天注意到了题主的这个问题,本来借助于这个机会,回顾曾经帮一下忙自己是如何就开始入门STM32到开发完毕产品的。期望我的经历都能够给大家去学习STM32所帮助和启发。
答主从本科开始相互C51单片机开始,也算正式入行了嵌入式MCU的新的道路。可以参加校级的电子设计大赛,只不过赞助的原因,选择了当时新款的凌阳单片机做了一款智能语音声控门锁。攻读硕士期间,虽说主要注意的竖向项目都是以西门子/欧姆龙PLCIntouch/组态王HMI重点,但是始终还是在课余凭借TI的MSP430单片机可以制作了两款GPS定位和GSM数传产品,并接受了产品化的尝试和探寻中。本科毕业组建到华为公司以后,担任嵌入式的软件驱动程序开发工程师。外界了大量的海思自研和各形主流的MCUSOC芯片,嵌入式Linux能力有了很小的提高。不过没有接触当时最流行的的STM32。
后来我们从另一家外企突然冒出来和别人自主创业,研发基于STM32的视频处理器。那是我第一次又开始真正的地所接触STM32。因此说STM32完全是靠前期的MCU基础和编程基础,经由项目的历练自学成才的。同时,我也依据什么自己的STM32学经历,收拾好出MCU软件入门过程的思维导图。
答主当时毕竟也应具备多年来的C语言编码经验,也认识多款MCU的基本原理。可以使用全套正点原子的教材和开发板,并结合一本STM32的配套教材及芯片手册(好多页哇)并且了STM32的学习。因此前期的MCU的理论基础和KEIL软件的学习建议使用,战果得很能够顺利(此处我设定好的第一目标是基于最小系统的运行和移植,所以才进展很快地)。这里相对于基础知识,嘱咐新手朋友们一些细节的地方要弄清楚明白,不然的话后面使用库函数的时候非常容易弄混乱:
STM32的时钟总线,哪些外设都挂接在哪些时钟线上尽量要很清楚;STM32的时钟树结构/分频设置。我同意很难明白,只不过多看完一遍多画几遍基本是都没啥问题。STM32的GPIO管脚重映射,复用概念必须弄不清楚。STM32的自动分组,分级管理机制。STM32的最大时系统搭建中,配置可以很清楚。最好是能实现开发板的自主移植。当学完了基本的STM32大于系统之后,在能够完成了原子精英板的移植后,我又将stm32的最大时系统在我们的产品验证板通过了移植和运行。最终达到彻底掌握了STM32小于系统和基本都STM32代码开发流程(当然要注意是STM32库函数的使用)。
可是刚开始被STM32的时钟树和网络中断分级分组搞得稍微有点郁闷,但是攻破了大于系统后应该让我有了极大的信心和动力。因此创业嘛,没有时间给你利用自学,我只得发挥出来硕士搞科研时候的老办法:拿来主义,会用到那个外设就立刻做研究这块,参考书芯片手册一起从哪里入手。那样我基本对同一个外设需要看三遍差别的讲解。IIC(再连接视频处理芯片控制用),SPI(外接存储),DMA(视频数据传输),定时器(OSD调整和红外遥控器解码讲),USB驱动程序......一个一个模块的啃过去,我突然发现不过STM32真的是一款性价比很高的MCU。另外:此处还没有说起ucos,而且在华为的时候就完全掌握所以ucos的STM32移植和开发完全没有耗费太时间。同样的,只学一个部分的基础知识和代码编程,我绝对要在精英板和开发板做两遍实验才叫合格。
因此,从答主个人的经历和快速上手的角度来讲,STM32在怎么学习完大于系统后,建议都用到哪块学习哪块,不过知识的记忆也是遵守记忆曲线的。相比较,我个人的STM32的学习,已经是明确的我上面的思维导图。从基础-rlm实践,最好就是以项目或则开发目标为指引,这样自学出声会越来越目标聚焦动力充足。
不超过建议,皆有可能。
keilc 程序首句的意义?
当使用KeilC监视程序运行状态的时候,要把影响到Warning的语句屏蔽,要不然有可能跟踪监视语句的时候会出错。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。