单片机学习
最近由于工作内容的原因,开始了STM32的学习之旅,现记录下学习的过程,为以后回顾做参考。
经看了很多单片机的学习路径,都一致认为在具备编程能力的基础上,先学习51单片机是很有必要的,下面这段是摘抄自知乎上学习STM32前学习51单片机的介绍(知乎提问),
不管51有没有落后,学习51都是值得的,个人认为不会浪费你的时间和精力,理由如下:
1、从外设上面看,都是类似或者一样的。通讯方面的I2C/SPI/UART、模数AD/DA、Timer/Interrupt/PWM/DMA/USB/Ethnet/I2S/Can/PulseCounter等。这些东西在增强型51上面大部分都有(请自行搜索我们熟知的“伟大的”STC芯片Datasheet),STM32自然也有(同样,自行搜索一个STM32F103系列芯片的Datasheet,下面有附图1),STM32上面的这些集成外设有可能功能较为强大,但是简单些的51外设学起来会更快(门槛较低嘛),同时学东西本来就是循序渐进的,对比51的外设操作STM32/ARM的无非就是多几个寄存器和功能而已,例如有可能有脉冲累加器PulseCounter还有脉冲捕捉功能。51简单,学习51恰恰可以让初学者快速上手,这个对于初学者才是关键。
2、从学习编码的角度来看。ST公司给STM32提供了库,因此,我们我们可以很方便的来设置一个寄存器和操作外设,当然也可以不使用库自己手动读写寄存器,此时就和51一样了。
3、成本。学习成本和金钱成本。金钱成本:没错对于个人而言,买片低端的STM32和增强型的51芯片价格差不多。但是既然你已经有了51的学习板子和资料(我猜),那么就先好好使用它学完基础再说吧。对于企业开发产品而言,价格的决定因素太多,不做评价。学习成本:同样是中国特色和谐版的Keil/MDK/Gcc软件上面有什么区别呢?下载同样可以使用串口ISP,有什么区别呢?但是STM32可以使用同样是中国特色的和谐版Jlink来调试却远比一次次的串口下载看效果来得有效。当然51也有对应的调试器,但是我们一般不会去买。
因此将先从51单片机的学习入手,进而在学习STM32。
我选用的51单片机的学习资料是 手把手教你学51单片机,其为电子书和相应的配套教程下载地址。(并未购买开发板,学习它仅为了学习硬件开发基础知识,给STM32打下基础)
STM32单片机选用的是STM32F103ZET6,公司采购的是 正点原子战舰V3,其配套的教程很全,正点原子官网网资源下载地址。
现给出几张STM32选型手册中的型号介绍图,这些图很形象的说明了各个型号STM32所拥有的功能
图1:STM32-32位微控制器(MCU)家族
图2:STM32&STM8产品型号
相关阅读
模拟退火算法 (Simulated Annealing) 对模拟退火算法做一个归纳总结。 知识铺垫 搜索问题描述 盲目搜索:按照预定的控制策略实
系列博客是博主学习神经网络中相关的笔记和一些个人理解,仅为作者记录笔记之用,不免有很多细节不对之处。 规范化 本节,我们会讨
一、霍夫直线变换: opencv对应的API函数: HoughLinesP(InputArray image, OutputArray lines, double rho, double theta, int
昨天用原声RPC的代码仿照网上的实例写了一遍但是并不懂是做什么的。 今天又接触了一个新的RPC框架Thrift,学习了一下午,但是还是不
从零开始学习UCOSII操作系统15--总结篇 前言:在大学的时候,我们班级上面都有很多人觉得学习UCOSII(包括UCOSIII)是没什么厉害的,因为