小白初入单片机领域,通常我们都会建议先从51单片机开始学起,待到学成后,再过渡到STM32为主,快速进阶单片机技能。那么从51单片机过渡到STM32单片机,我们该如何做?具体如下:
1、我们为什么要从51单片机过渡到STM32?
首先51单片机结构简单,语法易于学习,而且价格便宜,学习资料较多,适合新手入门;而STM32有中断逻辑、时钟配置等复杂概念配置,要求有编程经验,价格相对于51单片机贵,最重要的是STM32种类已超过1000多种,难以选择,外设接口众多,非常考验新手的基础知识和项目处理能力。
虽然STM32很多方面比51单片机复杂繁琐,但不可否认地是,它是市场上最主流大众的单片机,市场份额高于51单片机,特点是主频高、RAM和Flash大,可直接调用,提高工作效率。而且大型公司组织的工程师均是以STM32单片机开发项目,可以说,不会STM32单片机,就无法成为一个合格的单片机工程师。
2、从51单片机过渡到STM32,我们要怎么做?
首先需要知道地是,虽然很少工程师选择51单片机开发项目,但它有诸多优势,我们不能以技术原因自认为51单片机是老旧过时的淘汰单片机,只是为了更好地跟上时代的步伐,我们需要学会掌握更多的技术,以适应不同的工作和客户需求。
51单片机:
①优先掌握C语言语法
在51单片机和STM32上,拥有编程语言经验学习时会减少很多困难。而C语言中的流程控制、指针、结构体等都是重点之重。
②精确的实践
我们是从51单片机过渡到STN32,我们可在学习,重点放在定时器、串口通信 ,做点少量的实践项目,如中级密码、超声波测距、红外遥控。
③养成良好的编码习惯
多参考别人的优质代码 ,多进行模仿和学习,总结自身不足,这里要注意的一点就是,不要用拼音来命名变量或者函数名,这些都是非常不好的编码习惯,全部都要使用英文命名。
STM32
①学会固件库
一般来说,当我们选择STM32单片机会附带一个仿真器,仿真器有ST link、Unlink等,接口有JTAG和SWD,除此之外也要了解STM32的外设,如ADC、RTC、IIC、UART等。
②实践
因为我们是以STM32单片机为主,所以在STM32学习时间要比51学习时间长,尽量吃透STM32。而快速精通单片机的最好做法是多参与项目,从外设到STM32部件,最后到项目级别,多为自己累计开发项目的经验。
③其他辅助
学习STM32单片机也不能忘记增长其它相关方面的专业技能,大家可跟据自身未来发展方向进行学习,主要分为四部分,嵌入式操作系统、ucgui/STemwin、Touch GFX、上位机、数据结构与算法。
④接口应用