梦想51-单片机学习  
当前位置:主页 > 信息共享 > 心得交流 >

单片机学习之路

发布时间:2017-02-24 来源: 浏览: 关键词: 单片机 学习

我的单片机学习之路

    第一次听说单片机这个词,应该还是大学的时候,当时了解的比较大概,只知道他可以做秒表,按键,串口发数据等,如果不是需要定时交课程作业,感觉还是蛮好玩的,只需要敲几行代码,就能基本完成一些小的功能,也是觉得蛮神奇的,虽说有时候学校里面做这些有时候也是走个形式,但仔细想想,如果没有安排这些走形式的课程,自己的眼界也没法打开,即使当时学到的只是皮毛,在工作中也基本用不上,whatever,有一点总比没有的强...

    最初对单片机的理解,无非就是一个实验板,一台电脑,我们要做的就是通过电脑按照书本的历程搬过去,然后通过KEIL编译,通过串口下载进单片机,然后观察现象,实在一点,我们就是需要先理解书上的程序,明白他的编程思路之后,然后自己再此基础上进行改动,然后达到我们想要的目的,基本上这样我们实验的目的就达到了,要说学习单片机的苦,无非就是在完成目的之前那一段挣扎的过程,这个是开发者必经之路,包括查询资料,最方便的就是百度之类的,其次就是动手做,百度也就是一个数据库,里面包含了其他人收集的信息,包括他们遇到的问题,以及一些高手心得等等,总之,百度很强大,但不是万能,你遇到的问题若是人家没遇到,或者你描述问题不准确,都无法找到自己想要的答案,...时间有限,今天先说到这里,下次我们再继续,希望大家和我一起分享

    今天继续,之前有说到学校里面学习的各种单片机实验,估计也是因学校以及各专业的不同而略不一样,有的专业可能会接触更多一些,我在学校里面学的可能和你们也会有点不一样,归于正题,现在说说目前对于单片机的认识,单片机在一个小型电子系统中通常都是充当主控芯片的作用,我们写入程序,单片机就按照我们的想法利用自身的资源,包括各种IO口,定时器等,用以控制其各外围电路,比如何时点亮一个LED灯,何时打开继电器,等等,要入门学习单片机,我们已经准备些什么呢,第一, 具备C语言的基本知识,比如基本语法,如果不懂这些,是很难读懂C程序的,还有,学会规范程序书写风格,比如函数命名,按照功能的不同,将不同的模块分处不同的C文件,第二,了解KEIL编译环境,明白KEIL下的C程序与标准C程序的差异,两者的差异其实很小,可以网上搜下相关文章总结一下,懂得将程序编译得到烧录所需的HEX文件,第三,有条件最好具备一块开发板,虽说可以通过软件仿真,不过如果你真的要从事这一行的开发工作,最好还是以实物进行操作,一方面,这样可以更真切,看到的现象更直观,另一方面,有时候仿真和实物的效果会不同,目前开发板的价格也越来越低了,还是拥有一块更好一些,以后也许也用得到。

    对于各个基础实验,我推荐对于新手,可以先学会去读懂人家的程序,然后基于这个基础,大家可以再去完成各自的实验作业等,如果不怎么会,再看看相关的部分,有简单到复杂,网上找找资料,多看看,还不明白再去问问其他人,这样可以培养自己独立解决问题的能力,可能过程有点苦,但经历过后会对以后很有帮助,

    再说说大学过后,我进行了嵌入式培训,学习的内容,主要是软件编程部分,包含LINUX系统,上层应用编程,底层驱动编程,android等,除了android以外,全部都和C挂钩,C语言是一门很强大很基础的工具,学好它,编程就会显得比较容易了,这些都属于后话,这些都是基于一些性能更强大的处理器之上,诸如ARM,程序功能也越来越注重功能模块化,处理器功能越强大,软件代码也会越来越多,程序不懂得模块化,会显得比较难驾驭,因此,要懂得养成良好的程序书写风格。

    在之后,就是工作了,工作前期,你可能会接触一些零散的事情,这个时候你就要抓紧时间学习,尽快从以前的学习转入到真正的解决问题的角色,可能以前是老师布置作业来催促你完成一件事情,而现在你可能需要自己督促自己去做这件事情,因为你做得不好,可能就会面临着淘汰,待过几个月之后,基本也就融入这份新工作的步调了,我到现在还记得之前研究IIC、SPI等总线通讯的过程,如果你只是单纯的了解编程,而不了解硬件方面的知识,你调试板子的时候可能就会遇到很多的问题,除非和你配合的是一名特别优秀的硬件工程师,未避免这个问题,我们应该自己掌握主动权,软硬皆通,这样就会少一些调试折磨,当然与之交换的将是你更多的付出,

    总之,学习的过程很长,不要一味的想着走捷径,不可能你永远都能找到这条捷径,平时学会踏踏实实,到关键时刻,你才更容易发现捷径,希望大家也能分享自己的一些故事,包括学习,包括遇到的困难,让大家读读自己的故事,有时候也能帮助自己发现的问题,更好的进步!

责任编辑:


心得交流
心得交流
编程日记
2017-2027 织梦58模板网 版权所有
蜀ICP备19000922号-1 联网备案号51011502000302