收藏 分销(赏)

多按键花样流水灯专业课程设计.doc

上传人:快乐****生活 文档编号:2533653 上传时间:2024-05-31 格式:DOC 页数:35 大小:439.54KB
下载 相关 举报
多按键花样流水灯专业课程设计.doc_第1页
第1页 / 共35页
多按键花样流水灯专业课程设计.doc_第2页
第2页 / 共35页
多按键花样流水灯专业课程设计.doc_第3页
第3页 / 共35页
多按键花样流水灯专业课程设计.doc_第4页
第4页 / 共35页
多按键花样流水灯专业课程设计.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、前言当单片微型计算机简称单片机(single-chip microcomputer),又称为单片机微型控制器(single-chip microcontroller),是由CPU、RAM、ROM、定期/计时器、I/O接口电路通过应刷电路板上总线连成一体完整计算机系统。1从1971年浮现单片机雏形开始,短短四十近年时间里,单片机便社会各领域中得到了广泛应用在流水灯控制系统中,单片机更是取代了由齿轮调节延迟时间旧式控制系统,成为日后此系统中核心某些。由于单片机具备某些突出长处:体积小、重量轻、电源单一、功耗低;功能强、价格低;数据大都在单片机内部传送,运营速度快、抗干扰能力强、可靠性高,因此单片机

2、被广泛应用于测控系统、数据采集、智能仪器仪表、机电一体化产品、智能接口、计算机通信以及单片机多级系统等领域。今时代是一种新技术层出不穷时代,在电子领域特别是自动化智能控制领域,老式分立元件或数字逻辑电路构成控制系统,正此前所未见速度被单片机智能控制系统所取代。当前,一种学习与应用单片机高潮正在工厂、学校及企事业单位大规模地兴起。本设计用AT89C51单片机自制了一款简易花样流水灯,简介了其硬件电路及软件编程办法,在实践中体验单片机自动控制功能。该设计具备实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。学习单片机最有效办法就是理论与实践并重,当前我把单片机流水灯设计作为一种课程设计,

3、需要更深去理解单片机诸多功能,努力去查找资料。本课题将以发光二极管作为发光器件,用单片机自动控制,实现一种简易花样流水灯设计。目 录前言第一章 设计目及规定- 4 -1.1 设计目- 4 -1.2 设计规定- 4 - 1.2.1 课程设计规定- 4 - 1.2.2 课程设计目:- 4 -第二章 方案设计- 5 -2.1 设计任务分析- 5 -2.2 方案比较- 5 -2.3 硬件系统设计规定- 6 - 2.3.1 实验总原理图- 6 - 2.3.2 硬件系统概述- 6 -第三章 重要元器件简介- 7 -3.1 AT89C51单片机简介- 7 - 3.1.1 AT89C51芯片简介- 7 - 3

4、.1.2 引脚阐明- 7 -3.2 晶振电路- 9 -3.2 LED发光二极管- 10 -第四章 硬件电路设计- 10 -4.1 主控系统- 10 -4.2 晶振时钟电路设计- 11 -4.3 复位电路设计- 11 -4.4 输入控制模块及中断控制模块设计- 12 -4.5 输出控制模块设计- 13 -第五章 软件设计及重要子程序- 15 -5.2 主程序流程图- 16 -5.3 主程序- 16 -5.4 中断子程序- 19 -5.5 LIGHT1跑马灯子程序- 19 -5.6 LIGHT2流水灯子程序- 19 -5.7 LIGHT3戏水灯子程序- 19 -5.8 延时子程序- 20 -第六章

5、 系统仿真与调试- 21 -6.1 Keil编译- 21 -6.2 Protues仿真平台简介- 21 -6.3 跑马灯仿真演示- 21 -6.4 流水灯仿真演示- 23 -6.5 戏水灯仿真演示- 24 -6.6 顺序循环执行三种花样灯- 25 -第七章 PCB板生成- 26 -7.1 PCB生成- 26 -第八章 课程设计总结- 27 -摘要:自计算机问世以来,单片机技术在社会各领域中得到了广泛应用。在流水灯控制系统中,单片机更是取代了由齿轮调节延迟时间旧式市发展速度,成为日后此系统中核心某些。由于单片机具备某些突出长处:体积小、重量轻、电源单一、功耗低;功能强、价格低;数据大都在单片机内

6、部传送,运营速度快、抗干扰能力强、可靠性高,因此单片机被广泛应用于测控系统、数据采集、智能仪器仪表、机电一体化产品、智能接口、计算机通信以及单片机多级系统等领域。本文重要讲是单片机,课题名称为多按键花样流水灯,它使咱们学会了如何使用单片机控制咱们寻常生活中多设备设施应用。通过本课题设计后来,使我理解到了单片机许多方面应用。核心词:单片机 花样流水灯 中断 proteus 第一章 设计目及规定1.1 设计目本次课程设计目在于真正把所学单片机理论知识应用于实际,更加熟悉51单片机硬件与软件。能灵活运用Keil进行软件编程调试以及用proteus软件仿真。使咱们通过本次课程设计掌握51系列单片机基本

7、硬件构造及工作原理,掌握51系列单片机汇编语言及基本程序设计办法,学习并掌握使用51系列单片机开发控制系统基本环节及办法。1.2 设计规定1.2.1 课程设计规定 能纯熟运用51单片机实现硬件与软件结合完毕电子产品设计,把理论真正运用于实践,会用Keil等软件编程调试运营,熟悉应用Proteus软件仿真。强化编程练习,注意查询方式与中断方式区别等等。1.2.2 课程设计目:多按键花样流水灯采用80c51单片机为控制器件,用于寻常商业店铺和商场装饰,此花样流水灯共有四个按键,分别相应控制着四种花样灯光效果。当开关K1按下时,执行跑马灯程序,共8个LED逐次点亮,每隔100ms点亮一种LED,点亮

8、100ms后关闭。当K1断开时所有LED应当都熄灭;当开关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应当熄灭;当k4按下时,则循环执行上述程序,始终到K4断开,所有LED熄灭。第二章 方案设计2.1

9、设计任务分析 本流水灯事实上就是一种带有八个发光二极管单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要软件构成单个单片机。从原理图中可以看出,八盏LED灯为共阳极接法,如果要让接在P2.0口LED1亮起来,那么只要把P2.0口电平变为低电平就可以了;相反,如果要接在P2.0口LED1熄灭,就要把P2.0口电平变为高电平;同理,接在P2.1P2.7口其她7个LED点亮和熄灭办法同LED1。因而,要实现流水灯功能,咱们只要将发光二极管LED1LED8依次点亮、熄灭,8只LED灯便会一亮一暗做流水灯了。在此咱们还应注意一点,由于人眼视觉暂留效应以及单片机执行每条指令时间很短,咱们在

10、控制二极管亮灭时候应当延时一段时间,否则咱们就看不到“流水”效果了。2.2 方案比较 基于AT89C51单片机彩灯控制方案,实现对LED 彩灯控制。本方案以AT89C51单片机为主控核心,与键盘、显示、驱动等模块构成核心主控制模块。依照顾客需要可以编写若干种亮灯模式,设计出具备哦不同花样彩灯,例如跑马灯,流水灯,戏水灯,三种方式依次循环等,起到美化装饰作用效果。 方案一:采用各类数字电路来构成键盘控制系统,进行信号解决,如选用CPLD等可编程逻辑器件。本方案电路复杂,灵活性不高,效率低,不利于系统扩展,对信号解决比较困难。 方案二:通过单片机控制二极管闪烁,通过中断方式来变化模式,同步串行输出

11、数码管。 方案比较:显然,第二种办法更加易于设计和控制。并且比较经济,并且操作起来会相对容易某些,并易于实现。故第二种方案较为适合于现阶段咱们设计和实践。2.3 硬件系统设计规定2.3.1 实验总原理图图2.3.1:实验总原理图2.3.2 硬件系统概述 本次课程设计选用89C51单片机为主控系统,89C51单片机P1口用于开关控制输入,P1.0、P1.1、P1.2、P1.3分别与四个开关K1、K2、K3、K4相连作为输入控制口,采用P2口作为输出口控制八个LED亮与灭,控制输出花样灯花样变化,P3.2(#INTO)口用于外部中断外输入。第三章 重要元器件简介3.1 AT89C51单片机简介3.

12、1.1 AT89C51芯片简介AT89C51是MCS51系列单片机中一种低功耗、高性能片内具有4KB快闪可编程/擦除只读存储器8位CMOS微控制器,使用高密度、非易失存储技术制造,并且与80C51引脚和指令系统完全兼容。 重要性能:与MCS-51 微控制器产品系列兼容。 片内有4KB可在线重复编程快闪擦写存储器存储数据保存时间为。宽工作电压范畴:Vcc可为2.7V到6V全静态工作;可从0Hz至16MHz 程序存储器具备3级加密保护 128*8位内部RAM 32条可编程I/O线、两个16位定期器/计数器、中断构造具备5个中断源和2个优先级、可编程全双工串行通道、空闲状态维持低功耗和掉电状态保存存

13、储内容。89C51单片机是把那些作为控制应用所必须基本内容都集成在一种尺寸有限集成电路芯片上。如果按功能划分,它由如下功能部件构成,即微解决器、数据存储器、程序存储器、并行I/O口、串行口、定期器/计数器、中断系统及特殊功能寄存器。它们都是通过片内单一总线连接而成,其基本构造仍旧是CPU加上外围芯片老式构造模式。但对各种功能部件控制是采用特殊功能寄存器集中控制方式。微解决器、数据存储器、程序存储器、并行I/O口、串行口、定期器/计数器、中断系统各某些功能及阐明类似于8051单片机内部构造阐明。 特殊功能寄存器共有21个,用于对片内各功能部件进行管理、控制、监视。事实上是某些控制寄存器和状态寄存

14、器,是一种具备特殊功能RAM区。 由上可见, 89C51单片机硬件构造具备功能部件种类全,功能强等特点。特别值得一提是该单片机CPU中位解决器,它事实上是一种完整1位微计算机,这个1位微计算机有自己CPU、位寄存器、I/O口和指令集。1位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而8位机在数据采集,运算解决方面有明显长处。MCS-51单片机中8位机和1位机硬件资源复合在一起,两者相辅相承,它是单片机技术上一种突破,这也是MCS-51单片机设计精美之处。13.1.2 引脚阐明 图3.1是原则40引脚双列直插式集成电路芯片。图3.1 AT89C51引脚图P00P07 P0口8位双向口线(在

15、引脚3932号端子)。P10P17 P1口8位双向口线(在引脚18号端子)。P20P27 P2口8位双向口线(在引脚2128号端子)。P30P37 P3口8位双向口线(在引脚1017号端子)。1、P0口有三个功能: (1)外部扩展存储器时,用作数据总线(如图中D0D7为数据总线接口)(2)外部扩展存储器时,用作地址总线(如图中A0A7为地址总线接口)(3)不扩展时,可做普通I/O口使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。2、P1口功能:P1口只做I/O口使用,其内部有上拉电阻。3、P2口有两个功能:(1)扩展外部存储器时,当作地址总线使用;(2)做普通I/O口使用,其内部有

16、上拉电阻。4、P3口有两个功能:除了作为I/O口使用外(其内部有上拉电阻),尚有某些特殊功能,由特殊寄存器来设立。当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;因此如果P0口作为输入时,处在高阻抗状态,只有外接一种上拉电阻才干有效。5、ALE/PROG 地址锁存控制信号:在系统扩展时,ALE用于控制把P0口输出低8位地址送锁存器锁存起来,以实现低位地址和数据隔离。PROG为编程脉冲输入端,在89C51单片机内部有一种4KB程序存储器(ROM),ROM作用就是用来存储顾客需要执行程序,那么咱们是如何把编写好程序存入进这个ROM中呢?事实上是通过编程脉冲输入才干写进去,这个脉冲

17、输入端口就是PROG。6、PSEN 外部程序存储器读选通信号:在读外部ROM时PSEN低电平有效,以实现外部ROM单元读操作:(1)内部ROM读取时,PSEN不动作;(2)外部ROM读取时,在每个机器周期会动作两次;(3)外部RAM读取时,两个PSEN脉冲被跳过不会输出;(4)外接ROM时,与ROMEA脚相接。7、EA/VPP 访问程序存储器控制信号:(1)接高电平时:CPU读取内部程序存储器(ROM)(2)接低电平时:CPU读取外部程序存储器(ROM)。8031单片机内部是没有ROM,那么在应用8031单片机时,这个脚是始终接低电平。8、RST 复位信号:当输入信号持续2个机器周期以上高电平

18、时即为有效,用以完毕单片机复位初始化操作,当复位后程序计数器PC=0000H,即复位后将从程序存储器0000H单元读取第一条指令码。9、XTAL1和XTAL2 :外接晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。10、VCC:电源端接+5V电压输入。11、GND:接地端。23.2 晶振电路 单片机晶振作用是为系统提供基本时钟信号。普通一种系统共用一种晶振,便于各某些保持同步。有些通讯系统基频和射频使用不同晶振,而通过电子调节频率办法保持同步。也就是说.晶振是给单片机提供工作信号脉冲。这个脉冲就是单片机工作速度。例如 这里选用是12

19、MHZ晶振. 如果一种单片机选取了12MHZ晶振,它时钟周期是112us,它一种机器周期是12(112)us,也就是1us。晶振与单片机XTAL0和XTAL1引脚构成振荡电路中会产生偕波,这个波对电路影响不大,但会减少电路时钟振荡器稳定性。为了提高电路稳定性,在晶振两引脚处接入两个10pf-50pf瓷片电容接地来削减偕波对电路稳定性影响。晶振电路中两个电容取值都是相似,或者说相差不大,如果相差太大,容易导致谐振不平衡,容易导致停振或者干脆不起振。这里咱们选用30pf电容。复位电路:复位电路原理是单片机RST引脚接受到2US以上电平信号,只要保证电容充放电时间不不大于2US,即可实现复位。复位电

20、路由电容串联电阻构成,结合电容电压不能突变性质,可以懂得,当系统一上电,RST脚将会浮现高电平,并且,这个高电平持续时间由电路R、C值来决定。在这个电路中,这里选用10K电阻和1uf电容。33.2 LED发光二极管LED发光二极管是一种可以将电能转化为可见光固态半导体器件,它可以直接把电转化为光。LED心脏是一种半导体晶片,晶片一端附在一种支架上,一端是负极,另一端连接电源正极,使整个晶片被环氧树脂封装起来。半导体晶片由两某些构成,一某些是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边重要是电子。但这两种半导体连接起来时候,它们之间就形成一种P-N结。当电流通过导线作用于这个晶

21、片时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子形式发出能量,这就是LED灯发光原理。而光波长也就是光颜色,是由形成P-N结材料决定。第四章 硬件电路设计硬件电路设计重要涉及主控系统设计、输入控制模块设计、中断控制模块设计、晶振时钟电路设计、复位电路设计、输入电路设计。4.1 主控系统采用89C51单片机为主控系统,89C51P1口用于输入开关信号,P2口分别连接八盏彩色LED以显示不同花样变化,P3.2口(#INT0)口用于外部中断输入,采用外部中断0。图4.14.2 晶振时钟电路设计单片机XTAL1和XTAL2分别接30pF电容,中间再并一种12MHZ晶振,形成单片机晶振

22、电路。图4.2:晶振时钟电路4.3 复位电路设计片机复位操作有上电自动复位和手动按键复位两种方式。上电自动复位操作规定接通电源后自动实现复位操作。如图1.5-1所示。图6(a)所示为最简朴复位电路。上电瞬间由于电容C上无储能,其端电压近似为零,RST获得高电平,随着电容器C充电,RST引脚上高电平将逐渐下降,当RST引脚上电压不大于某一数值后,单片机就脱离复位状态,进入正常工作模式。只要高电平能保持复位所需要时间(约两个机器周期),单片机就能实现复位。图4.3 复位电路4.4 输入控制模块及中断控制模块设计P1.0,P1.1,P1.2,P1.3分别与四个开关K1,K2,K3,K4相连作为输入控

23、制口,采用外部中断控制方式控制各种花样流水灯开通。如图所示,由4个单刀开关K1K4,+5V电源,上拉电阻R5,以及四个二极管D1D4构成输入控制电路。各开关分别和相应P1口相应位(P1.0,P1.1,P1.2,P1.3)相连,P3.2(#INT0)通过四个二极管D1,D2,D3,D4分别与开关K1,K2,K3,K4相连。1. 当开关处在断开状态,各开关所相应P1口各位呈现高电位状态。2. 当开关处在闭合状态时,由于其相应P1口各位将直接与大地相连,因此呈现低电位状态,则此时二极管两端加正向电压则正向导通,使P3.2(#INT0)通过导通二极管直接与地相连,则此时P3.2(#INT0)电位便被拉

24、升到低电位,引起外部中断,若无二极管按下任意开关时,四个开关右端将同步处在低电位,这就使得程序不能精确判断究竟是哪个开关闭合,从而就不能顺利执行相应花样灯程序。图4.4输入控制模块及中断模块4.5 输出控制模块设计输出控制某些电路由8个不同色彩采用共阳极接法发光二极管LED构成,二极管量灭控制不同输出信号模式。89C51单片机P2口负责输出不同输出信号,每个P2.0P2.7通过总线与其相相应LED1LED8发光二极管相连,在这里,为了不使被点亮发光二极管因热效应被损坏,应给8个发光二极管串联限流电阻,用于限制流过发光二极管电流值在规定范畴之内。当P2口相应位P2.0P2.7处在低电平时候,与其

25、相连二极管便被点亮,通过对P2口高低电平转换实现对发光二极点亮与熄灭显示控制,从而完毕花样灯模式1到模式4变化。第五章 软件设计及重要子程序 5.1 软件简介(Proteus和Keil 4uV) Proteus软件是英国Lab Center Electronics公司出版EDA工具软件(该软件中华人民共和国总代理为广州风标电子技术有限公司)。它不但具备其他EDA工具软件仿真功能,还能仿真单片机及外围器件。它是当前比较好仿真单片机及外围器件工具。虽然当前国内推广刚起步,但已受到单片机兴趣者、从事单片机教学教师、致力于单片机开发应用科技工作者青睐。Proteus是世界上知名EDA工具(仿真软件),

26、从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品完整设计。是当前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一设计平台,其解决器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,又增长了Cortex和DSP系列解决器,并持续增长其她系列解决器模型。在编译方面,它也支持IAR、Keil和MATLAB等各种编译器。3Keil C51是美国Keil Software公司出品51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、构造性、可读性、可维护

27、性上有明显优势,因而易学易用。Keil提供了涉及C编译器、宏汇编、链接器、库管理和一种功能强大仿真调试器等在内完整开发方案,通过一种集成开发环境(Vision)将这些某些组合在一起。运营Keil软件需要WIN98、NT、WIN、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你不二之选,虽然不使用C语言而仅用汇编语言编程,其以便易用集成环境、强大软件仿真调试工具也会令你事半功倍。4在PROTUES绘制好原理图后,再在keil uV2中输入程序代码并且进行编译。然后就可以调入已编译好目的代码文献:*.HEX,运用这两个软件进行联合仿真。PROTUES不但可将许多单片机实例功能形象

28、化,也可将许多单片机实例运营过程形象化。前者可在相称限度上得到实物演示实验效果,后者则是实物演示实验难以达到效果。它元器件、连接线路等却和老式单片机实验硬件高度相应。由于PROTUES提供了实验室无法相比大量元器件库,提供了修改电路设计灵活性、提供了实验室在数量、质量上难以相比虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神平台。它具备设计灵活,成果、过程统一特点。可使设计时间大为缩短、耗资大为减少,也可减少工程制造风险。相信在单片 开发应用中PROTUES也能茯得愈来愈广泛应用。5.2 主程序流程图开始P1.0相应亮灯方式LIGHT1跳至主程序,设立外部中断0有效,电平触发LIGHT2

29、P1.1P1.2LIGHT3主程序等待中断P1.3LIGHT4中断到来中断?继续循环继续等待中断5.3 主程序 ORG 0000H LJMP MAIN ORG 0003H ;外部中断0入口地址 LJMP LOOP ORG 1000HMAIN:SETB P3.2 ;外部中断置1 SETB EA ;总中断容许 SETB EX0 ;容许外部中断0 CLR IT0 ;设立为电平触发方式 SJMP $ ;等待中断LOOP:JNB P1.0,LI1 ;相应位判零则转移到相应亮灯方式 JNB P1.1,LI2 JNB P1.2,LI3 JNB P1.3,LI4 CLR EA ;中断总禁止 CLR EX0 ;

30、禁止外部中断0QUIT:RETI ;中断返回LI1: ;跑马灯程序 MOV P2,#0FFH ;P2口送高电位,将所有LED熄灭 MOV A,#0FEHLOOP1:MOV P2,A LCALL DELAY RL A JB P2.7,LOOP1 SJMP QUITLI2: ;流水灯程序 CLR P2.0 ;点亮P2.0口 LCALL DELAY CLR P2.1 LCALL DELAY CLR P2.2 LCALL DELAY CLR P2.3 LCALL DELAY CLR P2.4 LCALL DELAY CLR P2.5 LCALL DELAY CLR P2.6 LCALL DELAY C

31、LR P2.7 LCALL DELAY MOV P2,#0FFH ;P2口所有熄灭 JNB P1.1,LI2 ;若开关闭合则循环执行 SJMP QUITLI3: ;戏水灯程序 MOV P2,#0FFHMOV P2,#0AAH ;点亮2,4,6,8灯LCALL DELAYMOV P2,#0FFHLCALL DELAYMOV P2,#55H ;点亮1,3,5,7灯LCALL DELAYMOV P2,#0FFH LCALL DELAYLCALL DELAYJNB P1.2,LI3SJMP QUITLI4:MOV P2,#0FFH ;循环执行三种花样灯MOV A,#0FEHLOOP2:MOV P2,A

32、RL ALCALL DELAYJB P2.7,LOOP2 CLR P2.0 LCALL DELAY CLR P2.1 LCALL DELAY CLR P2.2 LCALL DELAY CLR P2.3 LCALL DELAY CLR P2.4 LCALL DELAY CLR P2.5 LCALL DELAY CLR P2.6 LCALL DELAY CLR P2.7 LCALL DELAY MOV P2,#0FFH MOV P2,#0AAH LCALL DELAY MOV P2,#0FFH LCALL DELAY MOV P2,#55H LCALL DELAY MOV P2,#0FFH LCA

33、LL DELAY LCALL DELAY JNB P1.3,LI4 LJMP QUITDELAY:MOV R6,#200 ;延时程序100msDELAY0:MOV R7,#250DELAY1:DJNZ R7,DELAY1 DJNZ R6,DELAY0 RET END5.4 中断子程序LOOP:JNB P1.0,LI1 JNB P1.1,LI2 JNB P1.2,LI3 JNB P1.3,LI4 CLR EA CLR EX0QUIT:RETI5.5 LIGHT1跑马灯子程序LI1: MOV P2,#0FFH MOV A,#0FEHLOOP1:MOV P2,A LCALL DELAY RL A J

34、B P2.7,LOOP1 SJMP QUIT5.6 LIGHT2流水灯子程序LI2: CLR P2.0 LCALL DELAY CLR P2.1 LCALL DELAY CLR P2.2 LCALL DELAY CLR P2.3 LCALL DELAY CLR P2.4 LCALL DELAY CLR P2.5 LCALL DELAY CLR P2.6 LCALL DELAY CLR P2.7 LCALL DELAY MOV P2,#0FFH JNB P1.1,LI2 SJMP QUIT5.7 LIGHT3戏水灯子程序LI3:MOV P2,#0FFHMOV P2,#0AAHLCALL DELA

35、YMOV P2,#0FFHLCALL DELAYMOV P2,#55HLCALL DELAYMOV P2,#0FFH LCALL DELAYLCALL DELAYJNB P1.2,LI3SJMP QUIT5.8 延时子程序DELAY:MOV R6,#200DELAY0:MOV R7,#250DELAY1:DJNZ R7,DELAY1 DJNZ R6,DELAY0 RET第六章 系统仿真与调试6.1 Keil编译Keil C51是美国Keil Software公司出品51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、构造性、可读性、可维护性上有明显优势, Keil提供了涉及C编译

36、器、宏汇编、连接器、库管理和一种功能强大仿真调试器等在内完整开发方案,通过一种集成开发环境(uVision)将这些某些组合在一起。如果使用C语言编程,那么Keil几乎就是不二之选,虽然不使用C语言而仅用汇编语言编程,其以便易用集成环境、强大软件仿真调试工具也会令你事半功倍。本次设计采用汇编语言编程,生成.hex文献以供装载到Protues中单片机进行仿真。6.2 Protues仿真平台简介Protues软件是英国Labcenter electronics公司出版EDA工具软件。它不但具备其他EDA工具软件仿真功能,还能仿真单片机及外围器件。它是当前最佳仿真单片机及外围器件工具。Proteus是

37、世界上知名EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到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

38、 FREQUENCY栏中设立系统工作频率为12MHZ,单击OK完毕目的代码加载。6图6.1 程序代码加载6.3 跑马灯仿真演示当控制开关K1闭合时,八盏LED彩灯工作在跑马灯模式,仿真成果如图所示。6.4 流水灯仿真演示6.5 戏水灯仿真演示6.6 顺序循环执行三种花样灯第七章 PCB板生成7.1 PCB生成第八章 课程设计总结 本次课程设计是运用89C51单片机设计多按键花样流水灯。在本次为期一周课程设计中,咱们一方面听了指引教师向同窗们细心解说了设计题目及基本注意事项,然后进行对本次课设总体构思,完毕设计规划以及完毕硬件电路方案设计,接着进行了绘制软件程序流程图和硬件搭接,绘制原理图,最后

39、进行了系统仿真,以及PCB板生成。 过本次实验,我掌握了对于PROTEUS和KEIL uV4两个单片机惯用软件纯熟使用。咱们通过选取题目详细规定进行课程设计,运用在课堂中以及课下课本上所学知识将其付诸于实践来完毕。这并不是在课堂上单纯听懂,或是在课后看书过程中进一步理解就可以做到万无一失,而是需要一种理论联系于实际能力,需要考虑现实中需要注意许多问题。整个课程设计过程中虽然遇到了不少问题,但是都通过查阅课本,请教同窗,和上网查阅资料得到了比较完善解决,使我获益匪浅。例如第一次电路原理图画好后来,仿真时,无论按下K1K4中任意一种开关,各8盏LED都是按照跑马灯模式输出,且发现各电位点在开关闭合

40、后变为黄色电位点,我通过查阅资料,理解到除了红色代表高电平,蓝色代表低电平,灰色代表没有电平或者不稳定,而黄色则代表短路。通过检查电路发现开关闭合后由于二极管某些连接失误导致了短路,使得各个开关不能分别控制P1.1P1.3口电位。在这里,二极管作用是非常核心,咱们运用二极管单向导电性来达到各个开关都可以独立控制终端而互不短路目当开关处在闭合状态时,由于其相应P1口各位将直接与大地相连,因此呈现低电位状态,则此时二极管两端加正向电压则正向导通,使P3.2(#INT0)通过导通二极管直接与地相连,则此时P3.2(#INT0)电位便被拉升到低电位,引起外部中断,若无二极管按下任意开关时,四个开关右端

41、将同步处在低电位,这就使得程序不能精确判断究竟是哪个开关闭合,从而就不能顺利执行相应花样灯程序。因此在这一点上,是值得咱们认真思考和总结并值得后来在实际应用中借鉴。 总之,这次单片机课程设计虽然时间很紧张,并且夹杂在六级考试和专业课考试之中,但是通过努力还是收获颇丰,并获得了最后较为完备成果,以及达到了课题规定,让咱们学到了诸多课堂之内所不能学到东西。感谢教师指引!参照文献1 康光华主编. 电子技术基本M. 高等教诲出版社,2 陈海宴主编. 51单片机原理及应用基Keil C与ProteuM . 北京航空航天大学出版社,3 林立主编. 单片机原理及其应用-基于Proteus与keil CM. 电子工业出版社, 4 陈忠平主编. 基于proteus 51系列单片机设计与仿真M. 电子工业出版社,5 何应浚. 51单片机C语言编程一学就会M. 机械工业出版社,6 陈志旺主编.51单片机应用实例详解M.机械工业出版社,

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服