单片机编程入门基础知识详解
扫描二维码
随时随地手机看文章
一、单片机入门篇
1、学好电子技术基础知识,如电路基础、模拟电路、数字电路和微机原理。这几门课程都是弱电类专业的必修课程,学会这些后能保证你看懂单片机电路、知道电路的设计思路和工作原理;
2、学习计算机硬件知识,如计算机的简单组成原理,要知道CPU、总线等的一些基本概念;
3、学习C语言的编程知识,了解结构化语言的程序设计方法,懂一些常用的算法,比如冒泡排序、中值算法等;
以上是基础,有了这些基础,学习单片机就只要花几周的时间就能上手。但学习单片机时,主要从单片机的寄存器开始,其中特殊功能寄存器是重点,学会之后,就可以学习单片机的基础部分了,主要是四个部分:
单片机I/O口的使用、中断的使用、定时器的使用、片上资源的使用。这些部分都可以用软件仿真(可以用proteus软件),注意软件仿真跟实际电路存在区别,软件仿真仅仅用来验证一下功能是否实现,并不能取代实际电路。
二、单片机加强篇
1、可以买一块单片机开发板,结合提供的原理图和例程学习单片机的外设电路和片上资源的编程,每学习一个功能块,就要把这个功能块搞懂,切忌三天打鱼两天晒网,用学习板的弊端就是全靠自觉无人监督很容易让板子压箱底;
2、修改例程,以学习板为载体,自己新建编程工程,用自己的编程思想让外设电路实现想要的功能,程序是灵活的,每个人都有不同的编程思想,多试几种方法,提高程序的执行效率,锻炼自己的编程能力;
三、单片机进阶篇
1、学习硬件是一件非常烧钱的事情,这不同于纯软件编程和网页设计只需要一台电脑和一个编程环境就能实现,硬件学习需要设计做电路板、买元件、买调试工具,所以学习硬件就要做好烧钱的心理准备。为了进阶,你要自己设计电路、做板子、写程序;
2、加入实验室的项目,学习是一个宽范围的事情,以学懂为目标,但是你不知道到底该学多深;做项目是一个深钻入的事情,以实现功能为目标,为了实现目标、为了节省成本你可能要抛弃很多现有的方案,而深入研究下去,这能使你在该领域快速积累经验;
3、深钻研,硬件的范围非常广,你可能是USB通讯协议领域的专家,但你不一定了解CAN总线;你能在短时间内做好ZigBee,但你不一定能很快搞定Wifi;所以,一定要把一个项目深入下去,与别人在沟通交流的时候要心诚。
学习单片机其实并没有那些人说的那么难,只是他们听说就觉得这很难的样子,学单片机可不能被这给吓到。学习单片机是一件很有趣的事情,之所以觉得难,就是因为不知道怎么入手,怎么开始学习。
学习单片机总结一下就是两方面:一是电路,二是编程语言。首先,电路的话,需要学的就是模电,数电,电路,这是学习电路必经之路。其实如果你学会了这些,你也是可以找一个薪资还可以的工作,当然能找到这些工作也就是去一些大公司,分工明确的公司才可以,而一些小公司,他们只会要求你要全能,也就是说一个项目你要从芯片的选型,到外围电路的搭建,最后I/O口的定义,程序的编译调试,最后PCB板的制作,焊接,调试等等,你都要掌握。这样,你的工资也是很可观的,所以学习电路是必须的,你学单片机就先从电路入手展开学习。
单片机最基础的就是C语言编程了,你要理解C语言怎么编程,要有自己的思路,逻辑。多加练习,学到什么程度呢?就看到一道题,你自己脑子里就要有思路,想法,然后再去下手写,当然在学C语言的时候,最难的也就是指针了,你需要去攻克他,多做一些题,多练一练。有些人,学习单片机,全靠死记硬背,这是万万不可的,还是想要你多练习。
该如何选择你学习的单片机型号呢?开始学的时候,建议你使用51单片机,你所确定的型号是STC89C52,这款单片机虽然比较老了,但是依然具有学习价值,DIP40封装的STC89C52单片机如下图所示:
确定好单片机,那就要看看使用什么编程环境了,像51单片机我们可以使用keil来编程,这样是可以提高学习效率的。如果你已经理解或者学到这里了,那么你就已经入门了,但说入门还早了点,你还得需要学习单片机里面:
1. GPIO:就是学习单片机引脚的控制方法,将引脚配置输入或者输出,比如说:点亮发光二极管、控制蜂鸣器发声、控制继电器吸合、控制按键输入、点亮数码管等;
2.定时器:定时器,要学会如何配置比如说:发光二极管定时闪烁、数码管显示的数值定时自加等;
3.UART:学习单片机的UART功能,学习RS232通讯,比如说:单片机发送字符用串口调试助手在电脑上显示;
4.IIC:学习IIC通讯,比如说用AT24Cxx系列实现数值的掉电保存功能;
5.AD采样:学习模数转换知识,比如说:调节滑动变阻器,改变所采集的电压,实时显示此时的电压;
初次之外可能还有:SPI,液晶屏、点阵、外部中断、D/A等,等你学到这里,你就可以根据自己的具体想法来实现想要的功能了,那这样,单片机就会被你轻松收入囊中了。想要知道更多单片机的学习,可以咨询华清远见,能得到更多你想知道的。
1.单片机是什么?
单片机其实就是一个微控制器,通过控制引脚输出高低电平来控制不同的外围电路,实现不同的产品功能。
2.学习单片机需要准备什么
一块51单片机开发板(60块钱左右)、一台电脑、相应的软件,比如说keil。单片机开发板的话,小黑推荐51单片机的开发板,真的很适合小白,而且基本上新手前期需要学习的外设,它都有,非常的nice,商家给的例程让我们度过新手期也是绰绰有余的。 非常的nice。电脑的话,基本上普通的办公电脑都可以支持。软件方面,想要什么软件就去微信公众号上搜就好了,非常的方便,还配安装教程哦!(不会有人还不知道微信公众号这个宝藏吧)。
3.单片机该怎么学?
现在网上关于51单片机的视频和书籍,一抓一大把,很多同学就迷茫了,我是先看书呢,还是先看视频呢?非常的纠结。那单片机应该怎么学呢?小黑推荐先看视频再看书的方式。为什么要这样?因为我个人觉得,很多技术书都是很厚的一本,自己看下来要花费很多时间精力,而且很多知识点在工作中很少会用到,可以暂时先略过的。视频一般会比较短,一般是几天就能看完,而且老师一般只挑重点的讲。我们时间都很宝贵,我建议先把老师讲的知识完全掌握了以后,再利用书籍进一步扩展其它知识。不只是51,其他的STM32、Linux等等,都可以这样学,非常的轻松,但是,不管是看书还是看视频,一定要写代码。
最后还有一个非常重要的事情,C语言!C语言!C语言!(重要的事情说三遍),C语言真的很重要,你可以先学C语言再学51,也可以一边学C语言一边学习51(51对C语言要求不是很高),但是你可千万不能不学C语言,小黑之前就是吃了C语言的亏
对于C语言的学习,小黑觉得可以看看《C程序设计语言》,这本书虽然写于80年代,但现在看来依然不过时。主要是这本书比较薄,容易看完,比较有成就感。看完《C程序设计语言》之后,最好再看《C和指》 ,《C专家编程》,《C陷阱与缺陷》。学完它们你的C语言水平绝对是非常之高了。做我们这行,C语言是基础语言,一定要把C语言完全拿下。