




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、利用单片计算机实现彩灯控制 利用单片计算机实现彩灯控制 1设计要求 利用彩灯的各种闪烁的变换作为装饰在生活中处处都能够看到。彩灯的闪烁变换可以用简易的数字电路等来实现,在学习了单片计算机之后试着利用单片机的功能来控制其闪烁变换。 2硬件设计方案 电路元器件:面包板; 普通的发光二极管,导通电压0.5V; 芯片插座; 晶振;
2、;时钟电容:22pF*2; 限流电阻:220*8 限流电阻:1K*1; 复位电路电容:30uF; 点触式开关:1; 2.1 二极管发光的实现 由于单片机P1.口的输出电流仅有十几到几十uF,这样小的电流不能使发光二极管发光,于是采用了“灌电流”的方法,如图1所示 图1 二极管发光的实现 选用的外加电源Vcc=5V,根据二极管的导通电压是0.5V的性质,可以求的限流电阻的阻值,在实验中选用220的电阻即可。 2.2
3、时钟电路的组成 在实验用采用了12M的晶振,与之配合使用的是22pF的陶瓷电容。如图2所示 图2 时钟电路的组成 2.3 复位电路的设计 所谓复位,就是在单片机MPU的RESET引脚上出现3-5个时钟周期的高电平。当MPU被复位以后,其内部的寄存器的各项数值将会被恢复成硬件电路规定的初值。 复位有上电复位和自动复位两种,根据实际用途的需要,在本实验中采用的上电复位,如图3所示 图3 复位电路的组成 2.4 硬件电路其他部分的安排 考虑到本实验的特点,MPU的EA/VPP引脚,即程序存储器选择信号端和编程电源输入端不能悬空,应长置为“1”,这点在芯片插座引脚和外电路的连接上可以体现出来。 2.5
4、 整体的电路图 综上,可以得到总体上的电路原理图。 3软件实现 人眼能看到发光二极管的闪烁是因为其闪烁的时间间隔大于一个特定的值,低于这个值我们将无法看到其闪烁变换,为此,确定二极管的闪烁间隔为0.2s 。这种延时的功能可以用调用延时子程序或者中段服务程序来实现。以下讨论两种方法及其实现: 3.1延时子程序实现延时 单片计算机运行每条程序将占用1个、2个或4个机器周期。为此,可以用一定数量的程序的执行来实现延时。 总延时 ,其中N为指令总数,t为一个周期的时间。 以下是延时程序的代码 ORG 0000H AJMP START ORG 0040H START:MOV P1,#0FFH ;灯全灭&
5、#160; LCALL DELAY ;调用延时子程序 MOV P1,#000H ;灯全亮 LCALL DELAY MOV P1,#0FFH ;等全灭 LCALL DELAY MOV P1,#07E
6、H ;第8、第1灯亮 LCALL DELAY MOV P1,#03CH ;第7、8,第1、2灯亮 DALAY:MOV R5,#20 ;延时子程序,延时0.2s D1:MOV R6,#20 D2:MOV R7,#248 DJNZ R7,$ DJNZ R6,D2
7、0; DJNZ R5,D1 RET END 3.2中断实现延时的程序 ORG 0000H AJMP MAIN ORG 000BH AJMP INT0 ORG 0030H MAIN:MOV P1,#03CH ;
8、第7、8和第1、2灯亮 MOV R7,#00H MOV TMOD,#010H MOV TL0,#0E0H MOV TH0,#0B1H SETB EA SETB ET0 SETB TR0 HERE:SJMP HERE INT0:PUSH ACC
9、 MOV TL0,#0E0H MOV TH0,#0B1H INC R7 CJNZ R7,#26,PEND MOV R7,#00H MOV P1,#0C3H ;第3、4、5,6灯亮 POP ACC PEND:RETI END
10、 4程序的调试 将写好的程序在伟福编译器中进行编译,得到.BIN文件,固化到单片机的芯片中,将芯片插到前面已经组装完毕的硬件电路的芯片插座上,这样就组成了一个完整的彩灯控制电路,当接通电源之后理论上就应该看到彩灯按照预定的方式闪烁。 4.1延时子程序的运行 该程序的运行按照预定的程序运行,每隔0.2s可以看到彩灯闪烁一次,并且8个发光二极管的亮和灭严格按照程序的要求进行; 4.2中断程序实现的延时 由于程序采用了中断方式延时,所以彩灯闪烁的改变只能由中断服务子程序中设定的程序来实现对其的改变,在此程序中,在MAIN主程序中已经设定了彩灯初始时有第1、2和第7、8灯亮,而在中断服务子程序中有第3
11、、4、5,6灯亮,从而实现了“闪烁”,但是这种中断方式的缺点在于闪烁的模式太过于单一,只能进行这两种方式的循环改变。在实际中难以满足人们多样化的需求,这是一个需要解决的问题。 4.3中断程序实现的延时方法的改进 为此,我对以上的程序进行了一点改动,综合子程序延时和中断延时两程序写了下面这些代码: ORG 0000H AJMP MAIN0 ;第一种亮的模式 ORG 0
12、00BH AJMP INT0 AJMP MAIN1 ;第二种亮的模式 ORG 000BH AJMP INT0 AJMP MAIN2 ;第三种亮的模式 ORG 000BH AJMP INT
13、0 ORG 0030H MAIN0:MOV P1,#00FH ;第一种亮的模式:5、6、7,8灯亮 AJMP MAIN MAIN1:MOV P1,#0F0H ;第二种亮的模式:1、2、3,4灯亮 AJMP MAIN MAIN2:MOV P1,#000H ;第三种亮的模式:全亮
14、AJMP MAIN MAIN:MOV R7,#00H MOV TMOD,#010H MOV TL0,#0E0H MOV TH0,#0B1H SETB EA SETB ET0 SETB TR0 HERE:SJMP HERE INT0:PUSH ACC MOV TL0,#0E0H&
15、#160; MOV TH0,#0B1H INC R7 CJNZ R7,#26,PEND MOV R7,#00H MOV P1,#0FFH ;灯全灭 POP ACC PEND:RETI END 在这段程序中,中断服务程序执行的是“灯全灭”这一动作。灯的闪烁模式有三种,由对P1口送指定的立即数来实现。 可以看到,等待计数器计数到FFFF需要一段时间,这也就是灯闪烁的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中国喷漆圆桌市场调查研究报告
- 2025年中国压缩空气填充泵市场调查研究报告
- 2025年中国出油过滤器市场调查研究报告
- 酒店财务测试题及答案
- 2025新式委托合同范本
- 2025设备租赁合同(CIF条款)
- 2025非住宅用地使用权转让合同协议书样本
- 《离子色谱法》课件
- 2025四川省买卖赊账合同范本
- 2025年毛球修剪器项目发展计划
- 贵州贵州页岩气勘探开发有限责任公司招聘笔试真题2023
- 2021年河北高中学业水平合格性考试历史试题真题(含答案)
- 【工程法规】王欣 教材精讲班课件 36-第6章-6.2-施工安全生产许可证制度(一)
- 2024年中小学生航天知识竞赛试题题库及答案
- 预算绩效评价管理机构入围投标文件(技术方案)
- 期末完形填空试题人教PEP版英语五年级上册(无答案)
- 2024中考语文备考重点难点复习:小说阅读(七大考点七种技巧)
- 保密工作 人人有责
- 2024-2030年中国捡石机行业市场发展趋势与前景展望战略分析报告
- 夜场女孩合同协议书
- GA 2108-2023警鞋礼服男皮鞋
评论
0/150
提交评论