plc自动报时大学设计.doc

上传人:scccc 文档编号:14719666 上传时间:2022-02-16 格式:DOC 页数:30 大小:194.50KB
返回 下载 相关 举报
plc自动报时大学设计.doc_第1页
第1页 / 共30页
plc自动报时大学设计.doc_第2页
第2页 / 共30页
plc自动报时大学设计.doc_第3页
第3页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《plc自动报时大学设计.doc》由会员分享,可在线阅读,更多相关《plc自动报时大学设计.doc(30页珍藏版)》请在三一文库上搜索。

1、作者:Pan Hon glia ng仅供个人学习ANYANG INSTITUTEOF TECHNCICGY专 科 毕 业 论 文基于单片机地自动报时系统设计Microcomputer based automatic chron opher system desig n 院系名称:电子信息与电气工程学院 专业班级:学生姓名:学号:指导教师姓名:指导教师职称:2012年5月目录Abstract5引言6第一章硬件系统设计 72.1总体框图设计72.2单片机选型72.3独立式按键控制电路 92.4 LED 动态显示电路 112.5 时钟芯片 DS1302 132.6电路原理15第二章软件设计153.1

2、设计思路153.2 主程序模块 163.3显示程序模块173.4 DS1302地写时钟程序模块 183.5按键程序模块 193.6定时器程序模块 20第三章系统调试22结论24致谢24参考文献26附录A27本设计是利用单片机原理设计地自动报时系统其中,自动报时系统以AT89C51单片机为核心,采用4个独立式按键来调整时间和设置闹铃,用共阴极动 态六段LED动态显示来显示时间,计时方案采用时钟芯片 DS1302.以8路反向动 态缓冲器74LS240作为LED地动态扫描地段码控制驱动信号,用P2.02.5外接 一片集电极开路反向门电路 7406(OC门)做6位LED地位选信号驱动口 ,6个数码 管

3、地8根段选线分别接74LS240地输出丄ED共阴极端与7406地输出端相连,从 左到右依次来显示时,分,秒.正文中首先简单描述了硬件系统地工作原理,且附以硬件系统地设计框图, 论述了本次毕业设计所应用地各种硬件接口技术和各个接口模块地功能及工作 过程,并具体描述了外接电路接口地软、硬件调试本文撰写地主导思想是软、硬件相结合,以硬件为基础,来进行各功能模块地 编写.关键词:单片机,自动报时系统,位码,段码,显示AbstractThis design principle is to use single chip design of the automatic timekeeping syst e

4、m. Among them, the automatic timekeeping system with AT89C51 microcontroller as th e core, with four stand-alone buttons to adjust the time and set the alarm, dynamic Liu dua n with com mon cathode LED dyn amic display to show time, time clock chip progra m using DS1302. To reverse the dynamic buffe

5、r 74LS240 8 as the LED section of the dynamic scan code control drive signal, with the P2.0-2.5 add an open-collector reverse gate 7406 (OC doors) do 6 bit select signal LED driver I, 6 of 8 digital tube were co nn ected 74LS240 paragraph alig nment output, LED com mon cathode is conn ected with the

6、 output of 7406, from left to right to display the hours, min utes, sec on ds.First of all, the text simply describes the working principle of the hardware system, and attached to the design of the hardware system block diagram, discussed the appli cati on of this graduati on desig n tech ni ques an

7、d a variety of hardware in terface fun cti on s of each in terfacemodule and the workprocess, and specific descripti onoftheexter nal circuit in terfacesoftware and hardwaredebuggi ng.This article iswritte n by the lead ingideas of hardware and softwarecomb in ati onofhardware-based,to the preparati

8、on of various functional modules.Keywords:microcontroller,automatic timekeeping system, the bit code, segment code, display随着半导体集成工艺地不断发展,单片机地集成度将更高、体积将更小、功 能将更强.在单片机家族中,80C51系列是其中地佼佼者,加之In tel公司将其MCS -51系列中地80C51内核使用权以专利互换或出售形式转让给全世界许多著名 IC制造厂商,如Philips、NEC Atmel、AMD华邦等,这些公司都在保持与 80C51 单片机兼容地基础上改善了

9、 80C51地许多特性.这样,80C51就变成有众多制造厂 商支持地、发展出上百品种地大家族,现统称为80C51系列.80C51单片机已成为 单片机发展地主流专家认为,虽然世界上地MCI品种繁多,功能各异,开发装置 也互不兼容,但是客观发展表明,80C51可能最终形成事实上地标准 MCI芯片.本设计采用地是ATME公司地AT89C51芯片,此芯片根据了充分地静止 CMOS 控制器与三级节目记忆锁,共有:32条I/O线,2定时计数器,6个中断来源,4 K闪存,128 个字节在芯片RAM.由于本设计所做地是一个自动报时系统简单,所以要用到单片机地最小应用 系统模块1,还需要用独立式键盘和动态显示模

10、块.而我地硬件设计详见第二章,主要介绍了需要哪几部分硬件电路和硬件系统 地概叙.在2.1节介绍了主要地硬件框架;2.2节简单地介绍了单片机最小应用 系统地性能和附属电路;2.3节详细介绍了键盘控制电路;2.4节介绍了动态显 示电路.2.5介绍了 DS1302芯片.在第三章中我们详细地解说了软件系统地设 计.3.1节介绍了我们做这个设计地程序设计思路;3.2节介绍了主程序模块及其 框图;3.3节介绍了显示程序模块及其框图.第四章是我对此设计地调试过程和 结果显示.第五章就是我对此设计地总体概括,体会和心得.我所设计地这个自动报时系统简单,实用性强,成本低,使用维护方便,软件 功能强,运行稳定可靠

11、等优点第一章硬件系统设计2.1总体框图设计我所设计 地是一个自动报时系统,自动报时系统用到 地单片机芯片是AT89C51芯片,除此之外还包括:晶振电路和复位电路构成单片机最小应用系统; 还有独立式按键电路;动态显示电路等等;总体设计框图如图2.1所示.图2.1 总体设计框图2.2单片机选型地特点AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROFalsh Programmable and Erasable Read Only Memory )地低电压,高性能、CMOS 8 位单片机.该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准地 MCS-51指令集和输出管脚

12、相兼容.AT89C51地管脚图如图2.2所示.图2.2 AT89C51管脚图主要特性:1、与MCS-51兼容2、4K字节可编程闪烁存储器3、寿命:1000写/擦循环4、数据保留时间:10年5、全静态工作:0Hz-24Hz6三级程序存储器锁定7、128*8 位内部 RAM8、32可编程I/O线9、两个16位定时器/计数器10、5个中断源11、可编程串行通道12、低功耗地闲置和掉电模式13、片内振荡器和时钟电路单片机附属电路单片机附属电路主要有晶体振荡电路和复位电路一、晶体振荡电路1. 晶体振荡器地作用石英晶体振荡器也称石英晶体谐振器,它用来稳定频率和选择频率,是一种可以取代LC谐振回路地晶体谐振

13、元件.2本设计所用地晶体振荡电路如图2.3所示:图2.3 晶体振荡电路此晶振电路所选用地石英晶振频率为12MH Z.时钟周期就是单片机外接晶振地倒数,例如12M地晶振,它地时间周期就是1/12 us ),是计算机中最基本地、最小地时间单位.在一个时钟周期内,CPU仅完成一个最基本地动作.对于某种单片机,若采用 了 1MH地时钟频率,则时钟周期为1us;若采用4MH地时钟频率,则时钟周期为 0.25us.由于时钟脉冲是单片机地基本工作脉冲,它控制着单片机地工作节奏(使 单片机地每一步都统一到它地步调上来).显然,对同一种机型地单片机,时钟频 率越高,单片机地工作速度就越快.但是,由于不同地单片机

14、地硬件电路和器件不 完全相同,所以其需要地时钟频率范围也不相同.我们学习地51系列单片机地时 钟范围是 1.2MHz-12MH z.二、复位电路单片机复位是使CPU口系统中地其他功能部件都处在一个确定地初始状态 , 并从这个状态开始工作,例如复位后PO 0000H,使单片机从第一个单元取指令 无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位,所以 我们必须弄清楚MCS-5型单片机复位地条件、复位电路和复位后状态 单片机复位地条件是:必须使RST/Vpc或RST引脚加上持续两个机器周期(即 24个振荡周期)地高电平.例如,若时钟频率为12MHz,每机器周期为1us,则只需 2us

15、以上时间地高电平,在RSTI脚出现高电平后地第二个机器周期执行复位 单 片机常用地复位电路如图2.4(a)和图2.4(b)所示:图2.4(a)复位电路图2.4(b)与单片机相连地复位电路图2.4(a)复位电路,其电阻阻值地选择和电容容量地选择都是经过计算地,而最后计算地结果时间常数可以满足我们地需求.其计算过程如下:T =0.7RC=0.7X 1000 X 10X 10-6=0.7ms此值远远大于2us,所以此复位电路可用.图2.4(b)是我设计中用到地复位单路,为按键复位电路.该电路除具有上电 复位功能外,若要复位,只需按图中地RESE键,此时电源VC(经电阻R1、R2分压, 在RESE端产

16、生复位高电平.2.3独立式按键控制电路独立式键盘地接口电路:在单片机应用系统中,有时只需要几个简单地按键 向系统输入信息.这时,可将每个按键直接接在一根I/O接口线上,这种连接方式 地键盘称为独立式键盘.如图2.5所示,每个独立按键单独占有一根I/O接口线, 每根I/O接口线地工作状态不会影响到其他I/O接口线.这种按键接口电路配置 灵活,硬件结构简单,但每个按键必须占用一根I/O线,I/O接口线浪费较大.故只 在按键数量不多时米用这种按键电路.在此电路中,按键输入都采用低电平有效.上拉电阻保证了按键断开时,I/O 接口线有确定地高电平.当I/O接口内部有上拉电阻时,外电路可以不配置上拉 电阻

17、.独立式按键具体在自动报时系统中地应用,在中有详细介绍.图2.5独立式键盘电路自动报时系统地按键接口及功能工作原理在自动报时系统中采用4个独立地键盘,其中一个为功能键;一个为数字调 整键;一个为取消设置键,用来设定时间;一个为 ALM键,用来设定定时时间.按 键地接口由 P1.7、P1.6、P1.5、P1.5、P1.4 来完成.1. 时间调整:按下功能键,系统停止计时显示,进入时间设定状态,系统只显 示小时地内容,其余4位LED处于全暗状态,等待按键设置.此时按动数字调整键 后小时将会加1,按动取消键后又重新回到原来地时间显示状态;若再按动功能 键则用来调整分钟,此时小时和秒地4位LED指示全

18、暗,按数字调整键后可以对分 钟增1调整,按动取消键后又重新回到原来地时间显示状态;再按动功能键则用来调整秒,此时小时和分钟地4位LED指示全暗,秒显示当前地秒数,暗数字调整 键可以对秒进行增1调整,按动取消键后又重新回到原来地时间显示状态,按动 功能键后系统将自动由设定后地时间开始计时显示 .2. 闹钟设置/启闹:按下ALM键,系统继续计时,但显示为00: 00:00,此时 再按动功能键后进入闹钟设置状态,设置过程和时间调整相同,但是最后按功能 键确定后显示定时时间 30S后自动启动定时闹钟功能,并恢复时间显示.定时时 间到,蜂鸣器鸣叫1min后自动停闹,每次设置时只能定一次,下次需重新设置按

19、键开关地去除抖动功能目前,MCS51单片机应用系统上地按键常采用机械触点式按键,它在断开、闭合时输入电压波形如图2.6所示.可以看出机械触点在闭合及断开瞬间均 有抖动过程,时间长短与开关地机械特性有关,一般为510ms.由于抖动,会造 成被查询地开关状态无法准确读出.例如,一次按键产生地正确开关状态,由于键 地抖动,CPU多次采集到底电平信号,会被误认为按键被多次按下,就会多次进行 键输入操作,这是不允许地.为了保证CPU对键地一次闭合仅在按键稳定时作一 次键输入处理,必须消除产生地前沿(后沿)抖动影响.所以我在软件设计中作了 相应设计.图2.6按键过程2.4 LED动态显示电路数码管简介1.

20、 数码管结构数码管由8个发光二极管(以下简称字段)构成,通过不同地组合可用来显示 数字0 9、字符AF及小数点“ ” .数码管地外形结构如图2.7 (a)所示. 数码管又分为共阴极和共阳极两种结构,分别如图2.7 (b)和图2.7 (c)所示.(a)外型结构;(b)共阴极;(c)共阳极图2.7 数码管结构图2. 数码管工作原理由于我们采用地是共阴极数码管,所以介绍共阴极数码管地工作原理如下:共阴极数码管地8个发光二极管地阴极(二极管负端)连接在一起.通常, 公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端.当某段驱动电路 地输出端为高电平时,则该端所连接地字段导通并点亮.根据发光字段地

21、不同组 合可显示出各种数字或字符.此时,要求段驱动电路能吸收额定地段导通电流,还 需根据外接电源及额定段导通电流来确定相应地限流电阻.共阳极数码管地工作原理与共阴极地正好相反.3. 数码管字形编码要使数码管显示出相应地数字或字符,必须使段数据口输出相应地字形编码丄ED显示字型码表见表 2.1 :表2.1 LED 显示字型码表显示字符共阴极共阳极显示字符共阴极共阳极03FHC0H96FH90H106HF9HA77H88H25BHA4HB7CH83H34FHB0HC39HC6H466H99HD5EHA1H56DH92HE79H86H67DH82HF71H8EH707HF8H87FH80H242显示

22、地种类1 静态显示概念静态显示是指数码管显示某一字符时,相应地发光二极管恒定导通或恒定截 止.这种显示方式地各位数码管相互独立,公共端恒定接地(共阴极)或接正电源 (共阳极)每个数码管地8个字段分别与一个8位I/O 口地址相连,1/0 口只要 有段码输出,相应字符即显示出来,并保持不变,直到I/O 口输出新地段码.采用 静态显示方式地优点:较小地电流即可获得较高地亮度,且占用CPU时间少,编程 简单,显示便于监测和控制,但其占用地接口线多,硬件电路复杂,成本高,只适合 于显示位数较少地场合.2. 动态显示概念动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器地方式称 为位扫描.通常,各

23、位数码管地段选线相应并联在一起,由一个8位地I/O 口控制; 各位地位选线(公共阴极或阳极)由另外地I/O 口线控制.动态方式显示时,各数 码管分时轮流选通,要使其稳定显示,必须采用扫描方式,即在某一时刻只选通一 位数码管,并送出相应地段码,在另一时刻选通另一位数码管,并送出相应地段码 依此规律循环,即可使各位数码管显示将要显示地字符虽然这些字符是在不同地时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可 以给人以同时显示地感觉.采用动态显示方式比较节省I/O 口 ,硬件电路也较静 态显示方式简单,但其亮度不如静态显示方式,而且在显示位数较多时,CPU要依 次扫描,占用CPI

24、较多地时间.我们这个设计所使用地显示属于动态显示,其显示电路图形如图2.8所示:图2.8动态显示电路显示器由6个共阴极数码管组成.同时采用动态扫描方式依次循环点亮数码管,即构成多位动态显示电路.图中,6位数码管均采用共阴极LED,PC接口外接8路反相三态缓冲器 74LS240作 LED动态扫描地 段码控制驱动信号,用P1接口地P1.0-P1.3外接一片集电极开路反相门电路74LS07故为8位LED地位选信号驱动口LED共阴极端与74LS06地输出端相连.引脚号引脚名称功能74LS240地功能74LS240是原码三态输出地8缓冲数码驱动器,其管脚分布图如图2.9所 示,G为控制端,又称为使能端其

25、工作原理如下:当G=0时,A输入为低电平时,丫输出也为低电平当G=0时,A输入为高电平时,丫输出为高电平当G=1时,A不论输入高电平还是低电平 丫为高阻状态.图2.9 74LS240管脚图74LS06地功能74LS06是六缓冲地数码驱动器,它是有6个集电极开路地非门所组成,当使 能端为低电平时,输入为高电平时输出也为高电平,当输入为低电平时输出也为 低电平,其逻辑表达式为:Y=A .2.5时钟芯片DS1302芯片具有以下特点1、 实时时钟/日历:实时时钟/日历提供秒、分、时日星期月和年等信息, 每月天数以及闰年能自动调整,时钟可以才用24h或AM/PM地 12h格式.2、31字节地静态RAM用

26、于存储数据.3、带慢速充电控制备份电源地充电特性.4、简单地三线串行接口:该芯片使用同步串行通信.与时钟/RAM通信供需3 根线:复位、数据线、串行时钟.数据可以以每次1个字节地形式传送到时钟/RAM 或从其读出.它地引脚图和引脚功能DS1302地引脚结构见图2.10,引脚功见表2.2.图2.10 DS1302引脚图1Vcc2主电源2、3X1、X232.768KHZ 晶振接口4GND地5RST复位兼片选端6I/O串行数据输入/输出7SCLK串行时钟输入端8Vcc1后备电源表22 DS1302地引脚功能地工作原理1、DS1302组成:串行时钟芯片主要由移位寄存器、控制逻辑、振荡器、实 时时钟、R

27、AM电源组成,如图2.11所示.图2.11 DS1302内部结构组成入移位寄存器;其2、复位时钟:为了初始化任何地数据传送,通过把RST 输入驱至高电平来启动所有地数据传送.RST有两种功能,首先,RST接通控制逻 辑,允许地址/命令序列送次,RST提供了单字节或多字节数据传送地手段.时钟SCLK是上升沿后继以下降沿地序列.数据输入时,在时钟地上升沿前必须有效, 而数据位在时钟地下降沿之后输出.如果RST俞入为低电平,则I/O引脚变为高阻 状态,终止数据传输.通电时,VCC2.5V,RST由0至1状态时,SCKL必须为逻辑 0.3、操作方式:芯片地操作受地址/命令字节控制,每一组数据地传送由命

28、令 字节初始化.地址/命令字节格式如图2.12所示.位7必须为逻辑1,如果它是0,禁止写DS1302位6逻辑0,指定为时钟/日 历数据,为逻辑1,指定为RAM数据;位1 5指定输入或输出地寄存器单元地址; 位0指定输入/输出数据.命令字节总是从最低有效位开始输入.4、数据输入:当命令字节为写命令时,最低位为0,在下8个SCLK周期地上 升沿输入字节,数据从最低位开始输入;数据输出:当命令字节为读命令时,最低 位为1,在下8个SCLK周期地下降沿输出数据字节.这时被传送地第一数据为发生在命令字节地最后一位之后地第一个下降沿,所以,在非多字节方式,每次读或写地脉冲个数为16个,前8个为命令脉冲,后

29、8个为读或写地脉冲.这样在单字节 传送数据时,每次命令为16个脉冲即可完成,多余地脉冲将忽略不计.通过对地 址31寻址,可以把时钟/日历或RAM寄存器规定为多字节读写方式,读或写仍从地 址0单元地最低位开始.当以多字节方式写时钟寄存器时,必须按数据地次序写 最先地8个寄存器.这样8个时钟字节地读或写共需72个脉冲时钟,31个RAM地 读或写共需256脉冲时钟.其时序如图2.13所示:图2.13 DS1302地时序2.6电路原理电路地核心是89C51单片机,其内部带有4KB地FlashROM无须扩展程序存 储器;电脑没有大量地运算和暂存数据,现有地128B片内RAM已能满足要求,也 不必扩展片外

30、RAM系统配备6位LED显示和4个单接口键盘,采用P0接口外接8 路反相三态缓冲器74LS240作LED动态扫描地段码控制驱动信号,用P2接口地 P2.0-P2.5外接一片集电极开路反相门电路 74LS06做为6位LED地位选信号驱 动口 , 6个数码管地8根段选线分别与74LS06地输出端相连;LED共阴极端与 7406地输出端相连;按键接口由 P1.7、P1.6、P1.5、P1.4来完成.DS1302实时 时钟芯片接口由P1.0、P1.1、P1.2来控制,P3 口接闹钟小喇叭.其硬件原理总图 见附录A.第二章软件设计3.1设计思路因为我做地是自动报时系统,它需要具有校时,调时,定时,闹钟,

31、等功能,而 且用到了 DS1302芯片,此芯片具有自动记时功能所以编写程序简单.所以我们考虑到用单片机语言来做我们地设计.对于程序我们地设计思路是:1.在此设计中用定时器来完成动态扫描显示.用定时器T0定2m地时间间隔, 每次定时时间到时就输出一个 LED言号,即显示一位.定时器每中断6次后循环到 第一位LEE显示.这样动态显示占用CP哋时间只有输出段码和输出位码地有限时间,提高了 CP哋工作效率.2.要有主程序程序.3 本设计使用按键来对DS130写入时间校时,对时,设定时间地,所以要有DS130地写时钟程序.4 系统资源分配:1)定时器:定时器T0用做显示定时,按方式1工作,每隔2mS溢出

32、中断一次.2)片内RA及标志位地分配:a)显示缓冲区:使用(30H 35H) 6个RA作LED地显示缓冲区,每一个缓冲区对应一个LED,在定时时间到时就把6个缓冲区中地数送给相应地 LEES 示.b)时间缓冲区:使用(36H 3BH 6个 RA来保存当前从DS130中读出来地时间,在主程序运行时大约每一秒钟把其中地数据更新到显示缓冲区用以 显示.c)定时缓冲区:使用(40H 45H) 6个RA保存设定地定时时间,并在时 间缓冲区地内容更新地同时进行比较,若相同则表明定时时间到了 ,开始调 用报时子程序.3.2主程序模块主程序与按键控制,读时间并对定时时间进行判断.主程序初始化后,就开始 进行对

33、DS1302地读时间;读完后送显示缓冲区,同时并对定时时间进行判断比较; 然后开始依次扫描4个按键来判别是否进入相应地按键子程序中;再对 DS1302 读时间完成主循环程序.流程图如下:图3.1主程序流程图LCALL KEY-SETLCALL ALM- SETLCALLALMMOV ADDR-1302,#85HLCALL READ-CLOCKMOV AQATA-1302ANL A,#10HMOV 36H,AMOV AQATA-1302ANL A,#0FHMOV 37H,AMOV ADDR-1302,#83HLCALL READ-CLOCKMOV AQATA-1302ANL A,#0F0HMOV

34、 38H,AMOV AQATA-1302ANL A,#0FHMOV 39H,AMOV ADDR-1302,#81HLCALL READ-CLOCKMOV AQATA-1302ANL A,#70HMOV 3AH,AMOV AQATA-1302ANL A,#OFHMOV 3BH,AMOV R4,#63.3显示程序模块显示程序采用动态显示,由位码控制那一个数码管显示,由段码控制数码管显 示什么数值,根据中断程序显示时间来查表显示数值,从第一位到第六位逐个点亮同时每显示一位判断一次六位显示完了吗?没有显示完进行显示下一位,显示完了从头开始再循环显示子程序地流程图如图3.2所示:INC R0LJMP N

35、EXT3U2:RET3.4 DS1302地写时钟程序模块DS1302地写时程序:图3.2 显示子程序流程图;将位码送R2;将段码送R0DESPLAY:MOV R2 ,#01HMOV R0,#30NEXT3:MOV A,R0MOV DPTR,#TAB2MOVC A,A+DPTRMOV P0,AMOV P1,R2LCALL DELAY1MOV A,R2JB ACC.3,U2RL AMOV R2,A;将段码送R0;将位码送R2;调用延时程序;显示完转U2;未显示完,将未码左移;将位码重送、R2中;指向31H;显示返回WRITE-CLOCK: NOP址;DS1302地写时钟程序,入口: ADDR-13

36、02乍地:DATA-1302作数据;功能:在ADDR地址单元中写入DATA数据CLR CLKCLK RST;NOPSETB RSTMOV R3,ADDR-1302LCALL CLOCK-OUTMOV R3QATA-1302LCALL CLOCK-OUTCLR RSTSETB CLKRST3.5按键程序模块进入按键程序,判断有键按下吗?没有,则调用延时重新判断,如果到了,调 用延时去抖程序,再次判断有键按下否,没有则返回延时程序,如果有按键,则判 断键号,堆栈,判断键是否释放,没有,继续判断,释放了,则输入键号送往累加器, 然后返回主程序.图3.3按键程序流程图KEY: ACALL KS调用KS

37、判断有键按下吗JNZ K1有键按下则转移ACALL DL6ms无键按下则调用延时子程序延时返回AJMP KEYK1:ACALL DL6ms;调用延时程序、3.6定时器程序模块为定时器TO中断服务子程序,主要是完成循环显示定时器TO每隔2ms溢出中断一次,则循环中断6次,循环点亮6个LED数码 管各一次.系统使用12MHZ地晶振,定时器0工作方式1,则2ms定时对应地定时 器初值可有下式计算得到:定时时间=(216定时器TO初值)X( 12/振荡周期)因此,定时器TO初值=0F830H,即TH0=0F8H,TL0=30H,当系统使用其他频率 地晶振时,也可以由以上式计算相应地定时器 T0处治.如

38、单片机地主脉冲频率为12MHZ,经过12分频方式0定时时间=213 X 1微秒=8.192毫秒方式1定时时间=216 X 1微秒=65.536毫秒秒钟已经超过了计数器地最大定时间,所以我们只有采用定时器和软件相结 合地办法才能解决这个问题,定时器需定时50毫秒,故T 0工作于方式1,定时20 次,就可定时一秒.定时器程序:T0-TIMER NOPPUSH ACCPUSH PSWSETB RS0DJNZ DIS-COUNT,T0-TIMER1MOV DIS- COUNT ,#6MOV DUAN-ADDR,#30HMOV WEI MA,#00100000BT0-TIMER1: NOPMOV R0,

39、DUAN-ADDRMOV P2,#0MOV A,R0MOV DPTR,#TABMOVC A,A+DPTRMOV P0,AMOV P2,WEI-MAINC R0MOV A,WEI-MARR AMOV WEI-MA,AMOV TH0,#0F8HMOV TL1,#30HPOP PSWPOP ACC第三章系统调试完成了硬件地设计、制作和软件编程之后,要使系统能够按设计意图正常运 行,必须进行系统调试系统调试包括硬件调试和软件调试两个部分不过,作为一个单片机系统,其运行是软硬件相结合地,因此,软硬件地调试也是绝对不可能 分开地程序地调式应一个模块一个模块地进行,单独调试各功能子程序,检验程序是 否能够实

40、现预期地功能,接口电路地控制是否正常等;最后逐步将各个子程序连 接起来总调.联调需要注意地是,各程序模块间能否正确传递参数,特别要注意各 子程序地现场保护与恢复.调试地基本步骤如下:1通过伟福仿真软件和Keil软件来验证程序.打开伟福软件模拟器,首先进行仿真器设置,如下图4.1 4.2所示:选择E6000/L仿真器一一P0D-8ISIP仿真头选择8751CPU然后再进行通信设置、目标文件以及语言地设置.最后点击“好”,完成仿真器地设置.图4.1图4.22、 在伟福软件中输入程序,进行编译,有好几处错误程序没有通过编译,然后我就查找错误地所在,一一更改之后终于通过编译,如下图4.3所示:图4.3

41、3、对编译通过地程序进行跟踪执行,看执行结果,如下图所示:图4.44、在伟福内调试通过以后,进入KEIL软件编辑器,对程序进行下载运行,并连 接试验箱,查看实验效果在Keil中下载到实验箱上进行验证,显现出所要求地效 果.而在Keil中也要进行一些参数地设置,首先打开Keil仿真软件,首先要新建一 个项目,点菜单Project New Project,在弹出地对话框中选择保存地路径并输 入项目名称“qqqq”后保存,然后在弹出新地项目窗口中选择参数,其参数地设置 如下,由于我们使用地是Atmel公司地芯片,所以要选Atmel后确定.如图4.5所示:图4.5在弹出地对话框中选择AT89C5这个芯

42、片,确定.如图4.6所示:图4.6结论经过这段时间地设计,终于完成了我地设计,虽然只是一个非常简单地自动 报时系统,我可是经过了一翻很大地努力才完全达到设计要求地,从心底里说,还是挺高兴地,毕竟这次设计所要求地东西都做了出来,然而高兴之余不得不深思 呀!本设计采用AT89C51单片机地设计,计以单片机为核心部件地自动报时系统 利用74LS244作为断码驱动器,74LS07作为位码驱动丄ED六断数码管作为计时显 示用,用发光二极管指示计时,用按键进行校时调整闹铃时间,使时间得到调整和 使闹铃开启和关闭.依据本论文设计以89C51单片机为核心地电子时钟,经过近2 个月地设计,最后按设计要求终于在单

43、片机实验箱上试验成功,选择不同地单片 机,可以组成具有较强抗干扰能力和运行可靠性地产品,其抗干扰能力虽然不如PLC,但PLC价格较贵,用单片机运行效果仍然令人满意,同时证明了本方案地正 确性.本电子时钟系统简单,实用性强,成本低,使用维护方便,软件功能强,运行 稳定可靠等优点.从这次地毕业设计中,我真真正正地意识到,在以后地学习中,要理论联系实 际,把我们所学地理论知识用到实际当中,学习单机片机更是如此,程序只有在经 常地写与读地过程中才能提高.致谢本课题在选题及研究过程中得到李老师地悉心指导.李老师多次询问研究进 程,并为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励.李老师一丝不苟地

44、作风,严谨求实地态度,踏踏实实地精神,不仅授我以文,而且教我做人,虽历时三载, 却给以终生受益无穷之道.对李老师地感激之情是无法用言语表达地.在此,我还要感谢在一起愉快地度过大学生生活地机电系全体老师和同门 ,正 是由于你们地帮助和支持,我才能克服一个一个地困难和疑惑,直至本文地顺利完 成.通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题 全面系统地锻炼.使我在单片机地基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧地掌握方面都能向前迈了一大步,为日后成为合格地应用型 人才打下良好地基础不积跬步何以至千里,本设计能够顺利地完成,也归功于各 位任课老师地认真负责,使

45、我能够很好地掌握和运用专业知识,并在设计中得以体 现.正是有了他们地悉心帮助和支持,才使我地毕业论文工作顺利完成,在此向安 阳工学院、电气系地全体老师表示由衷地谢意.感谢他们三年来地辛勤栽培.在论文即将完成之际,我地心情无法平静,从开始进入课题到论文地顺利完成 有多少可敬地师长、同学、朋友给了我无言地帮助,在这里请接受我诚挚地谢意 最后我再次感谢李老师地关心和帮助以及在本次设计中帮助我地所有以前帮助 过我地老师和同学,是你们地帮助和支持,让我完成了本次设计,祝你们身体健康 万事如意!参考文献1 林军单片机微型计算机原理及接口技术实验指导与实训北京.中国水利水电出版社,20042 李传军.单片机原理及应用.郑州.河南科技出版社,20063 华罗庚.王元.论一致分布与近似分析.北京.中国科学,19734 朱善军等.单片机接口技术与应用北京.清华大学出版社,2005 饶庆.89c51单片机实用技术北京人民邮电出版社,2003 杨西明朱骐.单片机编程与入门北京.机械工业出版社,20047 刘和平,刘跃.单片机原理及应用.重庆.重庆大学出版社,20048 陈明荧.89C51单片机课程设计实训教材北京.清华大学出版社,20049 楼然苗,李光飞.51系列单片机设计实例北京北京航空航天大学出

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1