一、实验目的1.掌握定时/计数器、输入/输出接口电路设计方法。 2.掌握中断控制编程技术的方法和应用。3.掌握8086汇编语言程序设计方法。 二、实验内容与要求 微机灯光控制系统主要用于娱乐场所的彩灯控制。系统的彩灯共有12组,在实验时用12个发光二极管模拟。1. 基本要求:灯光控制共有8种模式,如12个灯依次点亮;12个灯同时闪烁等八种。系统可以通过键盘和显示屏的人机对话,将8种模式进行任意个数、任意次序的连接组合。系统不断重复执行输入的模式组合,直至键盘有任意一个键按下,退出灯光控制系统,返回DOS系统。2. 提高要求:音乐彩灯控制系统,根据音乐的变化控制彩灯的变化,主要有以下几种:第一种为音乐节奏控制彩灯,按音乐的节拍变换彩灯花样。第二种音律的强弱(信号幅度大小)控制彩灯。强音时,灯的亮度加大,且被点亮的数目增多。第三种按音调高低(信号频率高低)控制彩灯。低音时,某一部分灯点亮;高音时,另一部分点亮。 三、实验报告要求 1.设计目的和内容 2.总体设计 3.硬件设计:原理图(接线图)及简要说明 4.软件设计框图及程序清单5.设计结果和体会(包括遇到的问题及解决的方法) 四、设计原理我们以背景霓虹灯的一种显示效果为例,介绍控制霓虹灯显示的基本原理。设有一排 n 段水平排列的霓虹灯,某种显示方式为从左到右每0.2 秒逐个点亮。其控制过程如下: 若以“ 1 ”代表霓虹灯点亮,以“ 0 ”代表霓虹灯熄灭,则开始时刻, n 段霓虹灯的控制信号均为“ 0 ”,随后,控制器将一帧 n 个数据送至 n 段霓虹灯的控制端,其中,最左边的一段霓虹灯对应的控制数据为“ 1 ”,其余的数据均为零,即 1000 … 000 。当 n 个数据送完以后,控制器停止送数,保留这种状态(定时) 0.2 秒,此时,第 1 段霓虹灯被点亮,其余霓虹灯熄灭。随后,控制器又在极短的时间内将数据 1100 … 000 送至霓虹灯的控制端,并定时 0.2 秒,这段时间,前两段霓虹灯被点亮。由于送数据的过程很快,我们观测到的效果是第一段霓虹灯被点亮 0.2 秒后,第 2 段霓虹灯接着被点亮,即每隔 0.2 秒显示一帧图样。如此下去,最后控制器将数据 1111 … 111 送至 n 段霓虹灯的控制端,则 n 段霓虹灯被全部点亮。 只要改变送至每段霓虹灯的数据,即可改变霓虹灯的显示方式,显然,我们可以通过合理地组合数据(编程)来得到霓虹灯的不同显示方式。 五、总体方案论证分析系统设计思路如下:1) 采集8位开关输入信号,若输入数据为0时,将其修改为1。确定输入的硬件接口电路。采样输入开关量,并存入NUM的软件程序段。2) 以12个灯依次点亮为例(即灯光控制模式M1),考虑与其相应的灯光显示代码数据。确定显示代码数据输出的接口电路。输出一个同期显示代码的软件程序段(暂不考虑时隙的延时要求)。3) 应用定时中断服务和NUM数据,实现t=N×50ms的方法。4) 实现某一种模式灯光显示控制中12个时隙一个周期,共重复四次的控制方法。要求在初始化时采样开关输入数据NUM,并以此控制每一时隙的延时时间;在每一时隙结束时,检查有无键按下,若是退出键按下,则结束灯光控制,返回DOS系统,若是其他键就返回主菜单,重新输入控制模式数据。5) 通过人机对话,输入8种灯光显示控制模式的任意个数、任意次序连接组合的控制模式数据串(以ENTER键结尾)。对输入的数据进行检查,若数据都在1 - 8之间,则存入INBUF;若有错误,则通过屏幕显示输入错误,准备重新输入灯光显示控制模式数据。6) 依次读取INBUF中的控制模式数据进行不同模式的灯光显示控制,在没有任意键按下的情况下,系统从第一个控制模式数据开始,顺序工作到最后一个控制模式数据后,又返回到第一个控制模式数据,不断重复循环进行灯光显示控制。7) 本系统的软件在总体上有两部份,即主程序(MAIN)和实时中断服务程序(INTT)。讨论以功能明确、相互界面分割清晰的软件程序模块化设计方法。即确定有关功能模块,并画出以功能模块表示的主程序(MAIN)流程框图和定时中断服务程序的流程框图。 六、硬件电路设计 以微机实验平台和PC机资源为硬件设计的基础,不需要外加电路。主要利用了以下的资源:1.8255并行口电路8255并行口电路主要负责数据的输入与输出,可以输出数据控制发光二极管的亮灭和读取乒乓开关的数据。实验时可以将8255的A口、B口和一组发光二极管相连,C口和乒乓开关相连。2.8253定时/计数器8253定时/计数器和8259中断控制器一起实现时隙定时。本设计的定时就是采用的t=N×50ms的方法,50ms由8253定时/计数器的计数器0控制定时,N是在中断服务程序中软件计时。8253的OUT0接到IRQ2,产生中断请求信号。8253定时/计数器定时结束会发出中断信号,进入中断服务程序。3.PC机资源本设计除了利用PC机作为控制器之外,还利用了PC机的键盘和显示器。键盘主要是输入控制模式数据,显示器就是显示提示信息。 七、软件设计 软件主要分为主程序(MAIN)和中断服务程序(INTT),主程序包含系统初始化、读取乒乓开关、读取控制模式数据以及按键处理等模块。中断服务程序主要是定时时间到后根据控制模式数据点亮相应的发光二极管。1.主程序主程序的程序流程图如图1所示。
上传时间: 2014-04-05
上传用户:q986086481
CDMA的MAP协议及以下层协议的解析,可以用于交换机、仪表、监测系统等等
上传时间: 2015-01-06
上传用户:阿四AIR
98年全国大学生数学建模竞赛B题“水灾巡视问题”,是一个推销员问题,本题有53个点,所有可能性大约为exp(53),目前没有好方法求出精确解,既然求不出精确解,我们使用模拟退火法求出一个较优解,将所有结点编号为1到53,1到53的排列就是系统的结构,结构的变化规则是:从1到53的排列中随机选取一个子排列,将其反转或将其移至另一处,能量E自然是路径总长度。具体算法描述如下:步1: 设定初始温度T,给定一个初始的巡视路线。步2 :步3 --8循环K次步3:步 4--7循环M次步4:随机选择路线的一段步5:随机确定将选定的路线反转或移动,即两种调整方式:反转、移动。步6:计算代价D,即调整前后的总路程的长度之差步7:按照如下规则确定是否做调整:如果D0,则按照EXP(-D/T)的概率进行调整步8:T*0.9-->T,降温
上传时间: 2015-03-14
上传用户:himbly
B/s结构,采用 asp.net(C#)+ MS SQL 编写。严格按照三层结构,不失为学习 C#的好例子。安泰OA办公系统自动化系统
标签:
上传时间: 2015-03-22
上传用户:yzy6007
Haskell 中文教程1-3章(flw译) 纯粹的函数型编程语言。以著名逻辑学家 Haskell B. Curry 的名字命名。 最初的目的是想要设计出满足下面这些要求的语言: 1,它必须能够适合教学、研究、应用开发,包括一些大系统的构造。 2,它必须能够使用形式语言来准确描述。 3,它必须是自由免费的,任何人只要愿意都可以获取、使用和再次发布它。 4,它必须建立在大家一致认可的基础上。 5,它应该能够消除目前的函数型编程语言的差异。
上传时间: 2014-01-10
上传用户:685
Ma tla b 是当今使用最为广泛的数学软件,它具有相当强大的数值计算、数据处理、系统 分析、图形显示、甚至符号运算功能,是一个完整的数学平台,但是它不能实现端口操作和 实时控制Borland C + +Builder是一种新颖的可视化编程语言,可方便实现交互界面、数据 采集和端口操作等,但是它在数值处理分析和算法工具等方面,效率远远低于Matlab语言
上传时间: 2014-01-24
上传用户:牛津鞋
a.本程序在Windows xp 上调试通过。 b.在使用时先用ODBC注册数据源,数据源名:addresslist(名称不可以写错) c.第一次运行时,密码为空。进入系统后可以修改密码。
上传时间: 2015-12-09
上传用户:sjyy1001
)一个PB的应用程序, 能实现以下功能: a.新增员工资料 b.修改员工资料 c.删除员工资料 d.按姓名查找员工资料(能模糊查找, 例如输入"林", 则所有姓或名中含有"林"字的 员工全列出来.) e.系统启动时, 针对今天为该员工生日的, 则自动弹出提示进行祝福. 2) 员工资料的数据必须有: 工号(为主键), 姓名, 出生日期, 入职日期, 部门, 职务 3) 数据库类型为ASA8.0
上传时间: 2016-01-03
上传用户:BIBI
结合单片机和M a t l a b 两者的优点,基于事件驱动的中断通信机制,提出一种Matlab 环境下PC 机与 单片机实时串行通信及数据处理的方法;完成单片机数据采集系统与PC 机的RS-232/RS-485 串行通 信及其通信数据的分析处理、文件存储、F I R 滤波及图形显示;简化系统开发流程,提高开发效率。 该方法已成功应用于一个P I C 1 6 F 8 7 6 单片机应用系统实例之中
标签: 单片机
上传时间: 2014-01-19
上传用户:yzy6007
本书以奥地利贝加莱公司的B&R 2000系列可编程计算机控制器(PCC)为背景,系统地介绍了最新的可编程控制器的工作原理、指令系统、编程方法、网络通讯等,力求将这一领域的最新技术成果介绍给读者。
上传时间: 2016-01-25
上传用户:sevenbestfei