多按键花样流水灯设计(共31页)_第1页
多按键花样流水灯设计(共31页)_第2页
多按键花样流水灯设计(共31页)_第3页
多按键花样流水灯设计(共31页)_第4页
多按键花样流水灯设计(共31页)_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 课 程 设 计设计(shj)名称: 多按键花样(huyng)流水灯 学年(xunin)学期: 2014-2015学年第二学期 课程名称: 单片机原理及应用课程设计 专业年级: 12级电气工程及其自动化 姓名: 秦磊 学号: 2012012081 提交日期: 2014年6月15号 成绩: 指导教师: 许景辉 甘学涛 摘要:当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,一般被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,智能控制与自动控制的核心就是单片机。而C51系列单片机就是其中一种,它具有较大

2、内存还可以方便扩展,接口简单,与keil等编程软件易于结合,操作方便,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案,是时常被用对象。关键词:单片机 流水(lishu)灯 keil 程序目录(ml) TOC o 1-3 h z u HYPERLINK l _Toc26173 前言(qin yn) PAGEREF _Toc26173 4 HYPERLINK l _Toc18386 第一章 设计(shj)目的及要求 PAGEREF _Toc18386 5 HYPERLINK l _Toc7236 1.1 设计(shj)目的 PAGEREF _Toc7236 5 HYPERLINK l _Toc

3、19531 1.2 设计基本要求 PAGEREF _Toc19531 5 HYPERLINK l _Toc10580 1.2.1、课程设计要求 PAGEREF _Toc10580 5 HYPERLINK l _Toc11087 第二章 方案设计 PAGEREF _Toc11087 6 HYPERLINK l _Toc30919 2.1、几种常见的跑马灯 PAGEREF _Toc30919 6 HYPERLINK l _Toc31255 2.2、研究背景 PAGEREF _Toc31255 6 HYPERLINK l _Toc19759 2.3 方案设计任务分析 PAGEREF _Toc1975

4、9 6 HYPERLINK l _Toc21049 第三章 主要元器件介绍 PAGEREF _Toc21049 7 HYPERLINK l _Toc32216 3.1 AT89C51单片机介绍 PAGEREF _Toc32216 7 HYPERLINK l _Toc27064 3.1.1 AT89C51芯片简介 PAGEREF _Toc27064 7 HYPERLINK l _Toc15627 3.1.2 引脚说明 PAGEREF _Toc15627 8 HYPERLINK l _Toc5290 第四章 硬件电路设计 PAGEREF _Toc5290 10 HYPERLINK l _Toc55

5、59 4.1硬件系统的设计要求 PAGEREF _Toc5559 10 HYPERLINK l _Toc17604 4.2 主控系统 PAGEREF _Toc17604 11 HYPERLINK l _Toc819 4.3花样灯输入及中断控制模块 PAGEREF _Toc819 11 HYPERLINK l _Toc32398 4.4 花样灯输出控制部分 PAGEREF _Toc32398 12 HYPERLINK l _Toc23602 4.5 时钟及复位部分电路 PAGEREF _Toc23602 12 HYPERLINK l _Toc14618 4.5.1时钟电路 PAGEREF _To

6、c14618 12 HYPERLINK l _Toc21017 第五章 软件设计及主要子程序 PAGEREF _Toc21017 14 HYPERLINK l _Toc1123 5.1、软件设计思路 PAGEREF _Toc1123 14 HYPERLINK l _Toc4192 第六章 系统仿真与调试 PAGEREF _Toc4192 18 HYPERLINK l _Toc29640 6.1、Keil编译 PAGEREF _Toc29640 18 HYPERLINK l _Toc9125 6.2、Protues仿真平台 PAGEREF _Toc9125 18 HYPERLINK l _Toc

7、30014 6.2.1、Protues仿真简介及部分模块仿真 PAGEREF _Toc30014 18 HYPERLINK l _Toc20114 6.2.2、硬件电路总图与仿真 PAGEREF _Toc20114 19 HYPERLINK l _Toc17196 6.2.3、PCB板的生成 PAGEREF _Toc17196 19 HYPERLINK l _Toc25293 第七章 操作说明 PAGEREF _Toc25293 21 HYPERLINK l _Toc19983 7.1 方式一操作说明 PAGEREF _Toc19983 21 HYPERLINK l _Toc9863 7.2

8、方式二操作说明 PAGEREF _Toc9863 21 HYPERLINK l _Toc9305 7.3 方式三操作说明 PAGEREF _Toc9305 22 HYPERLINK l _Toc21350 7.4 方式四操作说明 PAGEREF _Toc21350 22 HYPERLINK l _Toc21029 第八章 课程设计总结 PAGEREF _Toc21029 24 HYPERLINK l _Toc25055 附录 PAGEREF _Toc25055 25 HYPERLINK l _Toc16315 1 中断子程序 PAGEREF _Toc16315 25 HYPERLINK l _

9、Toc11322 2 跑马灯子程序 PAGEREF _Toc11322 25 HYPERLINK l _Toc3317 3 流水灯子程序 PAGEREF _Toc3317 25 HYPERLINK l _Toc3794 4戏水灯子程序 PAGEREF _Toc3794 26 HYPERLINK l _Toc6399 5 延时子程序 PAGEREF _Toc6399 26 HYPERLINK l _Toc5978 参 考 文 献 PAGEREF _Toc5978 28前言(qin yn)近年来,随着电子技术和微型计算机的发展,单片机的档次不断提高,起应用领域也在不断的扩大,已在工业控制、尖端科学

10、、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到广泛的应用、成为现代电子系统中最重要的智能化的核心部件。单片微型计算机简称单片机(single-chip microcomputer),又称为单片机微型控制器(single-chip microcontroller),是由CPU、RAM、ROM、定时/计时器、I/O接口电路通过应刷电路板上的总线连成一体的完整计算机系统。1随着现代社会的发展,人们越来越追求审美和新颖,而流水灯就是其中一种,以前简单的照明工具变得越来越多样化,流水灯的千姿百态恰能给人一种视觉冲击,现在不管大街小巷我们都可以随处可见这种变幻万千的流

11、水灯,而这种流水灯我们可以产用电子电路去设计,我们主要可以用装套控制器和状态译码器来实现灯光的流水效果,但是现在我们可以用单片机AT89C51来实现,因为其相对于电子电路有明显的优越性,控制硬件电路比较简单,软件方面程序(chngx)也不复杂,使用protues来实现设计,方便快捷。因此制作的远离简单,但功能作用并不低于电子电路设计的,由于它的小巧方便、通俗易懂,所以我们往往采用单片机来做流水灯。第一章 设计目的(md)及要求1.1 设计(shj)目的1)掌握51系列单片机的基本硬件结构及工作(gngzu)原理;2)掌握51系列单片机的汇编语言及基本程序设计方法;3)学习并掌握使用51系列单片

12、机开发控制系统的基本步骤及方法4)学习并掌握protues和keil的使用熟悉操作。1.2 设计基本要求1.2.1、课程设计要求能熟练运用51单片机实现硬件与软件结合完成电子产品的设计,把理论真正运用于实践,会用Keil等软件编程调试运行,熟悉应用Proteus软件仿真。强化编程练习,注意查询方式与中断方式的区别等等1.2.2、基本设计功能要求主要解释多按键花样流水灯采用80c51单片机为控制器件,此花样流水灯共有四个按键,分别对应控制着四种花样灯光效果。当开关K1按下时,执行跑马灯程序,共8个LED逐次点亮,每隔100ms点亮一个LED,点亮100ms后关闭。当K1断开时所有的LED应该都保

13、持在断开时的状态;当开关k2按下时,执行流水灯程序,共8个LED逐次点亮,每隔100ms点亮一个LED,点亮100ms后下一个LED点亮,当所有LED灯全部点亮后,延时100ms,然后全灭;然后继续上次操作。当开关k2断开时所有LED灯都应熄灭;当开关K3按下时,执行戏水灯程序共8个LED,第一次1、3、5、7号灯点亮,延时100ms,关闭,延时100ms,2、4、6、8号灯点亮,延时100ms,关闭,延时100ms。然后继续上次操作。当开关k3断开时所有的LED应该保持led的1,3,5,7亮;当k4按下时,则循环执行上述程序,一直到K4断开,所有的LED熄灭。第二章 方案设计2.1、几种(

14、j zhn)常见的跑马灯市面上有很多中流水(lishu)灯,有多种花样方式,这里不一一例举2.2、研究(ynji)背景随着现代社会的发展,各种各样的产品出现。现在大街小巷都有流水灯的身影。流水灯就是一种,以前简单的照明工具来让我们的生活变得越来越多样化,流水灯的千姿百态恰能给人一种视觉冲击,现在不管大街小巷我们都可以随处可见这种变幻万千的流水灯,而这种流水灯我们可以使用电子电路去设计,我们主要可以用装套控制器和状态译码器来实现灯光的流水效果,但是现在我们可以用单片机AT89C51来实现,或者51系列的都可以。因为其相对于电子电路有明显的优越性,控制硬件电路比较简单,软件方面程序也不复杂,因此制

15、作的远离简单,但功能作用并不低于电子电路设计的,由于它的小巧方便、通俗易懂,所以我们往往采用单片机来做流水灯。2.3 方案设计任务分析采用标准80c51单片机作为控制器;采用P2口作为输出口控制八个LED的亮灭;P1口为输出口,P1.4,P1.5,P1.6,P1.7分别与四个开关K1,K2,K3,K4相连作为输入控制口,采用外部中断的控制方式控制各种花样灯的开通。采用以上结构,考虑到只有8个LED灯,所选单片机的I/O口完全够用,不需外部扩展。该系统具有电路简单,设计方便,显示亮度高,显示准确,耗电较少,可靠性高等特点。整个电路组成框图如图2-1所示3。 图2-1 花样流水灯控制系统第三章 主

16、要(zhyo)元器件介绍3.1 AT89C51单片机介绍(jisho) 3.1.1 AT89C51芯片(xn pin)简介AT89C51是MCS51系列单片机中的一种低功耗、高性能的片内含有4KB快闪可编程/擦除只读存储器的8位CMOS微控制器,使用高密度、非易失存储技术制造,并且与80C51引脚和指令系统完全兼容。 主要性能:与MCS-51 微控制器产品系列兼容。 片内有4KB可在线重复编程的快闪擦写存储器存储数据保存时间为10年。宽工作电压范围:Vcc可为2.7V到6V全静态工作;可从0Hz至16MHz 程序存储器具有3级加密保护 128*8位内部RAM 32条可编程I/O线、两个16位定

17、时器/计数器、中断结构具有5个中断源和2个优先级、可编程全双工串行通道、空闲状态维持低功耗和掉电状态保存存储内容。5按照单片机系统扩展与系统配置状况,单片机应用系统可分为最小系统、最小功耗系统及典型系统等。AT89C51单片机是美国ATMEL公司生产的低电压、高性能CMOS 8位单片机,具有丰富的内部资源:4kB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.255.50V的电压工作范围和024MHz工作频率,使用AT89C51单片机时无须外扩存储器。因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光

18、二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机1。89C51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制方式。微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统各部分功能及说明类似于8051单片机内部结构说明。 特殊功能寄存器共有21个,用于对片内

19、的各功能的部件进行管理、控制、监视。实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的RAM区。 由上可见, 89C51单片机的硬件结构具有功能部件种类全,功能强等特点。特别值得一提的是该单片机CPU中的位处理器,它实际上是一个完整的1位微计算机,这个1位微计算机有自己的CPU、位寄存器、I/O口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而8位机在数据采集,运算处理方面有明显的长处。MCS-51单片机中8位机和1位机的硬件资源复合在一起,二者相辅相承,它是单片机技术上的一个突破,这也是MCS-51单片机设计的精美之处。80C51单片机属于MCS-51系列单片机,2由

20、Intel公司开发,其结构是8048的延伸,改进了8048的缺点,增加了如乘(MUL)、除(DIV)、减(SUBB)、比较(PUSH)、16位数据指针、布尔代数运算等指令,以及串行通信能力和5个中断源。采用40引脚双列直插式DIP(Dual In Line Package),内有128个RAM单元及4K的ROM。80C51有两个16位定时计数器,两个外中断,两个定时计数中断,及一个串行中断,并有4个8位并行输入口。80C51内部有时钟电路,但需要石英晶体和微调电容外接,本系统中采用12MHz的晶振频率。由于80C51的系统性能满足系统数据采集及时间精度的要求,而且产品产量丰富来源广,应用也很成

21、熟,故采用来作为控制核心。 图3-1 80c51结构图 3.1.2 引脚说明(shumng)引脚是单片机和外界进行通信的通道连接点,用户只能通过引脚组建控制系统。从应用(yngyng)的角度来看,引脚的应用是单片机应用的一个重要基础。因此熟悉引脚是学习应用单片机的基础。 MCS-51系列单片机的引脚封装主要有: PDIP40、PLCC44和PQFP/TQFP44。不同封装的芯片其引脚的排列位置有所不同,但他们的功能和特性(txng)都相同。方形封装(PLCC44和POFP/TQFP44)有44引脚,其中4个NC为空引脚。采用40引脚PDIP封装的80C51单片机的引脚排列及逻辑符号如图3-2所

22、示。由于(yuy)工艺及标准化等原因,芯片的引脚数量是有限的,但单片机为实现控制所需要的信号数目却远远超过其引脚数目。为解决这一矛盾,单片机的某些信号引脚被赋以双重功能。P00P07 P0口8位双向口线(在引脚的3932号端子)。P10P17 P1口8位双向口线(在引脚的18号端子(dun z))。P20P27 P2口8位双向口线(在引脚的2128号端子(dun z))。P30P37 P3口8位双向口线(在引脚的1017号端子)。(1)、P0口有三个功能: 1)外部扩展存储器时,用作数据总线(如图中的D0D7为数据总线接口) 2)外部扩展存储器时,用作地址总线(如图中的A0A7为地址总线接口)

23、 3)不扩展时,可做一般的I/O口使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。(2)、P1口功能:P1口只做I/O口使用,其内部有上拉电阻。(3)、P2口有两个功能:(1)扩展外部存储器时,当作地址总线使用;(2)做一般I/O口使用,其内部有上拉电阻。(4)、P3口有两个功能:除了作为I/O口使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置。当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。(5)、ALE/PROG 地址锁存控制信号:在系统扩展时,ALE用于控制把P0口的输出

24、低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。PROG为编程脉冲的输入端,在89C51单片机内部有一个4KB的程序存储器(ROM),ROM的作用就是用来存放用户需要执行的程序的,那么我们是怎样把编写好的程序存入进这个ROM中的呢?实际上是通过编程脉冲输入才能写进去的,这个脉冲的输入端口就是PROG。(6)、PSEN 外部程序存储器读选通信号:在读外部ROM时PSEN低电平有效,以实现外部ROM单元的读操作: 1)内部ROM读取时,PSEN不动作; 2)外部ROM读取时,在每个机器周期会动作两次; 3)外部RAM读取时,两个PSEN脉冲被跳过不会输出; 4)外接ROM时,与ROM的EA

25、脚相接。(7)、EA/VPP 访问程序存储器控制信号: 1)接高电平时:CPU读取内部程序存储器(ROM) 2)接低电平时:CPU读取外部程序(chngx)存储器(ROM)。8031单片机内部是没有ROM的,那么在应用8031单片机时,这个脚是一直接低电平的。(8)、RST 复位信号:当输入的信号连续(linx)2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作,当复位后程序计数器PC=0000H,即复位(f wi)后将从程序存储器的0000H单元读取第一条指令码。(9)、XTAL1和XTAL2 :外接晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部

26、时钟时,用于接外部时钟脉冲信号。(10)、VCC:电源端接+5V电压输入。(11)、GND:接地端。4图为各引脚何各功能的图示 图3-2 40引脚PDIP封装的80C51单片机的引脚排列及逻辑符号图第四章 硬件电路设计4.1硬件系统的设计要求多按键花样流水灯总的电路原理图如图4-1所示整套电路系统由控制系统模块、花样灯输出控制显示模块组成。图4-1 多按键花样流水(lishu)灯总体电路图4.2 主控系统(xtng) 主控系统采用(ciyng)80c51单片机,单片机P1口用于开关控制输入,P2口用于控制输出花样灯花样变化,P3.2()口用于外部中断外输入。4.3花样灯输入及中断控制模块如图4

27、-2,花样灯输入控制模块由四个开关,电源,上拉电阻及四个二极管组成。各开关风别和相应的P1口相连于此同时通过二极管与P3.2()口相连。当开关处于断开状态时,各开关所对应P1.N(N为4到7)口处于高电位状态,当开关闭合时,所对应得P1.N(N为4到7)口直接与地相连,便处于低电位状态,于此同时二级管也导通,使P3.2()也经过二极管也直接与地相连,因此P3.2()的电位便被拉升到低电位,引起外部中断。此处电路二极管的设置十分必要和关键,利用二极管的单向导电性使得任意开关按下时,不至使得P1.4-P1.7口发生短路,全部被拉到低电位,若无二极管按下任意开关时,四个开关的右端将同时处于低电位,这

28、就使得程序不能准确判断到底是哪个开关闭合,从而就不能顺利执行相应的花样灯程序。图4-2花样灯输入控制系统(kn zh x tn)部分电路4.4 花样(huyng)灯输出控制部分如图4-3,为花样灯输出(shch)控制部分电路图。图中共有八个发光二极管,其采用共阳极结构。输出信号从80c51单片机的P2口输出,每个P2.N(N从1-7)通过总线与其相对应一个发光二极管相连,发光二管与限流电阻相连,设置限流电阻的目的是限制流过发光二极管的电流大小,不至于使其因为热效应损坏。当P2.N(N从1-7)处于低电平的时候,与其相连的二极管便被点亮,通过对P2口的高低电平的控制便控制了发光二极管的点亮与熄灭

29、。从而实现花样灯的变化。图4-3 花样(huyng)灯输出部分电路4.5 时钟及复位(f wi)部分电路 4.5.1时钟电路单片机本身如同一个复杂的同步时序电路,为了保证同步工作,电路应在唯一的时钟信号控制下,严格地按规定时序工作。而时钟电路就用于产生单片机工作所需要的时钟信号。80c51单片机时钟电路示意图如图4-4所示图4-4 80c51时钟(shzhng)振荡电路示意图在80c51芯片内部有一个高增益反相放大器,用于构成振荡器。反相放大器的输入端为引脚XTAL1,输出端为引脚XTAL2,在芯片的外部通过这两个引脚跨接晶体振荡器和微调电容C1、C2形成反馈电路,可构成稳定的自激振荡器,振荡

30、频率范围通常是1.212MHz。晶体振荡频率高,则系统的时钟(shzhng)频率也高,单片机的运行速度也就快。5也可以由外部时钟电路向片内输入脉冲信号作为单片机的振荡脉冲。这时外部脉冲信号是经XTAL1引脚引入的,而XTAL2引脚悬空或接地。对外部信号的占空比没有要求,但高低电平持续的时间不应小于20ns。这种方式常用(chn yn)于多块芯片同时工作,便于同步。4其外部脉冲接入方式如图2-6所示。本课设由于只采用了一片单片机,所以采用单片机的内部时钟电路,其晶振频率为12MHZ,其电路图如图4-5所示。 图4-6 80c51外部时钟电路示意图图4-7 时钟部分(b fen)电路示意图第五章

31、软件设计及主要(zhyo)子程序5.1、软件设计思路(sl) 图5-1程序流程图5.2 、主程序ORG 0000H ;起始(q sh)地址AJMP MAIN ORG 0003H;外部中断0入口(r ku)地址AJMP LOOP1MAIN: ;主程序SETB P3.2;外部(wib)中断置1SETB EX0;开外部中断0CLR IT0;设置触发方式电平触发方式SETB EA;开总中断SJMP $;原地跳转等待中断LOOP1: ;判0转移到相应亮灯方式JNB P1.4,FANGSHI1 ;当P1.4为低电平是跳转JNB P1.5,FANGSHI2 ;当P1.5为低电平是跳转JNB P1.6,FAN

32、GSHI3 ;当P1.6为低电平是跳转JNB P1.7,FANGSHI4 ;当P1.7为低电平是跳QUIT: RETI ;中断返回CLR EA;禁止中断 CLR EX0 ;禁止外部中断0 MOV P2,#0FFH ;P2口至高电位,关闭所有LEDFANGSHI1: ;跑马灯程序(100ms)MOV P2,#0FFH ;先使灯全部(qunb)灭MOV A,#0EFH ;使P2口相应灯亮采用(ciyng)赋值的方式LO1: MOV P2,A LCALL DELAYRL A ;P2口逐个(zhg)点亮JNB P1.4,LO1;开关闭合继续循环执行SJMP LOOP1 ;返回到LOOP1继续判断FAN

33、GSHI2: ;流水灯程序CLR P2.0 ;点亮P2.0口LCALL DELAY ;用赋值方式点亮灯MOV P2,#0FCH LCALL DELAYMOV P2,#0F8H ;同上LCALL DELAYMOV P2,#0F0HLCALL DELAYMOV P2,#0E0HLCALL DELAYMOV P2,#0C0HLCALL DELAYMOV P2,#80HLCALL DELAYMOV P2,#00HLCALL DELAYMOV P2,#0FFH ;P2口全部置1,熄灭LCALL DELAYJNB P1.5,FANGSHI2 ;若开关闭合则循环执行SJMP LOOP1FANGSHI3: ;

34、戏水(x shu)灯程序MOV P2,#55H ;点亮1,3,5,7号灯LCALL DELAY LCALL DELAYMOV P2,#0AAH;点亮2,4,6,8号灯LCALL DELAYLCALL DELAYJNB P1.5,FANGSHI3 ;若开关(kigun)闭合则循环执行SJMP LOOP1FANGSHI4:;第四种花样(huyng)MOV P2,#0FFHMOV A,#0FEHLO: MOV P2,ALCALL DELAY ;用另一种方式实现流水灯RL AJB P2.7,LOLCALL DELAYCLR P2.0LCALL DELAYCLR P2.1LCALL DELAYCLR P

35、2.2LCALL DELAYCLR P2.3LCALL DELAYCLR P2.4LCALL DELAYCLR P2.5LCALL DELAYCLR P2.6LCALL DELAYCLR P2.7LCALL DELAYMOV P2,#0FFHMOV P2,#55HLCALL DELAY;为观察(gunch)到明显效果延时200msLCALL DELAYMOV P2,#0AAHLCALL DELAYLCALL DELAY JNB P1.6,FANGSHI4LCALL LOOP1MOV P2,#0FFHDELAY: MOV R6,#200;延时100ms程序(chngx)LOL1: MOV R7,

36、#250LOL2: DJNZ R7,LOL2 DJNZ R6,LOL1 RET END5.3 、子程序 此花样流水灯是由中断子程序,跑马灯子程序,流水灯子程序,戏水(x shu)灯子程序,此部分在见附录第六章 系统仿真(fn zhn)与调试6.1、Keil编译Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比(xin b),C语言在功能上、结构性、可读性、可维护性上有明显的优势, Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。如

37、果使用C语言编程,那么Keil几乎就是不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。本次设计采用汇编语言编程,生成.hex文件以供装载到Protues中的单片机进行仿真1。6.2、Protues仿真(fn zhn)平台 6.2.1、Protues仿真简介及部分模块仿真Protues软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码

38、调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。迄今为止是世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等。在编译方面,它也支持IAR、Keil和MATLAB等多种编译。目标代码的加载方法为,在Protues编辑环境双击AT89C51,弹出下图所示的对话框,在PROGRAM FILM一栏中单击打开按钮,选中Keil中生成的lzy.hex文件,在CLOCK FREQUENCY栏中设置系统工作频率为

39、12MHZ,单击OK完成目标代码的加载。图6-1 程序代码加载 6.2.2、硬件(yn jin)电路总图与仿真 总图(zn t)如下图6-2 总图(zn t)6.2.3、PCB板的生成(shn chn)完成电路(dinl)原理图并封装好后,可由ISIS软件导出PCB板,在ARES 7软件中完成各个元器件的布局,布局好后采用自动布线,如图6-3所示,PCB板的3D效果如图6-4示。图6-3 PCB板图图6-4 PCB板3D效果图第七章 操作(cozu)说明7.1 方式(fngsh)一操作说明当按下K1时执行跑马灯程序(chngx);起执行效果如图执行(zhxng)效果图7.2 方式二操作说明断开

40、K1合上K2则执行流水灯程序,起执行效果如图执行效果图7.3 方式(fngsh)三操作说明断开K2合上K3则执行戏水灯程序(chngx),其执行效果如图执行(zhxng)效果图7.4 方式四操作说明断开K3合上K4则循环执行三种花样灯。第八章 课程设计总结(zngji)本次课设遇到的最大的问题就是硬件电路的设计,如何让各开关都能引起中断又不能相互短路是最大的问题,还有各个子程序的写法,最终这个问题的解决依靠一个网站的指导,通过利用二极管的单向导电性,完美的解决了这个问题,在此表示衷心的感谢,并且该网站上有很多经典(jngdin)的汇编程序。在本次课程设计过程中,我增强了自己的动手能力和分析能力。在以后的学习生活中,我会努力学习专业知识,完善(wnshn)自我,为将来的发展做好充分的准备。总之,在这次课程设计中,我受益匪浅,学到了很多书本上所没有的东西,懂得了理论和实际联系的重要性。在以后的学习中,我不仅要把理论知识掌

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论