可编程节日彩灯

上传人:feng****ing 文档编号:81401652 上传时间:2022-04-27 格式:DOC 页数:9 大小:328.50KB
收藏 版权申诉 举报 下载
可编程节日彩灯_第1页
第1页 / 共9页
可编程节日彩灯_第2页
第2页 / 共9页
可编程节日彩灯_第3页
第3页 / 共9页
资源描述:

《可编程节日彩灯》由会员分享,可在线阅读,更多相关《可编程节日彩灯(9页珍藏版)》请在装配图网上搜索。

1、中国矿业大学徐海学院计算机系硬件课程设计报告设计题目:可编程节日彩灯号: *姓名:*号: * 女生名: *指导教师:* 成绩:2018年12月、设计任务及要求彩灯是日常生活中的一种装饰用品,尤其在节日期间,增加了几日气氛。它蕴 含着丰富的文化底蕴,被广泛地应用于各种商城。变换无穷的彩灯样式,给城市增 添了活力,吸引着人们的注意力,深受人们的喜爱。在日常生活中,人们将彩灯摆 放着各种图案,增添美感。应用系统的小型化,快速化,大量花,重轻量的方向发 展。科学技术更加贴近人们的生活,向着满足人们的需求方向发展。彩灯的闪烁有各种方式,如全亮去灭,交替闪烁,循环闪烁等,最常见的还是 交替闪烁。通过软件编

2、程的方式来实现彩灯的闪烁,可编程接口芯片 8255A 以及可编程 并行 I/O 接口芯片,实现彩灯的循环闪烁。在这个过程中,设计了彩灯的多种循环 闪烁,再每种方式中,用户可以控制彩灯的闪烁方式,并且用户可以任意选择,使 彩灯以设计的哪一种循环方式进行闪烁。以达到要求。二、需求分析同样一会亮一会灭的彩灯简单点路设计的彩灯已经不能满足人们的需求。所以 节日的彩灯的控制就显得尤为重要。通过对节日彩灯的控制,使其显示出绚丽的图 案,增添节日的气息。面向场合主要是酒店,庙会,节日等场合。三、人员与分工* 负责问题范围为“问题的提出” ,“需求分析”,“电路组成”。* 负责的范围为“流程图”及软件编程,还

3、有各部功能。四、总体设计方案4.1设备器材1)PC微机一台用于对程序的编译程序测试等,同时需要对实验设备进行控制,提供程序的 运行平台,并且手机和释放硬件信号,实现程序功能。2)微机原理实验箱一台这个设备能提供 8255,I/O 接口芯片和 LED 灯等。并且能个、通过接受 PC 机传来的信息,显示出相关的功能。以支持 LED 规则显示的实现。53663573483393210311130M229J328*1427M52616257241823*19222021H333aRESET3吕aq凶ii33Vcc旦耳列8255的管脚图A组控制组口位A A 8= PA? -PAop7 -Do数据总线缓冲

4、器组高位 A 口 4读/写控制逻辑B组控制电 组低位 B 口站B组B 口8位8255A内部结构方框图 PC3 -PG)PB? -PBo8255 的数据端口 A,B,C:8255 是一种可编程并行 I/O 接口芯片,它可以用于多种电路,如软盘接口电 路、控制接口电路以及 A/D 和 D/A 接口电路等。下面我们来了解一下 8255 的内部 结构,以便更好的利用它。8255由数据端口 A、B、C,A组和B组控制逻辑,数据总线缓冲器和读/写控制 逻辑组成。 A 口包含一个 8 位的数据锁存器 / 缓冲器,一个 8 位的数据输入锁存 器,因此它作输入输出时数据均能锁存。 B 口包含一个 8 位的数据输

5、出锁存器 /缓 冲器,一个 8 位的数据输入缓冲器。 C 口包含一个 8 位的数据输出锁存器 /缓冲 器,一个 8 位的数据输入缓冲器,无输入锁存功能。A组和B组控制逻辑用来接收送来的命令字,然后分别决定A组和B组的工作方式,或对C口的每一位执行置位/复位操作。数据总线缓冲器是一个双向的 8 位缓冲器,用作 8255A 和系统总线之间的接 口。通过这个缓冲器与之相连的 8位数据总线D7D0接收CPU送来的数据或命令 字。读/ 写控制逻辑电路用来管理所有的内部或外部数据信息、控制字或状态字的 传送过程,它接收从CPU勺地址总线和控制总线来的信号,并产生对 A组和B组控 制逻辑进行操作的控制信号。

6、当8255A用在8位数据总线的微处理器系统中时,端口选择信号输入端AA分别与地址总线的 AA 相连即可;而在 16 位数据总线的系统中,通常将地址总线的 AA连到8255A的AA端;若它的数据总线 D7D0连在CPU数据总线的低8位上, 则要用偶端口地址来寻址 8255A;而当D7D0接在数据总线的高8位上时,要用 奇地址口。8255的两类控制字8255 有两类控制字。一类控制字用于定义个端口的工作方式,称为方式选择 控制字;另一类控制字用于对 C 口的任一位进行置位或复位操作,称为置位控制 字。对 8255A 进行编程时,这两种控制字都被写入控制字寄存器中。但方式选择 控制字的 D7 位总是

7、 1,而置为复位控制字的 D7 位总是 0.8255A 正是利用这一位 来区分这两个写入同一端口的不同控制字的, D7 位也称为这两个控制字的标志 位。其中方式选择控制字有 3 种基本的工作方式,即方式 0基本输入输出方式, 方式 1 选通输入输出方式,方式2 双向总线 I/O 方式。通过用输出指令对8255A的控制字寄存器编程,写入设定工作方式的控制字,可以让3个数据口以不同的方式工作。其中,端口 A可工作于3种方式中的任一种;端口 B只能工作于 方式 0 和方式 1,而不能工作于方式 2;端口 C 常被分成两个 4 位的端口,除了用 作输入工作端口外,还能用来配合 A 口和 B 口工作,位

8、这两个端口的输入输出操 作提供联络信号。端口 C的数位常用作控制或答应信号,通过对 8255A的控制口写入置位/复位 控制字,可使端口 C的任意一个引脚的输出单独置1或置0,或者为答应式数据传送发出中断请求信后。在基于控制的应用中,经常希在其中一位撒谎功能产生一个TTL电平的控制信号,利用端口 样的信号,从而简化了编程。C的这个特点,只需要用简单的程序就能形成这+5+5PA7PA60 pc7 接 L00pa7接k055cs接iq设备的Y14.4实物连接PA0rlBV-4 時 0r戶设备4.3电路原理图4.5实验原理说明本实验是通过向逻辑电平开关传送16进制位的数据来控制LED灯的亮或者灭 的。

9、通过循环来使LED灯不停的改变状态,产生不同的效果五、软件功能说明在我们这次实验中,通过可编程序,利用 LED显示来实现模拟彩灯各种亮法al=10hPortc4N1.使LED灯从左往右依此亮灯再从右往左亮灯 循环闪烁2.使LED灯两边到中间,中间到3使LED灯两边到中间,中间到两边中间两个灯闪三下 厂4.使 LED灯全亮和全灭交替闪烁吉束六、主要模块流程图开始主流程图七、问题与解决方案1分析问题问题一:如何用开关控制彩灯的亮或者灭。问题二:彩灯的闪烁时间如何控制。问题三:如何改变彩灯闪烁的方式。2解决问题解决问题一:通过定义一个数据来对应其关闭状态。 解决问题二:通过定义一个周期来控制其闪烁的

10、时间。 解决问题三:通过传入不同的数据来控制闪烁方式。八、总结通过这次课程设计,我们对整个设计的原理都有了比较深刻的理论。在这个设计的 部分内容中,我们队8255的工作原理有了比以前更深刻的认识,通过利用各方面 的资源,也学到了很多书本之外的知识。这次的硬件课程设计,总共花了 3个星期的时间,我们2人一组,编程对我们来 说是个难点,总是出错,但最终在同学的帮助喜爱,程序总算没有出错误,现在设 计基本上算成功了,这个节日彩灯设计出来,还有点小激动,在这3个星期里,虽然碰到了各种困难,但最终还是克服了,而且收获也很大,不仅巩固了课堂上掌握 的不太牢知识,而且培养了我们团队的精神,锻炼了独立思考的能

11、力,以及面对困 难不退缩的勇气,为我们的以后的和生活打下了良好的基础。这次实验最大的就是对汇编的语言的了解,提到了汇编语言编程的能力,并对硬 件的芯片有了进一步的认识。参考文献:【1】微型计算机原理与接口技术【2】可编程逻辑器件的原理与应用【3】微机原理与接口技术实验教程中国科学技术大学出版社吴秀清 编著复旦大学出版社陈山编著大连理工大学出版社秦晓梅附录: data segme ntioportequ 00hio8255cequ ioport+28ahio8255bequ ioport+28bhio8255aequ ioport+288hportc1 db 80h,40h,20h,10h,08

12、h,04h,02h,01h 。 ,01h,02h,04h,08h,10h,20h,40h,80h 。从左往右依此 亮灯db 00h,00h,00h,00h,00h,00h,00h 。的状态数据db 0ffh 。结束标志portc2 db 80h,01h,40h,02h,20h,04h,10h,08h,08h,10h,04h,20h,02h,40h,01h,80h 。两边到中间中间 到两边db 00h,00h,00h,00h,00h,00h,00h 。的状态数据db 0ffh 。结束标志portc3 db 81h,42h,24h,18h,18h,24h,42h,81h,00h,18h,00h.1

13、8h,00h,18h,00h,18h 。两边到中间中间到 两边中间两个灯闪三下db 00h,00h,00h,00h,00h,00h,00h 。的状态数据db 0ffh 。结束标志portc4 db 0ffh,00h 。全亮和全灭交替闪烁db 01h 。状态标志data endscode segmentassume cs:code,ds:datastart: mov ax,datamov ds,axmov dx,io8255bmov al,90hout dx,alinputa : mov dx,io8255ain al,dxcmp al,00h jz inputa cmp al,80hjz re

14、_on1 cmp al,40hjzre_on2cmpal,20hjzre_on3cmpal,10hjz re_on4re_on1: mov dx,io8255c 。设置 8255 为 C 口输出on1:mov bx,0mov al,portc1bxcmp al,0ffhjz re_on1out dx,al 。点亮相应的灯de1:inc bxmov cx ,1000 。参数赋初值mov di,1000 。 di 赋初值 1000de0:dec di 。减 1 计数 jnz de0 。 di 不为 0 loop de1 push dx mov ah,06h mov dl,0ffh pop dx j

15、z on1re_on2: mov dx,io8255c 。设置 8255 为 C 口输出on2:mov bx,0mov al,portc2bxcmp al,0ffhjz re_on2out dx,al 。点亮相应的灯de2:inc bxmov cx,1000 。频率参数mov di,1000 。 di 赋初值 1000de3:dec di。减 1 计数jnz de3。 di 不为 0loop de2 push dxmov ah,06hmov dl,0ffhint 21h pop dx jz on2re_on3: mov dx,io8255c 。设置 8255 为 C 口输出mov bx,0cm

16、p al,0ffhjz re_on3 out dx,al。点亮相应的灯inc bx mov cx,9000。有 ,长延时de4:mov di,1000。 di 赋初值 1000de5:dec di。减 1 计数jnz de5。 di 不为 0loop de4 push dx mov ah,06h mov dl,0ffh int 21h pop dx jz on3 。没有 ,转到 onre_on4: mov dx,io8255c 。设置 8255 为 C 口输出 mov bx,0on4: mov al,portc4bx 。 ff,00 cmp al,01h jz re_on4out dx,al。点亮相应的灯inc bxmov cx,9000。有 ,长延时de7:mov di,1000。 di 赋初值 1000de6:dec di。减 1 计数jnz de6 loop de7 push dx mov ah,06h mov dl,0ffh int 21h pop dx。 di 不为 0jz on4exit:mov ah,4ch 。返回 int 21hcode endsend start

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!