单片机原理,单片机能做什么?
现在单片机这个词慢慢进入了这个视野,相信很多人是通过一些智能硬件,然后一层层挖出来的。
一般人一听单片机,正常的反应就是:啥玩意?
这就是信息差,很多时候也正是这些信息差,直接决定你是吃肉还是喝汤。
随着物联网和5G技术成熟啊,也很多小伙伴看到单片机在未来发展的无限可能。
最近也收到很多小伙伴的问题,说单片机到底要怎么学啊,编程好难啊。
对于这种问题我在别的文章回答过很多次,这里就不再阐述了。
今天我们来主要来讲一下单片机原理和它到底能做什么。
我尽量用大白话啊,有时候太学术化的东西虽然看起来很专业,但是不便新手理解。
1. 单片机原理大家看上面这个图,是不是看得一脸懵逼?
那就对了,没必要去研究它,即便是我从事开发多年的,看起来都头疼。
但看不懂完全不影响你学习和使用单片机去做产品。
单片机其实就是一个芯片,类似于电脑cpu,只不过是非常简陋版的,或者理解成拼多多版CPU都可以。
并不是说它质量差啊,而是性能和成本以及功耗都要比电脑cpu低很多,很多。。。
单片机最大的特点是可以编写程序去控制芯片引脚,配合不同的外围电路实现不同的产品功能。
那么理论性的东西前期就了解这么多就够了,没必要了解那些输入输出啥的。
2. 单片机能做什么?单片机目前的应用可以说是铺天盖地,比如说家里的电饭煲、微波炉、电磁炉、冰箱、空调、洗衣机,内部就是用单片机加不同的外围电路实现的。
还有就是共享单车、共享充电宝、充电桩、指纹锁这些就是属于物联网的一些应用,内部也是单片机配合不同电路实现。
毫不夸张地说,铺天盖地都是单片机的应用。
随着物联网和5G技术成熟啊,对低成本低功耗的数据采集处理设备幅度一定会大幅提升,而单片机也正好契合这些特点,所以未来可期哈哈哈。
我看了很多文章说学单片机好难啊,又要学电路,又要学单片机寄存器,又要会看数据手册,又要学编程。
关键还屁事多,工资少,还不如去做纯软件来得舒服。
对于这些说法,我保留自己的想法,首先单片机没大家想象的难,关键还是学习路径正确加上不断地实践,看一百遍不如自己动手干一遍。
那单片机从入门到高级的教程和工具我也为大家整理了一份,足足花了将近一周时间,并且配套学习路径文档,每个环节学到什么程度都写的很详细,具体可以看下面这篇文章。
单片机入门到高级开挂学习路径(附教程+工具)
什么是单片机?怎么学?怎么用?那请你认真看完本文(勿转载)
一、想快速入门进阶,面向工作时
先把工作中需要的东西学会,一项一项的来,比如先把GPIO弄清楚,怎么初始化,怎么输入输出,然后定时器、串口、ADC、DAC、DMA、SPI等等先把用得着的一个一个地做, 都弄明白了再往一块整合,从简单到复杂,硬件操控起来了也就算对这种单片机入门了吧,软件方面,不管用什么单片机,用什么编译器,区别不大初学的最好还是买个开发板,不 需要多高级的,有几个常用功能做出来,其它就容易了。
关于初学者是否需要弄清底层函数问题:
先玩起来再说底层函数,一般就用现成的库,绝大多数应用都没问题的,至于库里面是什么,先不管它,到了高级阶段再去看。
二、进阶步骤
会点灯-入门;
会使用各个常见中断,能把项目做出来-熟练;
会DMA、PWM各种模式,能把项目熟练完成-精通;
会CAN,USB,RS232,RS485,SPI,I2C,运动控制,电机驱动,各种滤波算法,PID算法-非常精通。
三、经验分享
自己的体会,对不对不知道哈。我自己学MCU就是大学里学的51单片机,所有功能会用算是入门槛,后来学习和工作慢慢接触其他的PIC,Freescale,STM这些,慢慢发现其实 东西都是有相通的,但是一定要动手,不管是用例程还是自己写,都要带板子跑代码,过程中肯定有问题慢慢解决,才能有提高,而且现在的片子底层驱动库都有,项目用的时候就 是参考一下手册会调用,底层驱动功能正常就可以了,很少项目里面从零开始写代码了。
四、经验分享
建议:初入STM32的学习者不用记,直接用就行了,这个玩意,实践才能进步;边学边用才是正途,关键是用,不是学。
五、经验分享
可以自己试着完成一个功能,比如简单的流水灯,逻辑肯定自己写,涉及到stm32的比如怎么初始化、怎么配置之内的不会的可以查资料,但是一定要要有自己的思想, 完成了我觉得就算入门了。
六、关于初学者是否要弄懂底层函数
初学者没必要弄懂底层函数。项目需要用到什么再去研究什么。比如你的项目只要点亮一个LED灯,那你只研究怎么配置GPIO就好了,没必要去研究什么PWM了。现在 有个神器叫STM32CubeMX,直接生成一些底层初始化代码,加上HAL库调用,哪里不会再查哪里。底层函数这玩意,你调用多了,自然会去研究怎么配置达到你要做的效果, 在项目中进击,没必要一上来就啃底层,专注你的算法才是真正有意义的事情。
七、经验和观点的分享
我也有思考,如何清晰、系统地学习 STM32,建立整个 Cortex-M 知识体系,以及相应的理论支撑,并最终应用到 Cortex-M 内核 MCU。现有的教程也都没有构建这样的 知识体系,学习、成长路线,所以很多人(包括我自己在内)都会在某个阶段遇到瓶颈。到头来发现自己依旧停留在知道这个点,也会用,会面向百度编程,但一遇到问题需要调试,需要更多的理论支撑的时候,就无从下手了。 另外,STM32 做项目的话,应该也少不了使用操作系统,所以 RTOS 还是需要学习的。RTOS 面又是比较多的,现在又有物联网操作系统的概念
(比如 RT-Thread【物联网相关的软件包非常多】,华为的 LiteOS【官方动作比较小】,阿里的 Aliosthings【WIFi 等模组支持的相对较好】)。 所以,有人能把这套内容整合出来一个学习路线和测试验证知识点,应该会非常好。
八、经验分享(什么时候可以接触项目)(指导的很多方面)
会建立工程点灯就算入门
知道各个外设的基本特性就算基本熟练(定时器 SPI UART IIC SDIO FMC,有需要再看网络和USB) 知道怎么读取、控制外围设备(采样、显示、射频一类的), 会用现有库就算精通(RTOS/UI/存储/网络)剩下的都是工程经验,代码组织、排错、调试一类的,多做就行。 会用串口,能通过示波器看懂SPI/IIC的波形、能输出想要的波形,会输出PWM波,就可以开展项目了,另外是C语言要扎实,有一点总线知识,至少要明白堆栈的含义,知道自己随手定义的变量处在什么section,熟悉数据的内存组织结构更好(这些最好是多做调试多看MDK的Call Stack+local窗口和Watch窗口,看看 数据对应的内存地址和组织方式,对你深入了解语言、CPU有很大好处)。 深入的逻辑、代码组织方式,需要你自己在实践中总结,看别人的源码也是比较不错的方式求快的话,不建议看视频,从PDF教程开始,配合官方的手册对照看。
一个月从0到会走路是没问题的。
关于学习方式:
视频的进度和内容不容易筛选,你只能跳着跳着看,或者1.5倍速完整拉完,跳着看容易遗漏看PDF方便反复查看仔细比对。先看设计大纲,自己理解一遍, 然后针对性地看自己不太理解的的地方,在具体技术细节上配合datasheet,全程都是干货。再自己拿板子跟着走一遍基本就OK了。
九、经验分享
1.芯片只是一个底层工具,当然你只有完全了解你所使用的外设工作逻辑后才可能设计出可靠的底层系统。
2.底层熟悉后,剩下的就是项目的应用问题,算法,协议,应用逻辑等,这个就是行业属性,行业积累。
3.如果说入门,至少知道配置一个外设的完整流程,不一定每一个都要用一遍,只要你知道大概流程,用的时候知道看什么地方就入门了。
十、学习心态方面(关于工作面对项目)
同意你的意见,我觉得搞技术心态很重要,就是蔑视他,不就是什么什么嘛,老子能搞定你 。 如果遇到问题就是天大的事情,感觉自己不行,搞不定。这样即使解决问题了,也只是解决这样一个问题。
本文摘抄自正点原子论坛,如侵权,请联系本人删除 原文链接文末所示
相关问答
为什么修车的把故障存储芯片叫做电脑?最多也就是个 单片机 呀?其实单片机的俗称就是“微电脑”。我们可以从单片机的英文全称来看一下,SingleChipMicrocomputer,翻译过来就是“单片微型计算机”。所以说,修车的把这个芯...
学 单片机 以后创业,我该怎样发展自己?学这玩意儿出来自己创业还想整这个的话无路可走的。想继续整这个专业的话开始进厂做个技术员什么的还比较靠谱一点。楼主想创业的话建议还是干其他的。学这玩...
毕业即将满一年,浑浑噩噩,开始学习 单片机 开发方向能找到工作的机率有多大?只要你坚持每天都特别投入,一般差不多2周的样子就能让自己写的程序在开发板上跑起来了。单片机学习有个特点,一旦入门了就收不住手脚,因为那玩意太好玩了,比...
如何评价软件Arduino?Arduino在中国的火爆程度远不如国外,究其根本,笔者认为是Arduino太简单了,在STM32单片机上需要一个星期才能完成功能的任务,用Arduino做出同样的项目不需要2...
不拆电路板( 单片机 )上的芯片怎么烧录?????-ZOL问答看看模电书,再自己做点小玩意有用(0)回复jxuvneijga只要有数电模电知识,学习制作电路板很简单,郭天祥的十天学会单片机与C语言,一节教程就讲完了,当然要想...
机电是干什么的?自动化的同学大部分考研成功后成为了嵌入式编程的程序员,机电专业同样可以,所要学习的就是单片机,编程语言,平时可以跟谁网上的教程做一些小玩意儿比如光立方...
大学有什么社团呢 - 蠢? 的回答 - 懂得不同的大学是不同的,各有自己的特色。一、理论专业学习类各个专业的学习协会,如英语、法律等等二、科技创新类1、科技创新协会2、灵感科幻协会3、科...
大学有什么社团呢 - Double? 的回答 - 懂得大学与高中最大的差别就是大学里有丰富多彩的社团活动了,新生开学一段时间之后各个社团就会开始一年一度的纳新活动。那么大学里有哪些社团呢?1大学...
物理本科阶段你学习的最有意思的一门物理课是什么?我觉得最有意思的是电工学和数学电路。我比较喜欢动手实际操作,电工学,熟悉电路实验我是最喜欢的,因为实验其中反馈给人的信息(声,光)使我很有成就感,或许...
空间站各舱室陆续升空,1国对16国,突破技术封锁有多少底气?抗美援朝,我大中国一国对十七国,照样干翻他,现在,还是一个样,服不服?抗美援朝,我大中国一国对十七国,照样干翻他,现在,还是一个样,服不服?单片机十倍一个,前...