产品选型

单片机最简单编程 小白如何入门单片机?几个建议助你提高学习效率,把握学习方向

小编 2024-11-24 产品选型 23 0

小白如何入门单片机?几个建议助你提高学习效率,把握学习方向

单片机供应商众多,型号众多,全都学会不现实。学习的目的也不在于学会某一种单片机,而是要学会使用单片机的方法。所以,学习方法最重要,如何快速掌握一款陌生型号的单片机。给你几个建议。

单片机学好了,能做很多事情,可以从事很多行业,但是行业经验行业背景 需要去积累,需要去沉淀。可能多年以后,你会发现单片机很简单,而行业经验非常重要

硬件调试很辛苦,但是要发现其中的乐趣

下面介绍如何学习单片机。

1.学习单片机编程

买一块单片机开发板,首先研究程序是怎么写的,控制硬件的原理,学习寄存器的操作方法。学习例程的时候要从容易到复杂,一般来说,市面上的单片机开发板都是从点亮发光二极管或者跑马灯开始的。选择开发板时,要把握如下几个原则:

▲例程丰富;

▲外设丰富;

▲教程详细;

面包板是个好东西,可以利用手边的直插件多玩玩

2.学习常用外设电路的设计

开发板的例程看的差不多之后,再反过头来看外设电路是如何设计的。要以单片机的片上资源为中心,由容易到复杂,比如先从设计点亮发光二极管的电路开始。要看懂开发板硬件电路的设计原理,也能想出自己的设计方案。

多比较别人的方案,多多发现更有用的芯片

3.动手实现自己的想法

程序和硬件都看了之后,要根据手边现有的资源搭建电路,并能调试程序实现功能。以开发板为中心,比如,开发板上有发光二极管、按键输入、继电器、数码管等资源,则可以调试一个密码锁,即按键输入密码,数码管完成显示,发光二极管和继电器实现动作。

多多动手,硬件调试本身就是试错的过程,错的越多收获越多

4.参与项目

学习阶段只要实现功能即可,但是做项目不一样,需要了解项目背景、使用环境、客户要求,需要考虑成本、稳定性等。所以参与项目的研发对自己的学习有很大的提升和帮助。多去实验室跟着师兄、老师做项目,在项目中锻炼自己。

以上就是我的几个学习建议,欢迎留言批评,更多内容可以关注我的头条号玩转嵌入式 。谢谢。

告诉你怎么编写一个最简单的单片机程序

在汇编语言中,让某个端口输出高电平或低电平都有专用的语句,以P1.0端口为例:

让该端口输出高电平的语句是:

SETB P1.0

让该端口输出低电平的语句是:

CLR P1.0

好了,现在我们将小灯接在单片机的P1.0端口上,如下图所示:

由上图可知,当端口P1.0输出高电平时,小灯D不亮,因为小灯中不会有电流通过;当端口P1.0输出低电平时,小灯就亮,因为此时小灯中有电流通过。

要让小灯亮一会儿、灭一会儿,还必须要有一个延时的程序,下面就是让小灯亮一会儿、灭一会儿,交替闪烁的程序:

MAIN:;程序开始

SETB P1.0;让P1.0输出高电平

LCALL DELAY;这一行是调用延时子程序

;目的是让P1.0保持高电平

;多停留一段时间

CLR P1.0;让P1.0输出低电平

LCALL DELAY;这一行也是调用延时子程序

;和刚才一样,让P1.0保持低

;电平停留一段时间,其实就

;是让它多亮一会儿再熄灭

LJMP MAIN;跳转到MAIN处执行(循环)

;以下是延时子程序,有关该延时程序的内容以后再学

DELAY: MOV R7,#250

D1: MOV R6,#250

D2: DJNZ R6,D2

DJNZ R7,D1

RET

END

在以上汇编程序中,延时子程序每一行的具体含义先不管他,以后慢慢学到,上面的程序需要在一个名为“Keil uVision2”的软件中汇编完成,汇编后得到一个*.hex文件,这就是目标文件,然后用编程器将该文件“写”到单片机89s51中,这样该89s51就具有自动控制小灯闪烁的功能了。

在实验的时候,通常用发光二极管LED代替小灯,由于LED工作电压小,由此LED要串接一个小电阻,用220欧姆——1k之间的都行,我用的是510欧姆的。

这样还不够,单片机工作还需要两个条件,一是需要加上一定的工作电压,AT89S51工作电压为5V,第20脚接负极,第40脚接正极;另外还要给单片机安装一个心脏起搏器,就是振荡器,通常叫做时钟,只要在18脚和19脚之间接一个石英晶体就行了,我用的是12MHz的,另外为了保证振荡器稳定工作,还要在18脚、19脚分别接一个27PF的小电容到地(就是接到负极),此外,89s51的第9脚为复位端,要接一个10uF电容到正极,再接一个10K电阻到负极,最后,第31脚也要和电源的正极接起来,关于31脚,以后再说,这样一台由单片机控制的会自动闪烁的小灯就做好了。下面是完整的电路图:

没有使用的管脚空着就行了,什么也不用接。一通上电,小灯就开始不停的闪烁了。大约1秒钟闪烁3——4次。

本文转载自网络,如有侵权,请联系删除。

相关问答

单片机编程 要用什么软件?单片机编程如何快速入门?

你好,我就是做单片机嵌入式软件开发的,对于第一个问题,单片机开发一般都是用C语言,单片机的开发平台即编译器通用的有keil、IAR、eclipse等,现在eclipse也支...

单片机 是用什么 编程 的?

1.什么事单片机编程:就是硬件是单片机,基于单片机进行的程序开发,在有周围外设支持的情况下,用软件来控制的部分就是能过单片机编程来实现。单片机能识别的...

51 单片机编程 方法?

1.定义的变量不要太多。低128位为用户定义变量的存放区域(默认时),也可以把变量放在高128位,但容易出错,尽量少放,最好不放。通过*.M51可以查看内存变量的存...

如何快速的学会 单片机 C语言 编程 ?

多看,多写,多练,多思考!单片机有很多种,每种的侧重都有不同,在自己想深入的单片机方向选择一本经典教材,然后将心沉入教材,开始用功学习。切记不要只看...多...

51 单片机编程 程序怎么编?

51单片机编程程序怎么编?♣这种技术性问题在今日头条上,几乎没有一个高手给你一个答复。因为学习51单片机编程程序是需要长篇大论,并且用电脑操作截图来说明...

单片机编程 需要什么配置?

1、需要一个编程编译软件,在此软件的编程窗口中编写用户程序,经过软件编译生成hex代码供单片机应用。2、需要一个烧录或下载软件,通过软件与单片机通讯,将用...

单片机 和可 编程 控制器有什么区别?

单片机用途比较广,但使用时需加许多外围器件,编程用汇编或者C语言而可编程控制器的核心是单片机,但是外围电路很完善,输出电路驱动能力较强,可以直接接灯泡...

单片机 模块化 编程 讲解?

单片机模块化编程是将整个程序划分为多个独立、可重复使用的模块进行开发,每个模块都是一个完整的功能单元,可以通过接口相互调用与通信,从而实现程序的高效开...

51 单片机 红外遥控 最简单编程 法?

红外遥控最简单的编程法是使用51单片机的定时器功能和外部中断功能来实现红外接收和解码。首先需要配置定时器和外部中断的相关寄存器,然后编写中断服务程序来...

单片机 写程序C51和C52区别大吗?

C51和C52,如果指的是AT89C51和AT89C52的话,他们最大的区别是ROM容量不一样,C514KB,C528KB,都需要高压写入程序,需要专门的烧写器。AT89S51和AT89S52支...

猜你喜欢