当前位置:首页 > 单片机 > 小麦大叔
[导读]点击上方“小麦大叔”,选择“置顶/星标公众号”福利干货,第一时间送达大家好,我是小麦,很多初学者最初接触单片机时较为苦恼的就是如何入门,也就是从哪一部份,按照怎样的步骤进行学习。在摸索学习步骤的过程浪费时间的同时也会造成学习兴趣的降低。为了帮助大家解决这种情况。分享这篇文章,当然...

点击上方“小麦大叔”,选择“置顶/星标公众号”

福利干货,第一时间送达

大家好,我是小麦,很多初学者最初接触单片机时较为苦恼的就是如何入门,也就是从哪一部份,按照怎样的步骤进行学习。

在摸索学习步骤的过程浪费时间的同时也会造成学习兴趣的降低。为了帮助大家解决这种情况。分享这篇文章,当然学习方法有很多,适合自己的才是最重要的。

以前写过一篇类似的文章《我的单片机成长之路》,感兴趣也可以看看,希望对你有所帮助。

第一步:基础理论知识学习

基础理论知识包括模拟电路、数字电路和C语言知识。模拟电路和数字电路属于抽象学科,要把它学好还得费点精神。

在学习单片机之前,觉得模拟电路和数字电路基础不好的话,不要急着学习单片机,应该先回顾所学过的模拟电路和数字电路知识,为学习单片机加强基础。

否则单片机学习之路不仅会很艰难和漫长,还可能半途而废。扎实的电子技术基础是学好单片机的关键,直接影响单片机学习入门的快慢。

有些同学觉得单片机很难,越学越复杂,最后学不下去了。有的同学看书时似乎明白了,可是动起手来却一塌糊涂,究其原因就是电子技术基础没有打好,首先被表面知识给困惑了。

单片机属于数字电路,其概念、术语、硬件结构和原理都源自数字电路,如果数字电路基础扎实,对复杂的单片机硬件结构和原理就能容易理解,就能轻松地迈开学习的第一步,自信心也会树立起来。

相反,基础不好,这个看不懂那个也弄不明白,越学问题越多,越学越没有信心。如果在学习的过程中觉得单片机很难,那就应该先放下单片机教材,去重温数字电路,搞清楚触发器、寄存器、门电路、COMS电路、时序逻辑和时序图、进制转换等理论知识。理解了这些知识之后再去看看单片机的结构和原理,相信大家就会大彻大悟,信心倍增。

模拟电路是电子技术最基础的学科,这是学习电子技术必须掌握的基础知识。一般是先学习模拟电路再去学习数字电路。扎实的模拟电路基础不仅让人们容易看懂别人设计的电路,而且会让设计的电路更可靠,提高产品质量。

C语言知识并不难,没有任何编程基础的人都可以学,当然,数学基础好、逻辑思维好的人学起来相对轻松一些。

C语言需要掌握的知识就那么3个条件判断语句、3个循环语句、3个跳转语句和1个开关语句。

别小看这10个语句,用他们组合形成的逻辑要多复杂有多复杂。

学习时要一条语句一条语句的学,学一条活用一条,全部学过用过这些关键语句后,C基础便建立了。

当C基础打好以后,就不会感到单片机难学了,而且越学越起劲。当单片机乖乖的依照设计好的逻辑思维和算法去执行指令,实现预期控制效果的时候,成就感会让设计者信心十足、夜以续日、废寝忘食的投入到单片机的世界里。可以这么说,扎实的电子技术基础和C语言基础能增强学习单片机信心,较快掌握单片机技术。

第二步:实践出真知

这是真正学习单片机的过程,既让人兴奋又让人疲惫,其中的酸甜苦辣只有学过的人深有体会。思想上要有刻苦学习的决心,硬件上要有一套完整的学习开发工具,软件上要注重理论和实践相结合。

有一套完整的学习开发工具

学习单片机是需要成本的。必须有一台电脑、一块单片机开发板(如果开发板不能直接下载程序代码的话还得需要一个编程器)、一套视频教程、一本单片机教材和一本C语言教材。

电脑是用来编写和编译程序,并将程序代码下载到单片机上;开发板用来运行单片机程序,验证实际效果;视频教程就是手把手教单片机开发环境的使用、单片机编程和调试。

对于单片机初学者来说,视频教程必须看,要不然,哪怕把教材看了几遍,还是不知道如何下手,尤其是院校里的单片机教材,学了之后,面对真正的单片机时可能还是束手无策;

单片机教材和C语言教材是理论学习资料,备忘备查。不要为了节约成本不用开发板而光用Protur软件仿真调试,这和纸上谈兵没什么区别。

要注重理论和实践相结合

单片机C语言编程理论知识并不深奥,光看书不动手也能明白。但在实际编程的时候就没那么简单了。

一个程序的形成不仅需要有C语言知识,更多需要融入个人的编程思路和算法。

编程思路和算法决定一个程序的优劣,是单片机编程的大问题,只有在实际动手编写的时候才会有深切的感悟。一个程序能否按照意愿正常运行就要看思路和算法是否正确、合理。如果程序不正常则要反复调试(检查、修改思路和算法),直到成功。这个过程耗时、费脑、疲精神,意志不坚强者往往被绊倒在这里半途而废。

学习编写程序应该按照以下过程学习,效果会更好。

  • 看到例程题目先试着构思自己的编程思路;
  • 然后再看教材或视频教程里的代码,研究人家的编程思路,注意与自己思路的差异;
  • 接下来就照搬人家的思路亲自动手编写这个程序,领会其中每一条语句的作用;
对有疑问的地方试着按照自己的思路修改程序,比较程序运行效果,领会其中的奥妙。

每一个例程都坚持按照这个过程学习,很快会找到编程的感觉,取其精华去其糟粕,久而久之会形成独特的编程思想。

当然,刚开始,看别人的程序源代码就像看天书一样,只要硬着头皮看,看到不懂的关键字和语句就翻书查阅、对照。只要能坚持下来,学习收获会事半功倍。

在实践过程中不仅要学会别人的例程,还要在别人的程序上改进和拓展,让程序产生更强大的功能。

同时,还要懂得通过查阅芯片数据手册(DATASHEET)里有关芯片命令和数据的读写时序来核对别人例程的可靠性,如果觉得例程不可靠就把它修改过来,成为自己的程序。不仅如此,自己应该经常找些项目来做,以巩固所学的知识和积累更多的经验。

第三步:单片机硬件设计

当编写自己的程序信手拈来、阅读别人的程序能够发现问题的时候,说明自己单片机编程水平相当不错了。接下来就应该研究的硬件了。硬件设计包括电路原理设计和PCB板设计。

学习做硬件要比学习做软件麻烦,成本更高,周期更长。但是,学习单片机的最终目的是做产品开发----软件和硬件相结合形成完整的控制系统。所以,做硬件也是学习单片机技术的一个必学内容。

电路原理设计涉及到各种芯片的应用,而这些芯片外围电路的设计、典型应用电路和与单片机的连接等在芯片数据手册都能找到答案,前提是要看得懂全英文的数据手册。

否则,照搬别人的设计永远落在别人的后面,做的产品就没有创意。电子技术领域的第一手资料(DATASHEET)都是英文,从第一手资料里所获得的知识可能是在教科书、网络文档和课外读物等所没有的知识。

虽然有些资料也都是在DATASHEET的基础上撰写的,但内容不全面,甚至存在翻译上的遗漏和错误。当然,阅读DATASHEET需要具备一定的英文阅读能力,这也是阻碍单片机学习者晋级的绊脚石。

在了解电路的含义之后,在进行关于PCB板的相关设计就比较简单了,在这一阶段只要对一些常见的PCB软件能够使用即可,如Protel、Altim Designer,但如果要求最终的布线效果具有一定的美观度就需要花费一些时间了。

总的来说,作为一名单片机设计者,只要能够驾驭单片机C语言编程,并且能够使用常用PCB软件进行设计画板,此外再具备一定的英文基础。

学习
这是一个漫长的过程,技术在于积累,多学习,多总结,多输出,不积跬步无以至千里,加油。

—— The End ——
推荐好文  点击蓝色字体即可跳转☞ 状态机的三种骚操作,值得你了解
☞ 推荐一个直接用于项目开发的PID库!很好用,很稳定☞ 这14种嵌入式实时系统,你用过哪些?☞ 推荐一款我私藏已久的串口示波神器
欢迎转发、留言、点赞、分享给你的朋友,感谢您的支持!


点击上方名片关注公众号


分享   点赞   在看 ❤️ 

以“三连”行动支持优质内容!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

SHT11是Sensirion公司推出的数字式温湿度传感器,采用CMOSens™技术将温湿度传感、信号放大、A/D转换、校准数据存储及I²C类串行接口集成于单芯片。与标准I²C协议不同,SHT11的接口为“类似I²C”的...

关键字: SHT11 单片机 I²C

很多嵌入式开发者天天写单片机代码、烧录程序调试功能,却很少真正把它的完整运行逻辑串起来。你可能知道单片机里有CPU、RAM、ROM,也知道写的C代码会被编译成机器指令,但你未必清楚从按下复位键的那一刻开始,芯片内部的每一...

关键字: 单片机 芯片

在2000年到2010年的单片机黄金时代,消费电子、工业控制设备里跑的几乎都是8位、16位的早期MCU芯片。那时候没有现在成熟的硬件加密核、OTA固件签名这类方案,开发者却要面对固件被轻易破解、山寨产品快速抄板的行业痛点...

关键字: 单片机 MCU

很多单片机开发者在调试通信功能时,都遇到过类似的“玄学”问题:同样的代码在实验室里跑完全正常,拿到量产设备里就随机丢包;I2C传感器偶尔返回乱码,用示波器抓波形却看不出明显异常;UART串口在高波特率下,只要设备靠近电机...

关键字: 单片机 传感器

在汽车电子、石油钻探和工业控制领域,单片机往往需要在-40℃至125℃的极端温差下持续工作。片内SRAM通常只有几十KB,难以满足数据采集和缓冲需求,而外部SRAM提供了容量扩展的可能,但高温环境对其稳定性构成了严峻挑战...

关键字: 工业高温场景 单片机

在物联网与工业控制设备的实际运行中,系统状态的可观测性直接决定了故障排查的效率。然而,许多低成本单片机受限于内部RAM资源,难以长期驻留大量运行日志,一旦遭遇异常重启或意外断电,内存中的调试信息便会瞬间丢失,导致售后团队...

关键字: 单片机 NOR Flash

在工业控制与物联网终端设备中,EEPROM存储的计数器数据(如设备开机次数、运行时长)常因突发断电导致数值丢失或错乱。传统方案采用页写入模式,单次修改需重写整页数据(通常64-128字节),不仅加速存储器磨损(EEPRO...

关键字: EEPROM 单片机

在资源极度受限的8位单片机场景中,64B RAM往往是整机系统最稀缺的硬件资源——除去堆栈、全局变量和寄存器映射占用的空间后,留给用户自定义数据的可用内存通常不足30B,想要同时实现3路传感器的实时缓存几乎是常规编程思路...

关键字: 8位 单片机 RAM

外部脉冲明明到了,计数却偶尔少一次,这类故障常被误判成传感器抖动。单片机中断链路如果把屏蔽窗口、标志位和优先级混在一起处理,真实边沿很容易在软件忙碌时消失。

关键字: 单片机 中断 屏蔽窗口

在嵌入式产品的全生命周期里,STM32的Flash就像设备内部的“数字保险柜”,既存放着工程师熬夜写出来的核心固件代码,也保存着设备运行过程中积累的关键校准参数、用户配置数据。

关键字: STM32单片机 单片机
关闭