关注、星标公众号,直达精彩内容

来源:技术让梦想更伟大

作者:李肖遥

很多单片机初学者不知道怎样才能学好单片机,我们现在入门用的比较多的是8051单片机,它的资料比较多,用的人也较多,市场也很大,51 单片机内部结构相对简单,非常适合初学者学习,建议初学者将 51 单片机做为入门级芯片。

需要开发板

单片机属于硬件,不推荐大家使用单片机仿真软件来学习单片机,只有亲自操作它,才会有深刻的体会。

单片机这门课是一门非常重视动手实践的科目,不能总是看书,但是也不能完全不看书,我们需要从书中大概了解一下单片机的各个功能寄存器,如果看的多了反而容易搞乱,尤其是现在市场上大多数讲单片机的书一开始就讲解较复杂的内存、地址、存储器什么的,更让初学者感到不知所云、难以入门。

简单的说,当我们使用单片机时,实际上就是用我们自己编写的软件去控制单片机的各个功能寄存器,再简单些,就是控制单片机哪些引脚的电平什么时候输出高,什么时候输出低,由这些高低变化的电平来控制外围电路,实现我们需要的各个功能。

关于看书

关于看书,大家只需大概了解单片机各引脚的功能,了解下寄存器。我们要把更多的时间放到实践中去,这才是最关键的,在实践的过程有不懂之处再查书,这样记忆才深刻。

关于实践

关于实践有两种方法你可以选择,方法一自己花钱买一块单片机的学习板,不要求那种价格上千块功能太全的,对于初学者来说你买功能太全的板子,上面有很多东西平常都用不着,我们建议有流水灯、数码管、独立键盘、矩阵键盘、AD 和 DA、液晶、蜂鸣器、IIC 总线、有 USB 扩展也最好,这些就差不多了。

如果上面提到的这些功能你能熟练应用,那可以说对于单片机本身的操作你已经入门了,剩下的就是自己练习设计外围电路,不断的积累经验。只要过了第一关,后面的路就好走多了,万事开头难。

方法二你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做个单片机的最小系统板可能只需要几分钟的时间,而对于初学者可就难多了,因为只有对硬件彻底了解了,你才能熟练的驾驭它。

而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你还是选择方法一,毕竟自己有一块学习板要方便的多,以后做单片机类的小实验时经常都能用得上,省时又省事。

需要练习

有了单片机学习板之后你就要多练习,把学习板和电脑连好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机的魅力所在。

当你编写的程序按你的意愿实现时,你比做任何事都开心,然后让数码管亮起来,这两项会了后,你已经不能自拔了,但是在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人,或是上网搜索,当得到解答后你会记住一辈子的,知识必须应用于现实生活中,解决实际问题,这样才能发挥它的作用。

另外再谈谈关于用汇编语言还是 C 语言编程的问题,很多同学大一就开设了C语言的课,建议用C语言比较好,如果原来有 C 语言的基础那学起来会更好,如果没有,也可以边学单片机边学 C 语言,C 语言很简单,只是一门工具而已,将来肯定用得着,要不然以后也得学,你一点汇编都不会根本无所谓,但你一点 C 语言都不会那你将来会吃苦头。

书籍推荐

给大家推荐一本书,作者谭浩强,书名《C程序设计》,清华大学出版社,大家在学习本书的同时再参考上面提到的这本书更有利于 C 语言学习。

也根本没必要再从头把《C程序设计》学一遍,就算再学一遍也许结果还是和你现在一样,最好的办法就是用到哪里学哪里。

编程语言

汇编写程序代码效率高,但相对难度较大,而且很繁琐,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完全不需要那么高效率的代码,因为有高频率的时钟,单片机的 ROM 也在不断的提高,足够装得下你用 C 语言写的任何代码,C 语言的资料又多又好找,将来可移植性非常好,所以我建议大家用C语言。

总结

总结上面,只要你有信心,做事能坚持到底,有不成功绝不放弃的强烈意志,那学个单片机对你来说就是件非常容易的事。建议步骤:

  1. 看书大概了解一下单片机结构,大概了解就行。不用都看懂,又不让你出书。

  2. 用学习板练习编写程序,学单片机主要就是练编程序,遇到不会的再问人或查书。

  3. 自己网上找些小电路类的资料练习设计外围电路。焊好后自己调试,熟悉过程。

  4. 自己完全设计具有个人风格的电路、产品的能力时你已经是高手了。

‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧  END  ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧扫码加好友,加入海归Python编程和人工智能群
点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看。

如何从零开始学好单片机相关推荐

  1. 学好单片机能找什么工作?单片机好学吗?

    大家好,我是无际单片机编程徐工. 随着电子集成技术的不但地发展,很多电子产品的设计都使用集成化的芯片,其中单片机在现在电子产品设计中,扮演者越来越重要的角色. 集成电路让产品的电路设计越来越简单化,但 ...

  2. 如何学好单片机编程?学好单片机的基础是什么?

    大家好,我是无际. 最近几个推文都比较烧脑,今天水一篇轻松的,免得大家头发越来越稀疏. 在我即将毕业的那年,我一直很羡慕学校学计算机专业的同学. 他们的未来充满了前景,工作几年拿个几万块,而且上限也高 ...

  3. 如何才能学好单片机?​

    点击上方"大鱼机器人",选择"置顶/星标公众号" 福利干货,第一时间送达! 很多想学单片机的人问我的第一句话就是:怎样才能学好单片机? 对于这个问题我今天就我自 ...

  4. 如何学好单片机?​嵌入式第一门课

    很多想学单片机的人问我的第一句话就是:怎样才能学好单片机? 对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲. 先说说单片机,一般我们现在用的比较多的的MCS ...

  5. 学好单片机好找工作吗?单片机学到什么程度可以找工作?

    曾经我和很多应届生.转行的一样,对未来又憧憬又恐惧. 憧憬是学了20多年,终于能靠自己双手挣钱,恐惧是不知道自己学的东西到底有没有用. 现在10年过去了,我对社会的需求更加清晰,认知也上了一个层面. ...

  6. 从零开始学单片机c语言 pdf,从零开始学习单片机.pdf

    从零开始学习单片机从零开始学习单片机 单片机 DIY 设计 1. 手把手教你用 51 单片机 DIY 音乐频谱显示(成品图+电路图+源代码) /diagram/3972_4112/102030.htm ...

  7. 单片机外包公司可以去吗?学好单片机能接私活吗?

    前两年,我帮一个研究生做了一个毕业设计,用于生产线上,自动去剔除不良品的系统. 项目不需要落地,只需要吹中间涉及的技术环节,用什么方案,具体技术实现细节. 收了大概2K左右吧,花了差不多半个月时间,感 ...

  8. 和初学者谈谈如何学好单片机编程技术

    当今时代,是一个新技术层出不穷的时代.在电子领域,尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统正以前所未见的速度被单片机 智能控制系统所取代.大部分的高等工科学校都已开设了单片 ...

  9. 学好单片机必须要了解的的8个电路设计

    一.单片机上拉电阻的选择 大家可以看到复位电路中电阻R1=10k时RST是高电平 ,而当R1=50时RST为低电平,很明显R1=10k时是错误的,单片机一直处在复位状态时根本无法工作.出现这样的原因是 ...

最新文章

  1. C++ while 循环与 do...while 循环
  2. python就业前景分析-Python就业前景如何?老男孩Python培训好吗?
  3. Android4.0源码Launcher启动流程分析【android源码Launcher系列一】
  4. 电子产品设计流程_产品设计“学习、就业、留学”全攻略
  5. Java 7 源码学习系列(一)——String
  6. Android开发文章推荐
  7. 飞秋(FeiQ)海量的用户基数决定了这一模式
  8. 逼自己玩命学了3个多月,整理出了这份549个分支的技术脑图,分享给你
  9. USACO milk
  10. java项目打jar包,并且在cmd命令行运行
  11. JAVA CRC16校验码计算
  12. win7动态壁纸_壁纸软件推荐-wallpaper engine
  13. 浙江新曙光建设_中习集团大厦项目工地与姜太公签约,正在使用太公管工进行实名制考勤...
  14. 这些你曾深信不疑的大众心理学观点,都是谬论!
  15. ORACLE通过身份证号计算年龄
  16. 面试-android
  17. 机械键盘的“轴”有什么区别?
  18. 人工神经网络的基础数学模型来自哪里
  19. php exec pdfbox 方块,Windows explorer hangs up FTP connection after PASV command
  20. C++ 什么是多态,多态的用途

热门文章

  1. Spring (Bean, IoC, AOP, SpringMVC)
  2. oracle怎么删除存储,删除Oracle分区存储是一个怎样的过程?
  3. 微信小程序|开发实战篇之一
  4. python学习第29天
  5. 《图解Http》8: 用户身份认证Cookie管理session; 9:HTTP的追加协议(websoket, webDAV)...
  6. spring中的bean
  7. map和pair配合使用
  8. 基于XML配置方式实现对action的所有方法进行校验
  9. 用python实现一个按需生成用于vim跳转的tags文件的小程序
  10. 三十分钟包会——正则表达式