文档库 最新最全的文档下载
当前位置:文档库 › 基于51单片机的模拟电梯控制系统

基于51单片机的模拟电梯控制系统

基于51单片机的模拟电梯控制系统
基于51单片机的模拟电梯控制系统

目录

摘要............................................................................. II 目录.............................................................................. I 第1章绪论.. (1)

1.1电梯的研究背景及意义 (1)

1.2 电梯的国内外发展状况 (1)

第2章电梯设计任务与要求 (2)

2.1设计任务 (2)

2.2设计要求 (2)

第3章总体设计方案 (3)

3.1设计思路 (3)

3.2总体设计框图 (3)

第4章电梯控制系统 (4)

4.1电梯控制系统 (4)

4.2主要硬件设计器件介绍 (5)

4.3 软件设计 (9)

第5章个人心得体会 (12)

参考文献 (13)

致谢 (14)

附录I: (15)

附录II: (17)

摘要

本文介绍了基于单片机的电梯控制系统,硬件部分主要由单片机最小系统模块、电梯内外电路按键模拟检测模块、电梯外请求发光管显示模块、楼层显示数码管模块、电梯上下行模块及模拟传感器模块等5部分组成。该系统采用单片机(AT89C51)作为控制核心,内外均使用按键按下与否引起的单片机相应端口电平变化的原理,作为用户请求信息发送到单片机,单片机根据判断的结果最终驱动步进电机做相应的运动,在运动的过程中,单片机依照请求信息通过模拟的传感器使步进电机停止运动,并利用彩灯作为上升和下降的状况显示,七段数码管实时显示当前楼层,完成整个请求和响应的过程。

软件部分使用汇编语言实现,利用查询方式来检测用户请求的按键信息。根据电梯运行到相应楼层时,模拟按键引起的电平变化,进行判断和执行实现电梯的控制,并且将程序模块化,方便了修改和调用。硬件设计简单可靠,结合软件,基本实现了四层电梯的模拟运行。

关键词:单片机,AT89C51,电梯控制,步进电机

第1章绪论

1.1电梯的研究背景及意义

电梯是高层宾馆、商城、住宅、多层厂房和仓库等高层建筑不可缺少的垂直方向的交通工具。随着社会的发展,建筑物规模越来越大,楼层越来越多,对电梯的可靠性、舒适感和美学等方面的要求也有了更高的要求。

电梯是集机电一体的复杂系统,涉及机械传动、电气控制和土建等工程领域,而对现代电梯而言,应具有高度的安全性。事实上,电梯上已经采用了多项安全保护措施。在设计电梯的时候,对机械零部件和电器元件都采取了很大的安全系数和保险系数。然而,只有电梯的制造,安装调试、售后服务和维修保养都达到高质量,才能全面保证电梯的最终高质量。在国外,已“法规”实行电梯制造、安装和维修一体化,实行由各制造企业认可的、法规认证的专业安装队伍维修单位,承担安装调试、定期维修和检查试验,从而为电梯运行的可靠性和安全性提供了保证。因此,可以说乘坐电梯更安全。美国一家保险公司对电梯的安全性做过认真地调查和科学计算,其结论是:乘电梯比走楼梯安全5倍。掘资料统计,在美国乘其他交通工具的人数每年约为80亿人次,而乘电梯的人数每年却有540亿人次之多。

1.2 电梯的国内外发展状况

在经济不断发展,科学技术日新月异的今天,楼的高度已和经济发展同样的速度成长起来。作为建筑的中枢神经,电梯起着不可或缺的作用,电梯作为建筑物内的主要运输工具,像其他的交通工具一样,已经成为我们日常生活的一个不可缺少的组成部分。一个国家的电梯需求总量,主要受其经济增长速度、城市化水平、人口密度及数量、国家产业结构等综合因素的影响。在全球经济持续低迷的情况下,我国国民经济仍然以较高的速度持续增长,城市化水平不断提高。这从客观上导致了我国电梯行业的空前繁荣景象,我国已经成为全球最大的电梯市场。上世纪80年代以来,随着经济建设的持续高速发展,我国电梯需求量越来越大。总趋势是上升的,目自口进入了“第三次浪潮”,2004年总产量超过了8万台,而且目前还没有减速的迹象。从1949年建国以来全国共生产安装了6l万多台电梯。尽管如此,我国的电梯远未达到饱和的程度。全世界平均1000人有l台电梯,我国如果要达到这个水准,还需要增加70万台。到那时候,全国在用电梯将达到130万台,每年仅报废更新就需要6万台。到2005年,中国电梯的年产量达到13.5万台,与1980年相比,25年增长了59倍,产量每年平均增长17.8%。2005年安装验收电梯124465台,截至05年底,我国的在用电梯总数已达651794台。如此庞大的市场需求为我国电梯行业的发展创造了广阔的舞台!

许多新技术和新产品,如无机房电梯、无齿轮曳引机、永磁同步拖动技术、远程监控技术等,国际上也是刚刚出现,我国就有许多企业可以生产了。国产电梯以其高质量,低成本的优势赢得了越来越多的国内外客户,为逐步进入国际市场创造了有利条件。

中国电梯在亚洲市场占有越来越重要的位置,每年销售量己达l万台左右,约占亚洲市场的

1/50,一些合资企业在出口创汇方面也做出了贡献。当今世界,电梯的生产情况与使用数量已经成为衡量一个国家工业现代化程度的标志之一。在一些发达的工业国家,电梯的使用相当普遍。

世界上有名的几家电梯公司,诸如:美国奥的斯公司、瑞士讯达公司、日本三菱和日立公司、芬兰科恩等,其电梯的产量已占世界市场的51%。其中,奥的斯公司和三菱公司是世界上最大的电梯生产企业。目前,国外除了以交流电梯取代直流电梯以外,在低层楼房越来越多的使用液压电梯。此外,家用小型电梯将成走电梯家族中新的组成部分,将为人们的生活带来更大的方便。

第2章 电梯设计任务与要求

2.1设计任务

设计并制作一个电梯控制模型,并可以通过程序控制步进电机,实现电梯的运行控制。

电梯模型示意图如下图所示

图2-1电梯控制模型示意图

2.2设计要求

(1)用A T89C51单片机,实现用步进电机带动电梯的4层楼电梯运行控制系统。

(2)每层楼都具有显示和请求的功能。

(3)显示电梯的运行状态并实时显示电梯所在楼层位置。

2 B C A D

3 4 F G

E H D

J

1 M

第3章总体设计方案

3.1设计思路

本次设计的总思想是,用开关作为电梯内外的请求按键,按键和单片机的口相连,按键按下为低电平,将信号传送到单片机,单片机根据各口的信号进行判断处理,处理完毕后控制步进电机运动,实现电梯的上下运动,采用传感器确定电梯所在的楼层数及电梯准确停止的位置,用七段数码管显示电梯所在楼层,用LED灯显示电梯的运行上下运行状态。

3.2总体设计框图

图3-1电梯单片机控制系统结构框图

第4章电梯控制系统

4.1电梯控制系统

电梯运行的基本过程是:由外部的呼叫信号给出呼叫,控制系统判断电梯目前所处的位置和显示当前电梯所在的楼层,并与呼叫楼层进行对照确定电梯的运行方向。若反方向,则改变方向到呼叫层,若同方向直接运行到呼叫层。整个设计由两块51单片机分别控制:图4-1是电梯控制系统的外部请求电路和内部显示电路及电机驱动的原理图,图4-2是电梯控制系统的电梯所在位置的外部显示电路和当前电梯所在楼层索定电路原理图。具体分析如下:

图4-1 电梯外部请求电路和内部显示电路及电机驱动原理图

图4-1为电梯控制系统的外部请求电路和内部显示电路及电机驱动的原理图,整个设计清晰明了,连接说明如下:

P0口:接七段数码管,显示下一目标楼层。

P1口:接步进电机。P1.0-P1.3接电机的驱动模块IN1-IN4。

P2-P3口:P2.0-P2.3接电梯内部的1-4的楼层请求按键。P2.4接四楼下的请求键,P2.5和P2.6接三楼外部的上下请求按键,P2.7、P3.0接二楼的上下请求按键,P3.1接一楼上的请求按键。

图4-2 电梯控制系统的电梯所在位置的外部显示电路和当前电梯所在楼层索定电路原理图

图4-2 电梯控制系统的电梯所在位置的外部显示电路和当前电梯所在楼层索定电路原理图,具体分析如下:

P0口接电梯所在位置显示的七段数码管。

P1.0 接指示电梯上行的显示灯,P1.1接指示电梯下行的显示灯。

P2.0-P2.4分别接索定电梯所在位置的1-4楼的电刷模拟传感器。

4.2主要硬件设计器件介绍

电梯控制系统的软件在硬件支持下运行,指挥系统进行相应的控制。软件均采用MCS—51汇编语言写成,约占内存35K左右.由于电梯控制系统实时采集数据量少,没有在系统中扩展随机RAM,只使用了8031片内RAM来安排呼叫信号的记录,判断输出状态,满足了程序调用的需要。

在整个的设计过程中,主要有两大硬件:51单片机和六线四相步进电机,51单片机作为电梯的大脑起控制作用,步进电机作为电梯的动力之源,在51单片机的控制下带动电梯运动。两者结合再加上附加电路组成了完整的电梯系统。

51单片机的主要功能和各引脚功能如下所示:

图4-3 51单片机的引脚分布图

51单片机的主要特性:

◆与MCS-51 兼容◆4K字节可编程闪烁存储器

◆全静态工作:0Hz-24Hz ◆三级程序存储器锁定

◆128*8位内部RAM ◆32可编程I/O线

◆两个16位定时器/计数器◆5个中断源

◆可编程串行通道◆低功耗的闲置和掉电模式

◆片内振荡器和时钟电路◆寿命:1000写/擦循环◆数据保留时间:10年

51单片机的管脚说明:

VCC:供电电压。

GND:接地

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH 编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:

P3口管脚备选功能:

P3.0 RXD(串行输入口)

P3.1 TXD(串行输出口)

P3.2 /INT0(外部中断0)

P3.3 /INT1(外部中断1)

P3.4 T0(记时器0外部输入)

P3.5 T1(记时器1外部输入)

P3.6 /WR(外部数据存储器写选通)

P3.7 /RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两了次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

步进电机的工作原理,特点,原理图,工作方式及时序图如下:

步进电机的工作原理:

步进电动机是纯粹的数字控制电动机,它将电脉冲信号转变成角位移,即给一个脉冲,步进电机就转一个角度,因此非常适合单片机控制。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,电机则转过一个步距角,同时步进电机只有周期性的误差而无累积误差,精度高。步进电机具有控制和机械结构简单的优点。图1是四相六线制步进电机原理图,这类步进电机既可作为四相电机使用,也可做为两相电机使用,使用灵活,因此应用广泛。

四相六线制步进电机原理图:

步进电动机特点:

①步进电动机的角位移与输入脉冲数严格成正比。因此,当它转一圈后,没有累计误差,具有良好的跟随性。

②由步进电动机与驱动电路组成的开环数控系统,既简单、廉价,叉非常可靠。同时,它也可以与角度反馈环节组成高性能的闭环数控系统。

③步进电动机的动态响应快,易于启停、正反转及变速。

④速度可在相当宽的范围内平稳调整,低速下仍能获得较大转矩,因此一般可以不用减速器而直接驱动负载。

⑤步进电机只能通过脉冲电源供电才能运行,不能直接使用交流电源和直流电源。

⑥步进电机存在振荡和失步现象,必须对控制系统和机械负载采取相应措施。

步进电机的工作方式:

步进电机有两种工作方式:整步方式和半步方式。以步进角1.8°四相混合式步进电机为例,在整步方式下,步进电机每接收一个脉冲,旋转1.8°,旋转一周,则需要2OO个脉冲。在半步方式下,步进电机每接收一个脉冲,旋转0.9°,旋转一周,则需要4OO个脉冲。控制步进电机旋转必须按一定时序对步进电机引线输入脉冲。以上述四相六线制电进电机为例,其半步工作方式和整步工作方式的控制时序如表4-1和表4-2所列。

表4-1 半步时序表

表4-2 整步时序图

4.3 软件设计

软件的设计采取了两套方案:

方案一:在程序设计的过程中用中断,以便达到时时判断的目的,在程序的设计过程中,使电梯运行判断更加智能化,程序采用模块化,上下判断采用状态标志法实现电梯的运行,因各方面的原因,方案一作废。但程序中有些模块是比较好的可以用到其他数值大小的判断上,例如:BIJIAO:;当前楼层和请求楼层比较,上升置80H的值为1,下降置70H的值为1 MOV A,60H

CJNE A,51H,S1;1

AJMP ZQD2

S1:

JC SZ1

AJMP XZ1

SZ1:

SETB 71H

CLR 81H

AJMP ZQD2

XZ1:

SETB 81H

CLR 71H

AJMP ZQD2

这段程序实现当前楼层60H中的值和请求楼层值的大小比较,若当前楼层小于请求楼层,则电梯上行,大于则下行,若同时上下都有请求则上行优先,判断完成后,继续判断其他楼层有没有请求。

方案二:整个程序应用单片机端口的高低电平实现,达到了模拟传感器的效果,在程序中无形的对各个端口的优先级进行了设置,并且电梯所在位置的判断、显示与电梯接收外部请求和判断电梯运行是独立控制的,彼此之间互不影响,使程序的设计简单化,并且提高了设计的成功率。

经过分析选取了方案二,方案二的具体介绍如下:

1初始化部分

由于本设计没有用到定时器、中断和串口输出,所以只对51单片机的各个端口进行了初始化,把各个口均置为0FFH(低电平有效),然后利用电刷模拟的传感器判断当前电梯所在的位置,调用数码管显示子程序LCALL XIANSHI显示为1(初始状态电梯在一楼),转入处理一楼子程序,进入程序执行状态。

2各楼层请求响应部分

若电梯在一楼或四楼,直接调用键盘扫描子程序KEY,判断是否有键按下,没键按下则继续扫描;如有键按下则判断是那个键按下并输出键值,转入键值识别子程序再合并电梯内外的请求,驱动电梯到达请求层。在电梯运行期间,程序仍然继续调用键盘扫描子程序KEY和电梯位置子程序DQ,以便随时响应适当的请求。若电梯在其它楼层,先判断位地址78H中的数据是0还是1,0为上升状态,1为下降状态。若为上升状态,则只响应该楼层以上的请求(同向请求),若该楼层以上没有请求则转查询下边楼层有无请求,若有则转为下降状态并响应,如果上下均无请求,则停留在该层继续循环查询等待请求;若为下降状态,则只响应该楼层以下的请求(同向请求),若该楼层以下没有请求则转查询上边楼层有无请求,若有则转为上升状态并响应,如果上下均无请求,则停留在该层继续循环查询等待请求。

3显示子程序

调用显示子程序前先给寄存器A赋值,转到响应的查表地址,将字型码送给串口寄存器KEYBUF,经过74LS164并口输出给数码管显示。

XIANSHI:

MOV A,KEYBUF

MOV DPTR,#TAB

MOVC A,@A+DPTR

MOV P0,A

RET

TAB: DB 0EEH,28H,0CDH,6DH,2BH,67H,0E7H

END

4控制电梯正转(上)和反转(下)的子程序

在单片机判断请求信号并做处理确定电机正反转的前提下,控制电机的正反转,带动电梯上下运动,完成整个控制。

步进电机正转,电梯上的子程序:

SHANG:;上

MOV P1,#0FEH

ACALL DELAY

MOV P1,#0FDH

ACALL DELAY

MOV P1,#0FBH

ACALL DELAY

MOV P1,#0F7H

ACALL DELAY

CLR P3.6;上灯

SETB P3.5;下灯

RET

步进电机反转,电梯下的子程序:

XIA:;下

MOV P1,#0F7H

ACALL DELAY

MOV P1,#0FBH

ACALL DELAY

MOV P1,#0FDH

ACALL DELAY

MOV P1,#0FEH

ACALL DELAY

CLR P3.5;上灯

SETB P3.6;下灯

RET

5程序流程图如下图所示:

程序流程图

第5章个人心得体会

随着离校日子的一天天临近,毕业设计也接近了尾声。经过几周的奋战我们的毕业设计终于完成了,但对于自己而言有自豪的地方也有很多的遗憾,更多的是学到了很多。

在学习上我看到了自己的不足,认识到了自己的定位,在没有做毕业设计以前觉得毕业设计只是对这几年来所学知识的单纯总结,但是通过这次做毕业设计发现自己的看法有点太片面。毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识还很欠缺,要学习的东西还太多,以前老是觉得自己编程不成问题,直到自己亲手实践时才知道自己对知识的欠缺有多大,眼高手低只会让自己在成功的路上摔的更重,心理上承受更大的打击。我也明白了学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质,只有自己亲身经历了,好多问题的精髓才能真正的接受,只有自己用心钻研了才会发现其中的精华和奥秘所在,并且在研究的过程中自己会获得更多的想法和思路,学习到更多意料之外的新知识,学到更多书本上学不到的知识。

通过这次设计,也让我明白了些许生活中应该拥有的精神,对待身边的任何人都不能看低对方的能力,说不定他就是带自己走向光明的贵人;不能忽略每个人的能力,在团队里每个人都有自己的作用;同学之间互帮互助,不仅加快了设计的进度,而且增进了彼此之间的友谊,也让我深深的体会到什么叫做团队合作精神,设计、情感两丰收。

此外,还得出一个结论:知识必须通过应用才能实现其价值!有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。

在此要感谢我的指导老师梁老师对我悉心的指导,感谢老师给我的帮助。在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,使我终身受益。

参考文献

[1] 叶挺秀.应用电子学[M].杭州:浙江大学出版社,1994

[2] 朱承高.电工及电子技术手册[M].北京:高等教育出版社,1990

[3] 阎石.数字电子技术基础(第三版)[M].北京:高等教育出版社,1989

[4]李朝青.单片机原理及接口技术[M].北京:北京航空航天大学出版社,1994.11

[5]李广弟.单片机基础[M].北京:北京航空航天大学出版社,1997.7

[6]曹巧媛.单片机原理及应用[M].大连:连理工大学出版社.1996.5

[7]陈光东.单片微型计算机原理与接口技术[M].武汉:华中科技大学出版社。

[8]沈德全.mcs51系列单片机接口电路与应用程序实例[M].北京:北京航空航天大学出版社

[9]李广弟.单片机基础[M].北京航空航天出版社,2001.7

[10]然苗.51 系列单片机设计实例[M].北京航空航天出版社,2003.3

[11]唐俊翟.单片机原理与应用[M].冶金工业出版社,2003.9

[12]刘瑞新.单片机原理及应用教程[M].机械工业出版社,2003.7

[13]吴国经.单片机应用技术[M].中国电力出版社,2004.1

[14]何立民.单片机应用系统设计[M].北京航空航天出版社,1995

[15]张凯.MCS-51 单片机综合系统及其设计开发[M].科学出版社,1996

致谢

这次基于单片机的毕业设计已经结束,我们学到了很多东西,得到了极大的锻炼,资料快又准的查找和选择,不仅可以增强设计的成功性,而且提高了设计的效率,我们设计的电梯自动控制用到了51单片机,电梯的动力来源用的是四相六线步进电机,在整个设计的过程中,不管是硬件还是软件都遇到了很多的问题,让我们深刻体会到理论设想与实际结果的差距,也意识到理论与实际相结合的重要性。

这次设计的成功,首先感谢老师能在百忙之中抽出时间帮助我们,在写程序时楼层之间的判断和执行给我们造成了很大的困惑,使得在前期设计没有任何的进展,我们不懂的疑难都向老师请教,老师放下自己的工作给我们系统的分析、指导并给我们更好的方案和建议,使设计找到正确的方向,完成设计,在老师孜孜不倦的教诲和悉心的指导下,我们取得了最后的成功。其次要感谢我们的小组成员,组内成员分工明确,互帮互助,他们尽职尽责完成自己所负责的模块,完成自己的模块后协助其他组员设计,在这次设计中我们看到了团队合作的重要性,使设计变得更加的完美,让我们学到了课堂上学不到的知识。在最后要深深的说一句,老师、同学您们辛苦了!

最后,希望各位领导、老师审阅我们的论文并渴望您们给予批评指正。

附录I:

完成后的电梯结构如下图所示:

完成后的控制电梯运动的电路如下图所示:

完成后的楼层请求按键和请求楼层、上行和下行的指示部分如下图:

附录II:

接收外部请求并控制电梯运行的程序如下:

SP1 EQU P2.0;一楼停点开关

SP2 EQU P2.1;二楼停点开关

SP3 EQU P2.2;三楼停点开关

SP4 EQU P2.3;四楼停点开关

SP5 EQU P2.4;一楼开关

SP6 EQU P2.5;二楼开关

SP7 EQU P2.6;三楼开关

SP8 EQU P2.7;四楼开关

SP9 EQU P3.0;报警开关

ORG 0000H

LJMP MAIN

MAIN:;判断初始楼层

MOV P0,#76H

JNB SP1,LOOP1

JNB SP2,LOOP2

JNB SP3,LOOP31

JNB SP4,LOOP41

JNB SP9,BAOJING1

LJMP MAIN

LOOP1:;一楼

JNB SP5,LOOP5;1-1

JNB SP6,LOOP6;1-2

JNB SP7,LOOP7;1-3

JNB SP8,LOOP8;1-4

JNB SP9,BAOJING1

LJMP LOOP1

LOOP2:;二楼

JNB SP5,LOOP9;2-1

JNB SP6,LOOP10;2-2

JNB SP7,LOOP11;2-3

JNB SP8,LOOP12;2-4

JNB SP9,BAOJING1

LJMP LOOP2

LOOP5:

MOV P0,#06H

LJMP MAIN

LOOP6:

MOV P0,#5BH

LCALL SHANG

JNB SP2,MAIN

LJMP LOOP6 LOOP7:

MOV P0,#4FH

LCALL SHANG

JNB SP3,MAIN

LJMP LOOP7 LOOP31:

LJMP LOOP3 LOOP8:

MOV P0,#66H

LCALL SHANG

JNB SP4,MAIN

LJMP LOOP8 LOOP9:

MOV P0,#06H

LCALL XIA

JNB SP1,MAIN

LJMP LOOP9 LOOP10:

MOV P0,#5BH

LJMP MAIN

LOOP11:

MOV P0,#4FH

LCALL SHANG

JNB SP3,MAIN1

LJMP LOOP11 MAIN1:; 中转

LJMP MAIN

LOOP41:;中转

LJMP LOOP4 BAOJING1:

LJMP BAOJING LOOP12:

MOV P0,#66H

LCALL SHANG

JNB SP4,MAIN1

LJMP LOOP12 LOOP3:;三楼

JNB SP5,LOOP13;3-1

JNB SP6,LOOP14;3-2

JNB SP7,LOOP15;3-3

JNB SP8,LOOP16;3-4

JNB SP9,BAOJING1

LJMP LOOP3

基于51单片机系统设计

基于51单片机的多路温度采集控制系统设计 言: 随着现代信息技术的飞速发展,温度测量控制系统在工业、农业及人们的日常生活中扮演着一个越来越重要的角色,它对人们的生活具有很大的影响,所以温度采集控制系统的设计与研究有十分重要的意义。 本次设计的目的在于学习基于51单片机的多路温度采集控制系统设计的基本流程。本设计采用单片机作为数据处理与控制单元,为了进行数据处理,单片机控制数字温度传感器,把温度信号通过单总线从数字温度传感器传递到单片机上。单片机数据处理之后,发出控制信息改变报警和控制执行模块的状态,同时将当前温度信息发送到LED进行显示。本系统可以实现多路温度信号采集与显示,可以使用按键来设置温度限定值,通过进行温度数据的运算处理,发出控制信号达到控制蜂鸣器和继电器的目的。 我所采用的控制芯片为AT89c51,此芯片功能较为强大,能够满足设计要求。通过对电路的设计,对芯片的外围扩展,来达到对某一车间温度的控制和调节功能。 关键词:温度多路温度采集驱动电路 正文: 1、温度控制器电路设计 本电路由89C51单片机温度传感器、模数转换器ADC0809、窜入并出移位寄存器74LS164、数码管、和LED显示电路等组成。由热敏电阻温度传感器测量环境温度,将其电压值送入ADC0809的IN0通道进行模数转换,转换所得的数字量由数据端D7-D0输出到89C51的P0口,经软件处理后将测量的温度值经单片机的RXD端窜行输出到74LS164,经74LS164 窜并转换后,输出到数码管的7个显示段,用数字形式显示出当前的温度值。89C51的P2.0、P2.1、P2.2分别接入ADC0809通道地址选择端A、B、C,因此ADC0809的IN0通道的地址为F0FFH。输出驱动控制信号由p1.0输出,4个LED为状态指示,其中,LED1为输出驱动指示,LED2为温度正常指示,LED3为高于上限温度指示,LED4为低于下限温度指示。当温度高于上限温度值时,有p1.0输出驱动信号,驱动外设电路工作,同时LED1亮、LED2灭、LED3亮、LED4灭。外设电路工作后,温度下降,当温度降到正常温度后,LED1亮、LED2亮、LED3灭、LED4灭。温度继续下降,当温度降到下限温度值时,p1.0信号停止输出,外设电路停止工作,同时LED1灭、LED2灭、LED3灭、LED4亮。当外设电路停止工作后,温度开始上升,接着进行下一工作周期。 2、温度控制器程序设计 本软件系统有1个主程序,6个子程序组成。6个子程序为定时/计数器0中断服务程序、温度采集及模数转换子程序ADCON、温度计算子程序CALCU、驱动控制子程序DRVCON、十进制转换子程序METRICCON 及数码管显示子程序DISP。 (1)主程序 主程序进行系统初始化操作,主要是进行定时/计数器的初始化。 (2)定时/计数器0中断服务程序 应用定时计数器0中断的目的是进行定时采样,消除数码管温度显示的闪烁现象,用户可以根据实际环境温度变化率进行采样时间调整。每当定时时间到,调用温度采集机模数转换子程序ADCON,得到一个温度样本,并将其转换为数字量,传送给89C51单片机,然后在调用温度计算子程序CALCU,驱动控制子程序DRVCON,十进制转换子程序MERTRICCON,温度数码显示子程序DISP。

单片机最小系统设计

单片机最小系统设计 时间:2011-05-01 22:47:54 来源:作者: 单片机最小系统设计 该单片机最小系统具有的功能: (1)具有2位LED数码管显示功能。 (2)具有八路发光二极管显示各种流水灯。 (3)可以完成各种奏乐,报警等发声音类实验。 (4)具有复位功能。 功能分析 (1)两位LED数码管显示功能,我们可以利用单片机的P0口接两个数码管来现这个功能;(2)八路发光二极管显示可以利用P1口接八个发光二极管实现这个功能; (3)各种奏乐、报警等发声功能可以采用P2.0这个引脚接一蜂鸣器来实现。 (4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18、19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。 设计框图 硬件电路设计 根据本系统的功能,和单片机的工作条件,我们设计出下面的电路图。

元件清单的确定: 数码管:共阴极2只(分立) 电解电容:10UF的一只 30PF的电容2只 220欧的电阻9只 4.7K的电阻一只 1.2K的电阻一只 4.7K的排阻一只, 12MHZ的晶振一只 有源5V蜂名器一只 AT89S51单片机一片 常开按钮开关1只 紧锁座一只(方便芯取下来的,绿色的) 发光二极管(5MM红色)8只 万能板电路版15*17CM S8550三极管一只 4.5V电池盒一只,导线若干。七、硬件电路的焊接 按照原理图把上面的元件焊接好,详细步骤省略。 相关程序编写 针对上面的电路原理图,设计出本单片机最小系统的详细功能:(1)、第一个发光二极管点亮,同时数码管显示“1”。 (2)、第二个发光二极管点亮,同时数码管显示“2”。 (3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。以上出现的是流水灯的效果 (4)、所有的发光二极管灭了,同时数码管现实“0”。

基于51单片机的模拟打地鼠游戏设计

. 《现代通信技术》课程设计基于51单片机的模拟打地鼠游戏设计 院系:工学院 专业班级:通信工程10秋2班 姓名:钟丽薇 学号:10032202 小组成员:陆韵 指导教师:徐振、赵兰 完成日期2013年10月

目录 1 设计任务 (1) 1.1设计题目及材料 (1) 1.2设计要求 (1) 1.3设计进度安排 (2) 2 总体方案 (3) 2.1硬件设计 (3) 2.1.1 主控芯片 (3) 2.1.2 数码管模块 (4) 2.1.3 LED模块 (5) 2.1.4 独立按键模块 (5) 2.2软件设计 (6) 3 功能调试 (7) 3.1调试过程 (7) 3.2调试中遇到的问题 (7) 4 设计总结 (8) 5 致谢 (9)

1 设计任务 通过本次课程设计,运用已学的课程知识,自主设定题目及要求,进行软硬件系统的设计和调试,对《现代通信技术》课程中涉及的芯片结构、控制原理、硬件和编程等方面有一定的感性认识和实践操作能力,从而加深对本课程知识点的理解,使应用知识能力、设计能力、调试能力以及报告撰写能力等方面有显著提高。 1.1 设计题目及材料 我们的课程设计选题定为《基于51单片机的模拟打地鼠游戏设计》。 将所掌握的的元器件组合在一起,设计出具有可玩性的实用小制作,不仅巩固了已学习的知识,更能拓展自己的思维能力。 所用到的材料: 表1.1 材料列表 STC89C52单片机开发板1块 4位8段数码管(共阳)1个 LED灯5个 轻触按键5个 100Ω电阻5个 0.5kΩ电阻4个 9013三极管4个 杜邦线若干 1.2 设计要求 要求作品完成后,可以实现简易打地鼠游戏的功能。 具体如下:接通电源后,游戏开始,数码管显示“0”,同时随意点亮一个LED,在2秒时间内按下对应的按键,则数码管示数加一,游戏继续;

(完整word版)基于51单片机的温度控制系统设计

基于51单片机的水温自动控制系统 0 引言 在现代的各种工业生产中 ,很多地方都需要用到温度控制系统。而智能化的控制系统成为一种发展的趋势。本文所阐述的就是一种基于89C51单片机的温度控制系统。本温控系统可应用于温度范围30℃到96℃。 1 设计任务、要求和技术指标 1.1任务 设计并制作一水温自动控制系统,可以在一定范围(30℃到96℃)内自动调节温度,使水温保持在一定的范围(30℃到96℃)内。 1.2要求 (1)利用模拟温度传感器检测温度,要求检测电路尽可能简单。 (2)当液位低于某一值时,停止加热。 (3)用AD转换器把采集到的模拟温度值送入单片机。 (4)无竞争-冒险,无抖动。 1.3技术指标 (1)温度显示误差不超过1℃。 (2)温度显示范围为0℃—99℃。 (3)程序部分用PID算法实现温度自动控制。 (4)检测信号为电压信号。 2 方案分析与论证 2.1主控系统分析与论证 根据设计要求和所学的专业知识,采用AT89C51为本系统的核心控制器件。AT89C51是一种带4K字节闪存可编程可擦除只读存储器的低电压,高性能CMOS 8位微处理器。其引脚图如图1所示。 2.2显示系统分析与论证 显示模块主要用于显示时间,由于显示范围为0~99℃,因此可采用两个共阴的数码管作为显示元件。在显示驱动电路中拟订了两种设计方案: 方案一:采用静态显示的方案 采用三片移位寄存器74LS164作为显示电路,其优点在于占用主控系统的I/O口少,编程简单且静态显示的内容无闪烁,但电路消耗的电流较大。 方案二:采用动态显示的方案 由单片机的I/O口直接带数码管实现动态显示,占用资源少,动态控制节省了驱动芯片的成本,节省了电 ,但编程比较复杂,亮度不如静态的好。 由于对电路的功耗要求不大,因此就在尽量节省I/O口线的前提下选用方案一的静态显示。

51单片机最小系统实验报告

51单片机最小系统实验报告 1.实验目的: 1).学习、了解单片机原理,即单片机的各引脚功能、特殊功能寄存器、中断系统、定时/计数器和通信方式等; 2).了解指令系统,各指令的功能; 3).学习电路原理设计,PC板设计以及编排; 2.方案设计: 1).最小系统部分的设计能够用于基本的数字信号处理,运行一些简单的程序。此部分主要包括电源电路、复位电路、时钟电路、USB 接口设计等; 2).扩展电路的设计对于51最小系统CPU芯片等在芯片出厂时不可能让片内存储器的大小满足所有功能的要求,如果将片内存储器做太大,必然造成芯片成本的提高。所以合适的外部RAM、液晶、外部中断和串行接口电路设计等。 3.任务:51单片机最小系统的设计 1)CPU选择:STC15W4K系列 选择原因:a.宽电压(2.5V-5.5V) b. 大容量4K字节SRAM和多组并行端口 c.16/32/56/61/63.5字节多选Flash程序储存器以及普通定时、计数器T0-T4外部管脚可掉电唤醒。 d.内置高精准时钟(5-28MHz任意设置)和集成MAX810专用复位电路

e.看门狗、对外输出时钟及复位 2).系统要实现的功能: 以UPU为核心器件,并利用外存储器对最小系统电路进行扩展。在介绍CPU基本特点的基础上,通过学习指导,开展出51单片机最小系统板。系统要实现以下功能,最小系统部分的设计能够用于基本的数字信号处理,运行一些简单的程序。此部分主要包括电源电路、复位电路、时钟电路、中断系统,USB 接口的设计和相对扩展等。 4.外围器件选择及说明: 1).外部RAM:IS62C256AL。ISSI的IS62C256AL是一个32Kx8位字长的低功耗CMOS静态随机存取存储器。IS62C256AL采用ISSI公司的高性能,低功耗CMOS工艺制造。 当/CE处于高电平(未选中)时,IS62C256AL进入待机模式。在此CMOS 输入标准的待机模式下,功耗低至150 μW(典型值)。 使用IS62C256AL的低触发片选引脚(/CE)和低触发输出使能引脚(/OE),可以轻松实现存储器扩展。低触发写入使能引脚(/WE)将完全控制存储器的写入和读取。 IS62C256AL在引脚上完全兼容其他32Kx8的塑料SOP或TSOP1封装的SRAM。 2).USB接口。接收、传送数据。 3).USB转串口芯片:CH340G。支持USB1.1或者USB2.0/USB3.0通信.具有仿真接口,可以升级外围串口设备,支持常用的MODE联络信号、STC全系

51单片机模拟PWM输出占空比可调

#include #define UINT unsigned int #define UCHAR unsigned char sbit pwm=P1^0; //pwm输出口 sbit plus=P3^6;//按键调节增加输出脉宽 sbit reduce=P3^7;//按键调节减小输出脉宽 sbit duan=P2^6;// 数码管的段选 sbit wei=P2^7; //数码管的位选 UCHAR code SEG[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f }; UINT i; char j,k=5; void timer_init() //定时器0,8位自动重装 { TMOD=0x02; TH0=56; TL0=56; IE=0x82; TR0=1; } void delayms(UINT x) //延时 { UINT i,j; for(i=x;i>0;i--) for(j=110;j>0;j--); } void show(int a) //数码管显示 { int shi,ge; shi=a/10; ge=a%10; duan=1; P0=SEG[shi]; duan=0;

P0=0xff; wei=1; P0=0xfe; wei=0; delayms(3); duan=1; P0=SEG[ge]; duan=0; P0=0xff; wei=1; P0=0xfd; wei=0; delayms(3); } void timer0() interrupt 1 //定时器中断{ i++; if(i==5000) { i=0; j++; j=j%10; } if(j

基于51单片机的温度控制系统的设计

基于单片机的温度控制系统设计 1.设计要求 要求设计一个温度测量系统,在超过限制值的时候能进行声光报警。具体设计要求如下: ①数码管或液晶显示屏显示室内当前的温度; ②在不超过最高温度的情况下,能够通过按键设置想要的温度并显示;设有四个按键,分别是设置键、加1键、减1键和启动/复位键; ③DS18B20温度采集; ④超过设置值的±5℃时发出超限报警,采用声光报警,上限报警用红灯指示,下限报警用黄灯指示,正常用绿灯指示。 2.方案论证 根据设计要求,本次设计是基于单片机的课程设计,由于实现功能比较简单,我们学习中接触到的51系列单片机完全可以实现上述功能,因此可以选用AT89C51单片机。温度采集直接可以用设计要求中所要求的DS18B20。报警和指示模块中,可以选用3种不同颜色的LED灯作为指示灯,报警鸣笛采用蜂鸣器。显示模块有两种方案可供选择。 方案一:使用LED数码管显示采集温度和设定温度; 方案二:使用LCD液晶显示屏来显示采集温度和设定温度。 LED数码管结构简单,使用方便,但在使用时,若用动态显示则需要不断更改位选和段选信号,且显示时数码管不断闪动,使人眼容易疲劳;若采用静态显示则又需要更多硬件支持。LCD显示屏可识别性较好,背光亮度可调,而且比LED 数码管显示更多字符,但是编程要求比LED数码管要高。综合考虑之后,我选用了LCD显示屏作为温度显示器件,由于显示字符多,在进行上下限警戒值设定时同样可以采集并显示当前温度,可以直观的看到实际温度与警戒温度的对比。LCD 显示模块可以选用RT1602C。

3.硬件设计 根据设计要求,硬件系统主要包含6个部分,即单片机时钟电路、复位电路、键盘接口模块、温度采集模块、LCD 显示模块、报警与指示模块。其相互联系如下图1所示: 图1 硬件电路设计框图 单片机时钟电路 形成单片机时钟信号的方式有内部时钟方式和外部时钟方式。本次设计采用内部时钟方式,如图2所示。 单片机内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别为此放大器的输入端和输出端,其频率范围为~12MHz ,经由片外晶体振荡器或陶瓷振荡器与两个匹配电容一 起形成了一个自激振荡电路,为单片机提供时钟源。 复位电路 复位是单片机的初始化操作,其作用是使CPU 和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作,以防止电源系统不稳定造成CPU 工作不正常。在系统中,有时会出现工作不正常的情况,为了从异常状态中恢复,同时也为了系统调试方便,需要设计一个复位电路。 单片机的复位电路有上电复位和按键复位两种形式,因为本次设计要求需要有启动/复位键,因此本次设计采用按键复位,如图3。复位电路主要完成系统 图2 单片机内部时钟方式电路 图3 单片机按键复位电路

跟我学51单片机(一):单片机最小系统组成与IO输出控制

跟我学51单片机(一):单片机最小系统组成与I/O输出控制 1 单片机是一门实践性较强的技术,很多初学者在学习单片机技术开发的时候往往一头雾水,不知何从下手。为此,笔者结合自己使用单片机多年的经验,特意设计了单片机开发所需的Stud y-c 整机和硬件套件,并结合套件精心编写了单片机从入门到精通系列教程。通过讲述单片机原理、电路设计、应用开发软件工具、编写实验实例让读者全面接触单片机技术。教程编排上由浅入深,循序渐进,内容力求完整、实用、趣味并存,使读者在轻松愉快的学习过程中逐步提高单片机软硬件综合设计水平。 一、内容提要 本讲主要向大家介绍51 系列单片机的最小系统的实现并通过编写程序来实现对单片机IO 口的输出控制。以点亮外部连接的LED(发光二极管)为例,简要的介绍单片机的原理、最小系统的组成,并通过简单的C51 程序设计来讲述编译软件Keil的使用并下载Hex 文件烧写单片机。 二、原理简介 在了解原理之前,首先让我们思考一个问题,什么是单片机,单片机有什么用?这是一个有意思的问题,因为任何人都不能给出一个被大家都认可的概念,那到底什么是单片机呢?普遍来说,单片机又称单片微控制器,是在一块芯片中集成了CPU(中央处理器)、RAM (数据存储器)、ROM(程序存储器)、定时器/ 计数器和多种功能的I/O(输入/ 输出)接口等一台计算机所需要的基本功能部件,从而可以完成复杂的运算、逻辑控制、通信等功能。在这里,我们没必要去找到明确的概念来解析什么是单片机,特别在使用C 语言编写程序的时,不用太多的去了解单片机的内部结构以及运行原理等。从应用的角度来说,通过从简单的程序入手,慢慢的熟悉然后逐步深入精通单片机。 在简单了解了什么是单片机之后,然后我们来构建单片机的最小系统,单片机的最小系统就是让单片机能正常工作并发挥其功能时所必须的组成部分,也可理解为是用最少的元件组成的单片机可以工作的系统。对51 系列单片机来说,最小系统一般应该包括:单片机、时钟电路、复位电路、输入/ 输出设备等(见图1)。

基于51单片机的模拟电梯控制系统

目录 摘要............................................................................. II 目录.............................................................................. I 第1章绪论.. (1) 1.1电梯的研究背景及意义 (1) 1.2 电梯的国内外发展状况 (1) 第2章电梯设计任务与要求 (2) 2.1设计任务 (2) 2.2设计要求 (2) 第3章总体设计方案 (3) 3.1设计思路 (3) 3.2总体设计框图 (3) 第4章电梯控制系统 (4) 4.1电梯控制系统 (4) 4.2主要硬件设计器件介绍 (5) 4.3 软件设计 (9) 第5章个人心得体会 (12) 参考文献 (13) 致谢 (14) 附录I: (15) 附录II: (17)

摘要 本文介绍了基于单片机的电梯控制系统,硬件部分主要由单片机最小系统模块、电梯内外电路按键模拟检测模块、电梯外请求发光管显示模块、楼层显示数码管模块、电梯上下行模块及模拟传感器模块等5部分组成。该系统采用单片机(AT89C51)作为控制核心,内外均使用按键按下与否引起的单片机相应端口电平变化的原理,作为用户请求信息发送到单片机,单片机根据判断的结果最终驱动步进电机做相应的运动,在运动的过程中,单片机依照请求信息通过模拟的传感器使步进电机停止运动,并利用彩灯作为上升和下降的状况显示,七段数码管实时显示当前楼层,完成整个请求和响应的过程。 软件部分使用汇编语言实现,利用查询方式来检测用户请求的按键信息。根据电梯运行到相应楼层时,模拟按键引起的电平变化,进行判断和执行实现电梯的控制,并且将程序模块化,方便了修改和调用。硬件设计简单可靠,结合软件,基本实现了四层电梯的模拟运行。 关键词:单片机,AT89C51,电梯控制,步进电机

基于51单片机最小系统设计

基础强化训练任务书 学生姓名:董勇涛专业班级:电子0902 指导教师:洪建勋工作单位:信息工程学院 题目:基于51单片机最小系统设计 一、训练目的 主要目的就是对学生进行基础课程、基本技能、基本动手能力的强化训练,提高学生的基础理论知识、基本动手能力,提高人才培养的基本素质。 二、训练内容和要求 1、基础课程和基本技能强化训练 (1)设计一个基于51单片机最小系统电路; (2)对所设计电路的基本原理进行分析; 2、文献检索与利用、论文撰写规范强化训练 要求学生掌握基本的文献检索方法,科学查找和利用文献资料,同时要求学生获得正确地撰写论文的基本能力,其中包括基本格式、基本排版技巧和文献参考资料的写法、公式编排、图表规范制作、中英文摘要的写法等训练。 3、基本动手能力和知识应用能力强化训练 (1)学习PROTEL软件; (2)绘制电路的原理图和PCB版图,要求图纸绘制清晰、布线合理、符合绘图规范; 4、查阅至少5篇参考文献,按《武汉理工大学课程设计工作规范》要求撰写基础强化训练报告书,全文用A4纸打印。 三、初始条件 计算机;Microsoft Office Word 软件;PROTEL软件 四、时间安排 1、20011年7 月 11日集中,作基础强化训练具体实施计划与报告格式要求的说明; 学生查阅相关资料,学习电路的工作原理。 2、2011年7 月 12日,电路设计与分析。 3、2011年7 月 13日至2010年7 月 14日,相关电路原理图和PCB版图的绘制。 4、2011年7 月15日上交基础强化训练成果及报告,进行答辩。 指导教师签名:年月日系主任(或责任教师)签名:年月日 目录 摘要.................................................................................................................... 错误!未定义书签。

51单片机经典教程

单片机经典教程 目录
第一课 第二课 第三课 第四课 第五课 第六课 第七课 第八课 第九课 第十课 第十一课 第十二课 第十三课 第十四课 第十五课 第十六课 第十七课 第十八课 第十九课 第二十课 第二十一课 第二十二课 第二十三课 第二十四课 单片机的概述 单片机的硬件结构与开发过程 单片机的内部结构 一 半导体存储器 单片机的内部结构 二 工作寄存器 单片机的内部结构 三 时序与时钟 单片机的内部结构 四 并行口 单片机的内部结构 五 数据与地址 单片机的内部结构 六 特殊功能存储器 单片机的工作方式 单片机的寻址 单片机的指令 一 数据传递类指令 单片机的指令 二 数据传递类指令 单片机的指令 三 算术逻辑运算类指令 单片机的指令 四 控制转移类指令 单片机的指令 五 位及位操作指令 单片机的程序设计方法 单片机的定时 计数器 单片机的中断系统 单片机的定时/中断实验 一 单片机的定时/中断实验 二 键盘接口及编程方法 一 独立式按键 键盘接口及编程方法 二 矩阵式按键 单片机显示器接口及编程方法 数码管的静态扫描与编程方法 6 9 11 15 18 20 24 27 29 32 35 38 42 47 51 55 64 68 73 78 81 87 90 94
4

第一课 单片机的概述
因为我们的主要课程是单片机的应用 本来不想讲解单片机的历史与发展 这话说现状更确切 些 但为了兼顾大多数朋友 我还是简单的介绍一下这方面的相关知识 一 单片机的由来 单片机 专业名称—Micro Controller Unit(微控制器件) 它是由大名鼎鼎的 INTEL 公司发明的 最早的系列是 MCS-48 后来有了 MCS-51 我们经常说的 51 系列单片机就是 MCS-51 micro controller system 它是一种 8 位的单片机 8 位是什么意思 我们以后再讲 后来 INTEL 公司把它的核心技术转让给了世界上很多的小公司 不过 再小也有几个亿的销售/ 年哦 所以世界上就有许多公司生产 51 系列兼容单片机 比如飞利浦的 87LPC 系列 华邦的 W78 系列 达拉斯的 DS87 系列 现代的 GSM97 系列等等 目前在我国比较流行的就是美国 ATMEL 公司的 89C51 它是一种带 Flash ROM 的单片机 至于什么是 Flash ROM 我在这儿先不作介绍 等以后大家学到相 关的知识时自然就会明白 我们的讲座就是以该型号的单片机来作实验的 讲到这里 也许有的人会 问 我平时在各种书上看到全是讲解 8031 8051 等型号的单片机 它们又有什么不同呢 其实它们同 属于一个系列 只是 89C51 的单片机更新型一点(事实上,89C51 目前正在用 89S51 代替 我们的实验系 统采用就是 89S52 的 兼容 89C52) 这里随便说一下 目前国内的单片机教材都是以 8051 为蓝本的 尽管其内核也是 51 系列的 但毕竟 8051 的单片机已经属于淘汰产品 在市场上也很少见到了 所以由 此感叹 国内的高等教育是如此的跟不上时代的发展需要 这话可能会引起很多人的不满,所以大家别 说是我讲的哦 二 主要单片机的分类 接着上面的话题 再给大家介绍一下我们经常在各种刊物上看到的 AVR 系列和 PIC 系列单片机是 怎么回事 以便让大家对单片机的发展有一个较全面的认识 在没有学习单片机之前 这是一个令很多 初学者非常困惑的问题 这么多的单片机我该先学哪一种呢 AVR 系列单片机也是 ATMEL 公司生产的一种 8 位单片机 它采用的是一种叫 RISC 精简指令集单 片机 的结构 所以它的技术和 51 系列有所不同 开发设备也和 51 系列是不通用的 它的一条指令的 运行速度可以达到纳秒级 即每秒 1000000000 次 是 8 位单片机中的高端产品 由于它的出色性能 目前应用范围越来越广 大有取代 51 系列的趋势 所以学完了 51 系列的 看来必须学会 AVR 的才行 可叹知识爆炸 人生苦短 说完了 AVR 的 再来说说另一种--PIC 系列单片机 它是美国 MICROCHIP 公 司 唉 又是老美 叫微芯公司的生产的另一种 8 位单片机 它采用的也是 RISC 的指令集 它的指令 系统和开发工具与 51 系列更是不同 但由于它的低价格和出色性能 目前国内使用的人越来越多 国 内也有很多的公司在推广它 不过它的影响力远没有 51 系列的大 所以作为初学者 51 系列当然是首 选 以上几种只是比较多见的系列 其实世界上还有许多的公司生产各种各样的单片机 比如 MOTOROLA 的 MC68H 系列 老牌的单片机 TI 的 MSP430C 系列 极低功耗的单片机 德国的西门子 SIEMENS 等等 它们都有各自的结构体系 并不与 51 系列兼容 为了不搞大家的脑筋 这里就不介绍了 等大 家入了门以后自己去研究它吧 我们还是回来了解一下 51 系列单片机到底是个什么东西 它有那些部 分组成 请接着往下看 三 单片机的结构及组成 单片机到底是一种什么 DD 它究竟能做什么呢 其实它就是一种能进行数学和逻辑运算 根据不 同使用对象完成不同控制任务的面向控制而设计的集成电路 此话好象有点绕口 没关系 大家都应该 知道我们经常使用的电脑吧 在电脑上 我们可以用不同的软件在相同的硬件上实现不同的工作 比如 我们用 WORD 可以打字 用 PROTEL 可以设计图纸等等 单片机其实也是如此 同样的芯片可以根据我们 不同的要求做出截然不同的产品 只不过电脑是面向应用的 而单片机是面向控制的 比如控制一个指
6

单片机最小系统(详解)设计报告

摘要 近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。 本次课程设计包括STC89C51单片机最小系统(包括复位和时钟电路)还有蜂鸣器电路、LED电路和RS232串口电路以及用于扩展功能的四排与I/O端口相连的插孔。利用Protel电路设计软件进行原理图设计,PCB布线,借此巩固单片机应用、模拟电路、数字电路课程及学会工程软件protel的使用。 关键词:最小系统,I/O端口,STC89C51, PCB

Abstract Recent years, with the penetration of computers in the social sphere, SCM applications are constantly deepening, while driving traditional control detects the rapidly growing updated. In the real-time detection and automatic control of microcomputer application system, the microcontroller is often used as a core component, only the microcontroller knowledge is not enough, should be based on the specific hardware architecture, as well as application-specific software features object combine to make perfect . The curriculum includes the SCM STC89C51 minimum system (including reset and clock circuit) and the buzzer circuit, eight digital tube display circuit, RS232 serial port circuitry, and used to extend the functionality of the four rows with the I / O ports are connected jack. Protel circuit design software for the use of schematic design, PCB layout, thereby consolidating microcontroller applications, analog circuits, digital circuits courses and learn to use engineering software Protel. Keyword:minimum system,I/O Port, STC89C51, PCB

51单片机模拟spi串行接口程序

51单片机模拟spi串行接口程序 51单片机模拟spi串行接口程序,在keilc51下编写 sbit CS=P3^5; sbit CLK= P1^5; sbit DataI=P1^7; sbit DataO=P1^6; #define SD_Disable() CS=1 //片选关 #define SD_Enable() CS=0 //片选开 unsigned char SPI_TransferByte(unsigned char val) { unsigned char BitCounter; for(BitCounter=8; BiCounter!=0; BitCounter--) { CLK=0; DataI=0; // write if(val&0x80) DataI=1; val<<=1; CLK=1; if(DataO)val|=1; // read } CLK=0; return val; }sbit CLK= P1^5; sbit DataI=P1^7;

sbit DataO=P1^6; #define SD_Disable() CS=1 //片选关 #define SD_Enable() CS=0 //片选开 unsigned char SPI_TransferByte(unsigned char val) { unsigned char BitCounter; for(BitCounter=8; BiCounter!=0; BitCounter--) { CLK=0; DataI=0; // write if(val&0x80) DataI=1; val<<=1; CLK=1; if(DataO)val|=1; // read } CLK=0; return val; } sbit CLK= P1^5; sbit DataI=P1^7; sbit DataO=P1^6; #define SD_Disable() CS=1 //片选关 #define SD_Enable() CS=0 //片选开

基于51单片机的交通控制系统模拟设计

基于51单片机的交通控制系统模拟设计 学院:电气与控制工程学院 专业:自动化 姓名:

目录 1. 设计思路 (2) 2.2显示界面方案 (2) 2.3输入方案: (2) 3 单片机交通控制系统总体设计 (2) 3.1单片机交通控制系统的通行方案设计 (2) 3.2单片机交通控制系统的功能要求 (3) 3.3单片机交通控制系统的基本构成及原理 (3) 4智能交通灯控制系统的硬件设计 (4) 4.1系统硬件总电路构成及原理 (4) 4.2系统硬件电路构成 (4) 4.3系统工作原理 (4) 5 系统软件程序的设计 (6) 5.1程序主体设计流程 (6) 参考文献 (17) 设计心得体会 (18) 附录 (19) 基于单片机的交通控制系统模拟设计

1. 设计思路 (1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示,基于实际情况,又增加了紧急状况处理和通行时间可调这两项特特殊功能。 (3)进行显示电路,灯状态电路,按键电路的设计和对各器件的选择及连接,大体分配各个器件及模块的基本功能要求。 (4)进行软件系统的设计,对于本系统,采用单片机C语言编写,对单片机内部结构和工作情况做了充足的研究,了解定时器,中断以及延时原理,总体上完成了软件的编写。 2.单片机交通控制系统方案的比较、设计与论证 2.1 电源提供方案 采用单片机控制模块提供电源。改方案的优点是系统简明扼要, 节约成本;缺点是输出功率不高。 2.2 显示界面方案 采用数码管显示。这种方案只显示有限的符号和数码字符,简单,方便。 2.3 输入方案: 由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用,故选择方案二。 3 单片机交通控制系统总体设计 3.1单片机交通控制系统的通行方案设计 设在十字路口,分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。其具体状态如下所示。交通状态从状态1开始变换,直至状态6然后循环至状态1,周而复始。 通过具体的路口交通灯状态的演示分析我们可以把这四个状态归纳如下: ◆南北方向红灯灭,同时绿灯亮,东西方向黄灯灭,同时红灯亮,倒计时30秒。此状态下,东西向禁止通行,南北向允许通行。 ◆南北方向绿灯灭,东西方向红灯灭,同时黄灯亮,倒计时3秒。此状态下,除了已经正在通行中的其他所以车辆都需等待状态转换。

51单片机教程

原作:平凡的单片机

1、何谓单片机一台能够工作的计算机要有这样几个部份构成:CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)。在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如A/D,D/A等。 天!PC中的CPU一块就要卖几千块钱,这么多东西做在一起,还不得买个天价!再说这块芯片也得非常大了。不,价格并不高,从几元人民币到几十元人民币,体积也不大,一般用40脚封装,当然功能多一些单片机也有引脚比较多的,如68引脚,功能少的只有10多个或20多个引脚,有的甚至只8只引脚。为什么会这样呢?功能有强弱,打个比方,市场上面有的组合音响一套才卖几百块钱,可是有的一台功放机就要卖好几千。另外这种芯片的生产量很大,技术也很成熟,51系列的单片机已经做了十几年,所以价格就低了。既然如此,单片机的功能肯定不强,干吗要学它呢?话不能这样说,实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用PIII?应用的关键是看是否够用,是否有很好的性能价格比。所以8051出来十多年,依然没有被淘汰,还在不断的发展中。 2、MCS51单片机和8051、8031、89C51等的关系我们平常老是讲8051,又有什么8031,现在又有89C51,它们之间究竟是什么关系? MCS51是指由美国INTEL公司(对了,就是大名鼎鼎的INTEL)生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。INTEL 公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国ATMEL 公司开发生产的。以后我们将用89C51来完成一系列的实验。 一、单片机的外部结构 拿到一块芯片,想要使用它,首先必须要知道怎样连线,我们用的一块称之为89C51的芯片,下面我们就看一下如何给它连线。1、电源:这当然是必不可少的了。单片机使用的是5V电源,其中正极接40引脚,负极(地)接20引脚。2、振蒎电路:单片机是一种时序电路,必须提供脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。只要买来晶振,电容,连上就可以了,按图1接上即可。3、复位引脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。4、EA引脚:EA引脚接到正电源端。至此,一个单片机就接好,通上电,单片机就开始工作了。 我们的第一个任务是要用单片机点亮一只发光二极管LED,显然,这个LED必须要和单片机的某个引脚相连,否则单片机就没法控制它了,那么和哪个引脚相连呢?单片机上除了刚才用掉的5个引脚,还有35个,我们将这个LED和1脚相连。(见图1,其中R1是限流电阻) 按照这个图的接法,当1脚是高电平时,LED不亮,只有1脚是低电平时,LED才发亮。因此要1脚我们要能够控制,也就是说,我们要能够让1引脚按要求变为高或低电平。即然我们要控制1脚,就得给它起个名字,总不能就叫它一脚吧?叫它什么名字呢?设计51芯片的INTEL公司已经起好了,就叫它P1.0,这是规定,不可以由我们来更改。

基于51单片机的交通灯控制系统设计

目录 一引言 (2) 二概要设计 (2) 2.1 设计思路 (2) 2.2总体设计框图 (2) 三硬件设计 (3) 3.1LED循环电路设计 (3) 3.1.1 89cs51单片机概述 (3) 3.1.2 LED循环说明 (5) 3.2 倒计时显示电路 (5) 3.2.1 74LS164芯片 (5) 3.2.2 共阴极数码显示管 (6) 3.2.3 倒计时电路 (6) 3.2.4 急通车电路 (7) 四软件按设计 (7) 4.1 程序流程图: (7) 4.2 LED红绿灯显示 (8) 4.3倒计时显示 (9) 4.4 急通车控制 (9) 4.5程序代码 (9) 五总结 (9) 参考文献 (9) 附录一: (9) 附录二: (10)

基于51单片机的交通灯控制系统设计 摘要:在日常生活中,交通信号灯的使用,市交通得以有效管理,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。交通灯控制系统由80C51单片机、键盘、LED 显示、交通灯延时组成。系统除具有基本交通灯功能外,还具有时间设置、LED信息显示功能,市交通实现有效控制。 关键词:交通灯,单片机,自动控制 一引言 当今,红绿灯安装在个个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这个技术在19世纪就已经出现了。 1858年,在英国伦敦主要街头安装了以燃煤气为光源的红、蓝两色的机械般手势信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的会议大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转方式玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,是警察受伤,遂被取消! 电气启动的红绿灯出现在美国,这种红绿灯由红黄绿三色圆形的投光器组成,1914年始装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。 信号灯的出现,使得交通得以有效的管理,对于疏导交通流量、提高道路通行能力、减少交通事故有明显效果。1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。绿灯时通行信号灯,面对绿灯的车辆可以直行,左转弯和右转弯,除非两一种标志禁止某一种转向。左右转弯车辆必需让合法的正在路口内行驶的车辆和过人行横线的行人优先通行。红灯是禁行信号灯,面对红灯的车辆必需在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已经十分接近停车线而不能安全停车的可以进入交叉路口! 二概要设计 2.1 设计思路 利用单片机实现交通灯的控制,该任务分以下几个方面: a 实现红、绿、黄灯的循环控制。要实现此功能需要表示三种不同颜色的LED灯分别接在P1个管脚,用软件实现。 b 用数码管显示倒计时。可以利用动态显示或静态显示,串行并出或者并行并出实现。 C 实现急通车。这需要人工实现,编程时利用到中断才能带到目的,只要有按钮按下,那么四个方向全部显示红灯,禁止以诶车辆通行。当情况解除,让时间回到只能隔断处继续进行。 2.2总体设计框图 见图一:

相关文档
相关文档 最新文档