0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

作为一名合格的单片机学习者,你应该要了解这些知识

电子设计 来源: 电子设计 作者: 电子设计 2020-10-30 15:53 次阅读

很多初学者最初接触单片机时较为苦恼的就是如何入门,也就是从哪一部份,按照怎样的步骤进行学习。在摸索学习步骤的过程浪费时间的同时也会造成学习兴趣的降低。为了帮助大家解决这种情况。

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

基础理论知识包括模拟电路、数字电路和 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、AltimDesigner,但如果要求最终的布线效果具有一定的美观度就需要花费一些时间了。

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


审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6002

    文章

    43990

    浏览量

    620955
收藏 人收藏

    评论

    相关推荐

    如何成为一名嵌入式C语言高手?

    嵌入式C语言领域获得突出的技能和能力。 、打下坚实的基础要成为一名嵌入式C语言高手,首先需要打下坚实的基础。掌握C语言的基本语法、数据类型、运算符、控制流程和函数等概念是必不可少的。可以通过
    发表于 04-07 16:03

    如何成为一名嵌入式C语言高手?

    嵌入式C语言领域获得突出的技能和能力。 、打下坚实的基础要成为一名嵌入式C语言高手,首先需要打下坚实的基础。掌握C语言的基本语法、数据类型、运算符、控制流程和函数等概念是必不可少的。可以通过
    发表于 03-25 14:12

    单片机如何通过代码控制硬件:一名工程师的分享

    今天跟大家聊聊单片机是怎样通过代码来操控硬件的。作为一名单片机工程师,我们平时的工作就像是给单片机编写“指令集”,让它按照我们的意图去驱动各种硬件设备。
    的头像 发表于 03-06 14:46 515次阅读
    <b class='flag-5'>单片机</b>如何通过代码控制硬件:<b class='flag-5'>一名</b>工程师的分享

    学习RISC-V单片机的感想

    从开始学习单片机开始,就没有在单片机总线方面的知识投入什么精力。觉得就是为了应用开发,没必要了解底层架构方面的
    发表于 02-17 21:00

    如何提升单片机开发技术?

    和交流活动 参加培训和交流活动可以让我们了解到最新的单片机开发技术和应用。通过与其他开发的交流和学习,我们可以获得更多的经验和技巧,提升自己的技术水平。 四、自主
    发表于 01-05 10:14

    交换机、路由器接口、线缆的相关知识

    今天浩道跟大家分享网络维护中常见的交换机、路由器接口、线缆相关的知识作为一名合格的网工,你应该这些
    的头像 发表于 12-28 09:19 307次阅读
    交换机、路由器接口、线缆的相关<b class='flag-5'>知识</b>

    如何成为一名优秀的嵌入式工程师?

    了解到最新的技术和趋势,同时也可以提高自己的编程水平。 要成为一名优秀的嵌入式工程师,需要不断学习和实践,掌握C语言的基础知识,同时也要关注嵌入式的发展和变化,不断提高自己的编程水平。
    发表于 11-07 15:36

    关于单片机点亮LED流水灯的操作疑问

    利用STC89C52RC单片机编写个让双数位的LED灯发光的程序,但是在编译时显示undefined indentifier(未定义变量)的报错,之后进行的变量定位后又显示syntax error(语法错误)的提示,作为
    发表于 11-06 07:41

    100天如何备赛蓝桥杯单片机

    流程,熟悉单片机程序的编写和调试方法。这些基础知识可以通过查阅相关教材、网上资料或者参加相关的课程来学习。硬件设计在单片机比赛中,硬件设计也
    的头像 发表于 10-24 09:35 877次阅读
    100天如何备赛蓝桥杯<b class='flag-5'>单片机</b>

    如何学习单片机步骤的知识梳理

    单片机学习实践 单片机提高重在实践,想要学好单片机,软件编程必不可少。但是熟悉硬件对于学好单片机的也是非常重要的。
    发表于 10-07 09:55 400次阅读

    51单片机POV趣味制作解析

    u3000本书所有制作都经过作者亲手制作完成,对制作过程和编程思路等采用了大量图片作详细阐述,力求使读者“看了就能做,做了就成功”。本书可作为单片机初学者及电子DIY爱好的参考用书,也可作为
    发表于 09-26 07:32

    单片机有前途吗?

    了。如果开始就选择非51单片机学习,那将是“路漫漫其修远兮,将艰难而求索!” 那学51单片机用C语言还是汇编语言好?当然是C语言了。因为
    发表于 09-06 10:59

    单片机独立按键控制led灯程序

    单片机独立按键控制LED灯程序 单片机独立按键控制LED灯程序是一种简单而有趣的电子学习项目,它通常由一个单片机芯片、一个LED灯和一个按键组成。这个项目的主要目的是让
    的头像 发表于 09-02 17:05 3779次阅读

    单片机学到什么程度可以找到工作?

    些元器件的性能,在面试的时候是可以加分的。 最后,我们应该多去做项目,多去实践。不要直只是学习些基本外设为目的,而
    发表于 08-10 15:19

    单片机学到什么程度可以找到工作?

    靠会单片机的基本外设找工作难免有些牵强,因为企业真正需要的不是说会多少个外设。相比项目经验更加重要,即便所有外设都学习过,但是组长提
    发表于 05-11 10:46