霓虹灯显示程序设计
- 格式:doc
- 大小:245.00 KB
- 文档页数:31
摘要微机原理是一门非常重要的计算机技术基础课程,全面介绍微机的基本结构、工作原理、硬件配置、接口期间和接口种类等。
本次微机接口课程设计的主要目的是要使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。
通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。
为以后学生结合专业从事微机应用设计奠定基础。
在本次课程设计中大家利用课上所学的各种知识,对自己的课程设计题目进行设计。
我们小组所要设计的题目是音乐霓虹灯程序设计。
在设计的过程中主要利用计数器/定时器8254芯片和可编程并行接口8255A芯片,完成2个开关选择歌曲,能用扬声器播放歌曲,并且能有彩灯亮的个数来反映歌曲的频率。
首先我们利用定时器产生各种频率的声音,如“DO”“RE”“ME”然后将各个单音连接起来就组成了一首简单的曲子或者旋律,旋律及拍数可以按音乐简谱而定。
对8255芯片PA0和PA1口的置0和1来选择歌曲。
其次实现唱歌功能即实现歌曲的节拍通过调用延时子程序控制音符发音的长短,实现连续发声把[SI]是否为0作为循环的条件在每一次扬声器发出一个相应音符之后做无条件转移,从而使扬声器连续发声,发光二级管跟着歌曲频率的变化改变亮灭的个数。
关键字:音乐播放器、可编程并行接口8255A芯片、计数器/定时器8254目录摘要 (I)1 设计原理说明 (1)1.1 设计原理 (1)1.2 设计环境及设备 (2)1.3 硬件接线图 (2)1.4 设计流程图 (2)2 主要芯片介绍 (4)2.1 8254芯片 (4)2.1.1 定时/计数器8254 (4)2.1.2 8254内部结构 (4)2.1.3 8254外部引脚 (5)2.1.4 计数器内部结构 (6)2.1.5 8254端口地址 (7)2.1.6 8254功能 (7)2.1.7 8254控制字 (7)2.1.8 8254工作方式 (8)2.2 8255芯片 (9)2.2.1 8255外部引脚功能 (9)2.2.2 8255内部结构 (10)2.2.3 8255控制字 (11)2.2.4 8255三种工作方式 (12)2.2.5 8255A的端口地址 (14)2.3 发光二极管 (14)2.3.1 发光二极管介绍 (14)2.3.2发光二极管的分类 (14)3 具体模块设计 (15)3.1频率产生模块 (15)3.2 控制模块 (15)3.3 控制音符的演奏时间 (16)3.4 音符频率表 (16)3.5 控制二极管的亮灭模块 (17)3.5.1 音乐与所设频率进行比较来调用程序 (18)3.5.2 控制彩灯所亮个数的程序 (18)总结 (20)致谢 (21)参考文献 (22)附录 (23)1 设计原理说明1.1 设计原理我们在这次课设选择了音乐霓虹灯程序设计,音乐霓虹灯程序设计可以实现两首歌的可选择播放。
目录一、前言 (2)二、控制系统介绍及控制要求 (2)三、 I/O分配表及PLC型号选择 (4)四、 PLC端子接线图 (4)五、控制流程图 (5)六、梯形图与指令表 (7)七、调试与完善 (14)八、程序运行原理说明 (15)九、结束语 (15)十、参考文献 (16)PLC控制的霓虹灯广告屏设计一、前言随着改革的不断深入,社会主义市场经济的不断繁荣和发展,个大中小城市都在进行亮化工程。
个企业为宣传自己企业的形象和产品,均采用广告手法之一:霓虹灯广告屏来实现这一目的.当我们夜晚走在大街上,马路两旁各色各样的霓虹灯广告均可以见到,一种是采用霓虹灯管做成的各种形状和多中彩色的灯管,另一种为日光等管或白炽灯管作为光源,另配大型广告语或宣传画来达到宣传的效果。
这些灯的亮灭,闪烁时间及流动方向等均可以通过PLC来达到控制的要求.可编程控制器PLC可编程序控制器:英文全称Programmable Logic Controller ,中文全称为可编程逻辑控制器,是一种数字运算操作的电子系统,专为在工业环境应用而设计的。
它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算,顺序控制,定时,计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程.作为自动控制装置的核心,它具有功能强,可靠性高等诸多优点,PLC实验装置采用的是模块化结构,主要模块有可编程序控制器、编程器模块,九种实验模块,按钮、开关输入模块和继电器输出模块,以及四层电梯模型。
该装置可以完成各种指令系统训练以及多种控制对象的程序设计训练。
(二)PLC简介1. PLC的产生20世纪20年代起,人们把各种继电器、定时器、接触器及其触点按一定的逻辑关系连接起来组成控制系统,控制各种生产机械,这就是大家熟悉的传统的继电器控制系统。
由于它结构简单、容易掌握、价格便宜,能满足大部分场合电气顺序逻辑控制的要求,因而在工业控制领域中一直占据主导地位。
霓虹灯plc控制系统设计课程设计霓虹灯PLC控制系统设计引言:霓虹灯是一种常见的照明装饰灯具,其独特的亮光效果受到了广大人们的喜爱。
为了实现对霓虹灯的控制,PLC(可编程逻辑控制器)被广泛应用于霓虹灯控制系统的设计中。
本文将介绍霓虹灯PLC控制系统的设计原理、步骤和注意事项。
一、设计原理霓虹灯PLC控制系统的设计原理基于PLC的逻辑控制能力和霓虹灯的特性。
PLC作为一种专用的工控计算机,具有可编程性和高可靠性,能够根据预设的逻辑程序对输入和输出进行控制。
而霓虹灯作为一种发光装置,需要通过电流的控制来实现不同颜色和亮度的变化。
因此,通过将PLC与霓虹灯连接并编写逻辑程序,可以实现对霓虹灯的精确控制。
二、设计步骤1. 确定需求:首先需要明确对霓虹灯的控制需求,包括颜色、亮度、闪烁频率等方面的要求。
同时,还需要考虑系统的可靠性和安全性等因素。
2. 选择PLC:根据需求确定合适的PLC型号和规格。
PLC的选择应考虑其输入输出点数、通信接口、编程环境等因素,以确保能够满足控制系统的要求。
3. 连接电路:将PLC与霓虹灯连接,包括连接输入和输出模块、电源模块和控制信号线等。
在连接电路时,应遵循相关的电气安装规范,并确保电路的可靠性和安全性。
4. 编写逻辑程序:根据需求编写逻辑程序,实现对霓虹灯的控制。
逻辑程序可以使用Ladder图、指令列表或结构化文本等编程语言进行编写。
编写逻辑程序时,应考虑到系统的稳定性和可扩展性,并进行充分的测试和调试。
5. 参数设置:对PLC进行参数设置,包括输入输出模块的配置、通信设置、定时器和计数器等功能的设置。
参数设置应根据实际需求进行,以确保系统能够正常运行。
6. 系统测试:对设计的霓虹灯PLC控制系统进行全面测试。
测试包括功能测试、性能测试和可靠性测试等,以验证系统的正确性和稳定性。
三、注意事项1. 电气安装:在进行电气安装时,应按照相关的安装规范进行,确保电路的可靠性和安全性。
机电高等专科学校实训设计报告书课程名称:?电气控制与PLC?课题名称:霓虹灯广告屏装置的PLC 控制系部名称:机械工程系专业班级:机制131姓名:学号:指导教师:宋守云2021 年12月27日目录目录1摘要3第1章、引言41.1课程设计的容和要求41.1.1、设计目的:41.1.2、设计要求:41.2 总体设计思路5第2章、霓虹灯PLC控制的设计方案52.1 设计原理及方案选择52.2设计流程图6第3章、硬件、软件设计73.1、硬件电路设计73.2、I/O地址分配;83.2.1、I/O地址分配表83.2.2、I/O地址分配图93.3、程序的设计93.4、程序容10第4章、程序调试104.1、调试概述104.2、调试要求114.3、调试过程114.4、确定程序11第5章、心得体会125.1、结论125.2辞和体会12附录1、参考文献13附录2、程序清单14摘要为展现商家的形象和“品位〞,在夜晚展现出一个美好的夜一般都会采用“个性〞霓虹灯广告屏来装饰商场。
这就涉及到如何去控制商家所需的霓虹灯的亮灭、闪烁时间及流动方向等诸多控制问题。
如何去快捷、可靠、简单的去控制,成为人们考虑的重点。
PLC是一种用程序来改变控制功能的工业控制计算机,霓虹灯和流水灯的亮灭、闪烁时间及流动方向等,均可以通过PLC来到达控制的要求。
本课程设计根据课题上的5点要求,进展I/O口估算,并选择PLC型号、绘制流程图和设计梯形图。
以及编写程序清单、调试程序、修改程序并最终确定程序,最终实现课程要求。
在编写程序的时候用到了计数器和比拟指令,使程序简洁明了。
根本实现对霓虹灯的正确、简洁、稳定的控制。
附加时序:每个灯均闪烁两次再亮。
关键词:广告屏;PLC控制;计数器;比拟指令第1章、引言1.1课程设计的容和要求1.1.1、设计目的:设计一个霓虹灯广告屏装置的PLC 控制系统。
该广告屏共有8 根灯管,每根灯管显示一个汉字,如以下列图所示:1.1.2、设计要求:1、该广告屏8 根灯管亮灭的根本时序为:第1 根亮→2 亮→3 亮→……→第8 根亮,时间间隔为1s ,全亮后,显示3s ,再反过来从8 →7 →……→1 按1s 间隔顺序熄灭,全灭后停亮2s ;再从第8 根开场亮,顺序点亮7 →6 →……→1 ,时间间隔1s ,显示5s ,再从1 →2 →……→8 按1s 间隔顺序熄灭,全灭后停亮2s ,然后重复运行,周而复始。
机电工程学院课程设计说明书设计题目: 霓虹灯广告屏装置PLC程序设计学生姓名:学号: 20094805专业班级:机制F09指导教师:2012 年12 月13 日内容摘要随着改革的不断深入,社会主义市场经济的不断繁荣和发展,个大中小城市都在进行亮化工程。
个企业为宣传自己企业的形象和产烁时间及流动方向等均可以通过PLC来达到控制的要求.PLC是一种用程序来品,均采用广告手法之一:霓虹灯广告屏来实现这一目的.当我们夜晚走在大街上,马路两旁各色各样的霓虹灯广告均可以见到,一种是采用霓虹灯管做成的各种形状和多中彩色的灯管,另一种为日光等管或白炽灯管作为光源,另配大型广告语或宣传画来达到宣传的效果。
这些灯的亮灭,闪改变控制功能的工业控制计算机,这些霓虹灯的亮灭、闪烁时间及流动方向等均,可以通过PLC来达到控制的要求,这篇课程设计就是根据实验要求,进行输入输出的I/O口估算,选择PLC型号、绘制流程图、设计梯形图、编写程序清单、调试程序、修改程序,最终实现课程要求。
在编写程序的时候用到了位移指令,是程序变得更加简洁。
基本实现对霓虹灯的正确、稳定地控制。
关键词:霓虹灯;PLC控制;I/O口估算;梯形图;程序调试;移位指令目录第1章引言 (1)第2章硬件设计 (2)2.1 运行框图 (2)2.2 CPU的选择 (4)2.3 I/O分配表 (4)2.4 I/O接线图 (6)第3章软件设计 (7)3.1梯形图的设计 (7)3.2 梯形图及指令表 (7)第4章系统调试 (28)结论 (29)设计总结 (30)致谢 (31)参考文献 (32)第1章引言1.1霓虹灯广告屏装置PLC程序设计内容简介该广告屏共有8 根灯管,24 只流水灯,每4 只灯为一组,如下图所示:图1-1 霓虹灯广告屏工作示意图1.2 霓虹灯广告屏装置PLC控制系统设计要求(1)该广告屏中间8个霓虹灯字亮灭的时序为第1根亮→2亮→3亮……第8根亮,时间间隔均为1S,8个霓虹灯字全亮后,显示10S,再反过来从8→7……1顺序熄灭.全灭后,停亮2S,再从第8根开始亮起,顺序点亮8→7…1,时间间隔为1S,全亮后显示5S.再从1→2…8按1S间隔顺序熄灭.全熄灭后,停亮2S,再从头开始运行,周而复始。
二.霓虹灯控制
姓名:朱彭单位:无锡职业技术学院
有两组灯分别为A组T0-T3,B组T4-T7。
上电初始T0-T3,T4-T7指示灯作0.5/0.5秒闪烁。
1.当按SB1后AB两组灯依次点亮速率为2秒/步,当B组与A 组运行2次结束后,AB组所有灯作0.5/0.5秒闪亮,任何时候按SB2所有当前输出点停止且锁止。
在任何时候按SB3结束所有动作。
2.当将加速开关SA1接通后,按SB1后AB两组灯依次点亮的速
率为1秒/步。
其他动作不变。
①配置表
②梯形图
由于调试的原因,第一步中X007应为M8002。
PLC开始运行程序。
M8002在第一个运行周期为ON,所以M0自锁,加上M8013是为了使灯作0.5/0.5秒闪烁。
接通X0后,定时器T0开始计时,1s给计数器C0一个脉冲,计数为一,且每计一个数,对应的Y0-Y7会闭合。
X4是控制定时其T0所定时间,把相应的值移动到寄存器D10中,接通后T0会以2s给计数器一个脉冲。
X2为锁相按钮,X2闭合,所有当前输出点停止且锁止。
计数器计数完成后所有Y0-Y7会作0.5/0.5秒闭合。
X3为停止,接通后全部停止运行。
④外部接线图
作者QQ:2528647412。
实践任务二复杂霓虹灯控制
能力目标
1)熟练掌握传送、循环移位、移位、比较等功能指令的用法
2)进一步熟悉顺序控制法编程思想
3)学会用顺序控制法结合功能指令实现复杂灯光效果控制,为自己设计的霓虹灯控制程序与调试作准备
4)学会多个输出程序的调试技术
一、控制要求
按下启动按钮SB1,1——8个彩灯按以下规律显示:
1)首先是`1~8个彩灯间隔1S逐个点亮,即1→1、2→1、2、3、4→1、2、3、4、5→1、2、3、4、5、6→1、2、3、4、5、6、7→1、2、3、4、5、6、7、8;
2)所有灯闪烁4次(周期为1S)后全亮2S;
3)所有灯按照1~8顺序熄灭,即2、3、4、5、6、7、8→3、4、5、6、7、8→4、5、6、7、8→5、6、7、8→6、7、8,所有灯全灭2S;
4)各灯再按如下规律变化,时间间隔2S,即1、8→2、7→3、6→4、5→1、3、5、7→2、4、6、8→1、3、5、7→2、4、6、8→全部闪烁5 次(周期为1S)→全灭…再重复1)步如此循环。
当按下停止按钮SB2 时停止循环。
二、任务要求
1)根据灯光变换控制要求设计软件程序;2)程序写入与调试;
3)霓虹灯灯光效果功能演示。
武汉理工大学《微机原理与接口技术》课程设计说明书 1 霓虹灯显示程序设计 1设计内容简介 汇编语言是用指令的助记符、符号地址、标号等书写程序的语言,实际上是机器语言的一种符号表示,主要特点是可以使用助记符来表示机器指令的操作码和操作数,可以用标号和符号来代替地址、常量和变量。汇编语言是能够利用计算机所有硬件特性进而直接控制硬件的唯一语言。汇编语言的使用范围很广,文字显示只是其中很简单的一项。本次课程设计采用DOS和BIOS功能调用,采用25×80的彩色图像显示方式。先在坐标纸上用ASCII码所对应的字符拼出自己的名字,并设定ASCII码的颜色值。ASCII码对应字符的位置由行数与列数的二维坐标确定。其中行向上则减,向下则增;列向左则减,向右则增。程序在数据段中写出所要显示的我名字的位形图,每行数据段定义组成文字的一个点。其中包含组成文字的字符、颜色、横坐标、纵坐标。文字的变色是通过同一个字的不同颜色版本去覆盖当前的版本以及清屏、擦除程序实现的。文字的闪烁则是通过将颜色属性的八位二进制数的最高位置一实现的。通过比较输入字符与0、Q或q的大小,来实现退出的功能。 2设计任务及要求
本次霓虹灯显示程序设计任务书的内容要求如下:
1.用汇编语言编写一个霓虹灯的模拟显示程序; 2.在屏幕上显示你的中文名字或其它文字,按某种规律闪烁变化,按“q”键退出; 分析任务书要求可知:本次程序设计尽量在屏幕上显示自己的名字,也可以显示其他的文字。文字要按某种方式闪烁,闪烁方式不限定于一种,也可以多种。程序运行过程中,有Q或q输入,则程序结束;无字符输入或输入字符不是Q、q,则程序照常运行。 3方案论证
本次课程设计在确定最终方案之前,各个功能模块都从多种设计中比较得出。 (1)文字显示可采用坐标纸写点的方式或者直接用字模软件取字符。原武汉理工大学《微机原理与接口技术》课程设计说明书 2 本下载了一个字模软件,在其中输入文字就可以读取字模。但是其字模编码是用于LED中的,并不能直接在本程序中调用显示文字。因此,最后采用用坐标纸写点的方式, 虽然写点的工作量较大,但是便于理解,容易修改。 (2)用相同字体但不同颜色的字符去覆盖对应的字符,只能起到变色的作用。要实现闪烁还要把每一个点的颜色属性最高位设为1。 (3)退出程序块中,在判断输入字符是否为Q或q之前必须加一段有没有字符输入的程序。否则,程序运行到判断字符这里,运行窗口就会等在那里,直到输入字符才能继续运行。这样每次运行到这里程序就会等着,实现不了霓虹灯的连续闪烁。 4软件设计说明
4.1程序流程图 4.1.1主程序流程图 流程思路:数据段初始化→调用汉字显示程序,先显示汉字”yu”,再显示汉字”yu1”→调用竖条纹显示程序,显示运动的条纹→判断是否有字符输入,没有的话,继续往下执行→有字符输入时,判断是否为“Q”或“q”→不为“ Q”或“q”时,转到执行程序段Aagain1→为“Q”或“q”时,退出程序。 主程序流程图如下: 武汉理工大学《微机原理与接口技术》课程设计说明书
3 图1 霓虹灯显示主程序 4.1.2子程序流程图 本程序显示的汉字为自己的名字,名字中的每个字都用不同颜色的版本写两次,然后竖形条纹扫过,条纹扫过时汉字被覆盖,条纹扫过后开始显示下一个文字,然后条纹再扫过,一直这样循环。因此,子程序有汉字显示子程序、竖形条纹显示子程序、擦除子程序,对应的流程图分别如图2、3、4所示。
开始 数据段初始
Y Y N N
调用条纹显示子程序,显示运动的条纹 调用汉字显示子程序,先后显示“xiang”,“xiang1” 调用条纹显示子程序,显示运动的条纹 结束
输入字符是否是“Q”、“q”?
调用汉字显示子程序,先后显示“jia”,“jia1”
调用条纹显示子程序,显示运动的条纹 调用汉字显示程序,先后显示“yu”,“yu1” 判断是否有字符输入? 武汉理工大学《微机原理与接口技术》课程设计说明书
4
图2 汉字显示子程序流程图
开始 Y N CX中内容自减1 寄存器出栈 判断CX中内容是否为0?
CX出栈,保存循环次数 在指定坐标处写第一个点 CX入栈 保存组成点的基本信息 CX寄存器清零 寄存器入栈
结束 武汉理工大学《微机原理与接口技术》课程设计说明书
5 图3 竖形条纹显示子程序 寄存器入栈 CX寄存器清零 保存组成点的基本信息
结束 寄存器出栈 将字符写11次 判断指定坐标处字符是否为*?
判断指定坐标处字符是否为@?
CX出栈,保存循环次数 在指定坐标处写第一个点 判断是否到达屏幕最左端?
CX寄存器入栈 Y
N
Y N N
Y
开始 武汉理工大学《微机原理与接口技术》课程设计说明书
6 图4 擦除子程序 N N N Y
Y
结束 保存点的基本信息
列坐标dl自减1 将字符改为* 将字符写11个 判断指定位置处字符是否为*?
判断指定位置处字符是否为@?
判断是否到达屏幕最左端?
保存组成点的基本信息 开始 武汉理工大学《微机原理与接口技术》课程设计说明书
7 4.2主要程序段与程序设计分析 4.2.1程序中用到的BIOS内的中断功能 (1)02H号功能调用 功能:用文本坐标下设置光标位置 入口参数:AH=02H BH=显示页码 DH=行(Y坐标) DL=列(X坐标) 出口参数:无 (2)08H号功能调用 功能:读光标处的字符及其属性 入口参数:AH=08H BH=显示页码 出口参数:AH=属性 AL=字符 (3)09H号功能调用 功能:在当前光标处按指定属性显示字符 入口参数:AH=09H AL=字符 BH=显示页码 BL=属性(文本模式)或颜色(图形模式) CX=重复输出字符的次数 出口参数:无 (4)0FH号功能调用 功能:读取显示器模式 入口参数:AH=0FH 出口参数:AH=屏幕字符的列数 AL=显示模式 BH=页码 武汉理工大学《微机原理与接口技术》课程设计说明书 8 4.2.2程序中用到的DOS功能调用 (1)01H号功能调用 功能:从键盘输入一个字符 输入参数:无 输出参数:AL=ASCII码 (2)0BH号功能调用 功能:检查标准输入设备上是否有字符可读,该输入操作可被重定向 输入参数:AH=0BH 输出参数:AL=00H——无字符可读;FFH——有字符可读 (3)4CH号功能调用 功能:返回操作系统4CH 调用:MOV AH,4CH INT 21H 4.2.3主要程序段与程序设计分析 (1)数据段 本课程设计源程序中的汉字运用写点的方式实现,在数据段的定义中,由组成汉字的点的ASCII码值、颜色、X坐标、Y坐标构成。 例如: yu db 34 db 2ah,8ah,0,0 db 2ah,8ah,-5,1 db 2ah,8ah,4,0 db 2ah,8ah,-5,1 这段程序是第一个汉字“余”的位形图,其中2ah为组成“余”字第一个点的ASCII码值,在屏幕上显示为*;8ah为颜色属性,为淡绿色且闪烁;(0,0)为这个点的坐标,第一个为行坐标,第二个为列坐标。这个点为“余”字组成点的基准坐标,其它点的坐标设置与此点类似。坐标设置按照矩阵的形式,向上则行自减1,向下则行自增1,向左则列自减1,向右则列自增1。每写出一个点后,该点的坐标变回基准坐标(0,0)。本程序中写点是按照从左到右、从上到下的顺序写的,直至写完所有的点。 武汉理工大学《微机原理与接口技术》课程设计说明书 9 (2)写点程序段 首先将汉字位形图的地址送给寄存器,程序如下: lea di,yu mov dh,17 mov dl,6 其中,dh,dl分别对应于所写汉字第一个点在屏幕上显示时的行、列坐标。然后读取组成点的信息,程序段如下: mov char_cnt1,cx mov pointer1,di mov line_on1,dh mov col_on1,dl mov char,cx 程序中char_cnt1指字符,pointer1指颜色,line_on1指行坐标, col_on1指列坐标。写点的程序在子程序Amust_2,Amust_21中类似,程序段如下: mov cx,char_cnt1 mov di,pointer1 mov dh,line_on1 mov dl,col_on1 Aplot_next0: add dh,[di+2] add dl,[di+3] mov ah,2 int 10h mov al,[di] mov bl,[di+1] push cx mov cx,1 mov ah,09 int 10h