技术文档

单片机怎么编 来,跟我编一个最简单的单片机程序吧

小编 2024-11-24 技术文档 23 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次。

更多干货内容只需要你关注电子芯吧客微信公众号

声明:本文系网络转载,版权归原作者所有。

单片机的基本构成及工作原理

有了电子电路和数字电路的基础知识,就可以开始学习嵌入式系统的核心元件-单片机。从本期开始我们将为大家介绍单片机的基础知识。

在单片机入门系列讲座中,首先学习单片机的基本构成和工作原理、以及外围功能电路,然后,挑战一个实际单片机的运行。

单片机是控制电子产品的大脑

现如今,我们生活中的许多电器都使用了单片机。例如:手机、电视机、冰箱、洗衣机、以及按下开关,LED就闪烁的儿童玩具。那么,单片机在这些电器中究竟做了些什么呢?

单片机是这些电器动作的关键,是指挥硬件运行的。例如:接收按钮或按键的输入信号,按照事先编好的程序,指挥马达和LCD的外围功能电路动作。

那么,单片机是如何构成的呢?

单片机是由CPU、内存、外围功能等部分组成的。如果将单片机比作人,那么CPU是负责思考的,内存是负责记忆的,外围功能相当于视觉的感官系统及控制手脚动作的神经系统。

尽管我们说CPU相当于人的大脑,但是它却不能像人的大脑一样,能有意识的、自发的思考。CPU只能依次读取并执行事先存储在内存中的指令组合(程序)。当然CPU执行的指令并不是“走路”、“讲话”等高难度命令,而是一些非常简单的指令,象从内存的某个地方“读取数据”或把某个数据“写入”内存的某个地方,或做加法、乘法和逻辑运算等等。然而这些简单指令的组合,却能实现许多复杂的功能。

CPU读取指令时需要知道要执行的指令保存在内存的什么位置,这个位置信息称为地址(相当于家庭住址)。程序计数器(PC)就是存储地址的寄存器。通常,PC是按1递增设计的,也就是说,当CPU执行了0000地址中的指令后,PC会自动加1,变成0001地址。每执行一条指令PC都会自动加1,指向下一条指令的地址。可以说,PC决定了程序执行的顺序。

◇指令解码电路

指令解码电路是解读从内存中读取的指令的含义。运算电路是根据解码结果操作的。确切地讲,指令解码电路就是我们在“数字电路入门(2)”中学过的解码电路,只不过电路结构稍微复杂些,所以,指令解码电路的工作原理就是从被符号化(被加密)的指令中,还原指令。

◇运算电路

运算电路也称为ALU(Arithmetic and Logic Unit),是完成运算的电路。能进行加法、乘法等算术运算、也能进行AND、OR 、BIT-SHIFT等逻辑运算。运算是在指令解码电路的控制下进行的。通常运算电路的构成都比较复杂。

◇CPU内部寄存器

CPU内部寄存器是存储临时信息的场所。有存储运算值和运算结果的通用寄存器,也有一些特殊寄存器,比如存储运算标志的标志寄存器等。也就是说,运算电路进行运算时,并不是在内存中直接运算的,而是将内存中的数据复制到通用寄存器,在通用寄存器中进行运算的。

相关问答

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

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

单片机 应用程序的开发步骤是什么?

1:针对需要开发的设备构建原理图,可以用AD09,PROTEUS软件2:针对需要实现的功能编程,使用KEIL编写调试(51,AVR单片机)3:程序编好测试,测试包括功能测...3:...

为什么自己设计不出来 单片机 程序?该怎么做?

设计编写单片机程序是一个渐进的过程不可一蹴而就,毕竟单片机程序是与硬件有密切关系的,我们一般称为单片机程序叫底层硬件驱动程序。编写程序不但要对软件要熟...

51 单片机 一个控制步进电机转动的程序?

方向用一个引脚的电平控制,脉冲引脚用单片机定时器中断去产生脉冲方向用一个引脚的电平控制,脉冲引脚用单片机定时器中断去产生脉冲

怎样才能成为 单片机 工程师?

一般来说,单片机属于硬件工程师的工作范畴。毕竟单片机驱动编程和电路设计是分不开,只有明白了单片机如何驱动才能设计出更为合理的电路产品。如果想更好的从...

单片机 stc25f104怎样 4路遥控灯程序?

要编写4路遥控灯程序,首先需要了解单片机stc25f104的GPIO口。然后可以通过按键进行控制,按下不同的按键对应不同的灯亮或灭。也可以通过无线遥控方式,使用红外...

单片机 开发仪怎么用?

一般是用com口和计算机连接,在电脑上用keilc等软件编好程序后,将代码转成16进制文件,用烧录软件烧录到单片机上,大部分操作都是在电脑上,你只需要将单片机芯...

单片机 流水灯程序 怎么编 ?

编写单片机流水灯程序的步骤如下:1.确定使用的单片机型号和开发环境,选择合适的编程语言和开发工具。2.根据硬件电路设计,确定流水灯LED灯的接口引脚和控...

请问各位电信大神,电子信息工程专业小白如何才能成为 单片机 ...

对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。先说说单片机,一般我们现在用的比较多的的MCS-51的...

请问有谁会用 单片机 汇编语言 编一个小型数字程控交换机的程...

[回答]每一种系列不同的单片机产品都有自己不同的汇编指令集。8051的汇编是intel公司51系列单片机汇编集最基本的指令集,使用这个汇编指令集的常见的单片...

猜你喜欢