




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目二:8位流水灯的单片机控制,项目目标 项目任务 项目分析 项目预备知识 项目实施 知识点链接,项目目标 通过单片机控制8个发光二极管的顺序点亮,学会使用MCS-51单片机芯片的P1口进行输出控制,进一步学习汇编程序的分析方法,并能熟练运用RR、RL等基本指令。,项目任务 要求应用AT89C51芯片,控制8个发光二极管的有序亮灭,呈现流水灯的效果。设计单片机控制电路并编程实现此功能。 项目分析 利用单片机P1口连接8个发光二极管,利用各引脚输出电位的变化,控制发光二极管的亮灭。P1口各引脚的电位变化可以通过指令来控制,为了清楚地分辨发光二极管的点亮和熄灭,在P1口输出信号由一种状态向另一种状态变化时,编写延时程序实现一定的时间间隔。,项目预备知识:循环移位指令,RL A 将累加器A中的数据依次左移一位 RR A 将累加器A中的数据依次右移一位 RLC A 将累加器A中的数据连同进位标志 位 CY一起依次 左移一位 RRC A 将累加器A中的数据连同进位标志位CY一起依次右移一位,RL A RR A RLC A RRC A,后两条指令,影响P标志和CY。,循环移位指令(4条),例:,若A=5CH,CY=1,执行RLC A后,,对RLC、RRC指令,在CY=0时 RLC相当于乘以2 RRC相当于除以2,结果:A=B9H,CY=0,P=1,CLR A 将累加器A中的数据清零 CPL A 将累加器A中的数据取反,项目预备知识:清0与取反指令,取反:CPL A ;/AA 例:若A=5CH,执行CPL A 结果:A=A3H,清0:CLR A ;0A,在项目一和项目二中,为了能清晰的分辨出蜂鸣器的鸣叫和发光二极管的变化,我们进行了延时程序的编写。CPU执行完延时程序耗费的时间即是我们所要延时的时间,通常可以利用时钟频率、指令周期结合寄存器中的数据进行延时时间的计算。 延时程序如下: DELAY:MOV R7,#10 ;1S D0:MOV R6,#100 ; 1S D1:MOV R5,#200 ; 1S D2:DJNZ R5,D2 ; 2S DJNZ R6,D1 ; 2S DJNZ R7,D0 ; 2S RET,项目预备知识:软件延时程序的时间计算,采用12MHz的晶振,则一个机器周期是1S,“MOV R7,#10”是一条单周期指令,执行1次需要1S(关于指令的执行周期可以查附录二)。“DJNZ R5,D2”是双机器周期指令,执行1次需要21=2S。计算第1层循环(D2 )的时间: 2002S=400S 第2层循环(D1 )的时间: (1+400+2)100=40300S 第3层循环(D0 )的时间: (1+40300+2)10=403 030S0.4S,(一)设计思路 在AT89C51单片机芯片及基本外围电路组成的单片机最小系统基础上,利用P1口的8个引脚控制8个发光二极管。由于发光二极管具有普通二极管的共性-单向导电性,因此只要在其两极间加上合适的正向电压,发光二极管即可点亮;将电压撤除或加反向电压,发光二极管即熄灭。根据发光二极管的特性,结合单片机P1口的输出信号,即可实现流水灯的控制效果。,项 目 实 施,一、硬件电路设计,(二)电路设计 1、P1口结构及流水灯电路,左图是P1口中某一位的位结构电路图。P1口为8位准双向口,每一位均可独立定义为输入或输出口,当作为输出口时,1写入锁存器,T2截止,内部上拉电阻将电位拉至“1“,此时该口输出为1;当0写入锁存器, ,T2导通,输出则为0。作为输入口时,锁存器置1,T2截止,此时该位既可以把外部电路拉成低电平,也可由内部上拉电阻拉成高电平,所以P1口称为准双向口。,P1.0P1.7: 准双向I/O口(内置了上拉电阻),2,1,D,Q,CK,/Q,读引脚=0,读锁存器=0,写锁存器,内部总线,Vcc,引脚P1.X,内部上拉电阻,(1)P1.0P1.7作为输出口【输出1】,2,1,D,Q,CK,/Q,读引脚=0,读锁存器=0,写锁存器,内部总线,Vcc,引脚P1.X,内部上拉电阻,输出数据 = 1 时,1,1,0,截止,=1,2,1,D,Q,CK,/Q,读引脚=0,读锁存器=0,写锁存器,内部总线,Vcc,引脚P1.X,内部上拉电阻,输出数据 = 0 时,0,0,1,=0,导通,(2)P1.0P1.7作为输出口【输出0】,2,1,D,Q,CK,/Q,读引脚 =1,读锁存器=0,写锁存器,内部总线,Vcc,引脚P1.X,内部上拉电阻,输入数据时,要先对其写“1”,1,1,0,截止,(3)P1.0P1.7作为输入口,发光二极管的连接方法:若将它们的阴极连接在一起,阳极信号受控制,即构成共阴极接法,如图a所示;若将它们的阳极连接在一起,阴极信号受控制,则构成共阳极接法,如图b所示。由于P1口引脚输出高电位时电压大约是5V,为保证发光二极管的可靠工作,必须在发光二极管和单片机输出引脚间连接一只限流电阻。 本项目选用硅型普通发光二极管,限流电阻取220。,P1口控制流水灯(8个发光二极管)电路,综合以上的分析,得到下图所示电路原理图。,(三)材料表 从原理图可以得到实现本项目所需的元器件。元器件的选择应该合理,以满足功能要求为原则,否则会造成资源的浪费。,二、 控制程序的编写 (一)绘制程序流程图 本控制使用简单程序设计中的顺序结构形式实现,程序结构流程图如下图。,(二)编制汇编源程序,2、程序执行过程,ORG 0000H LJMP MAIN2 ORG 0200H MAIN2:MOV P1,#0FEH; L0亮 LCALL DELAY MOV P1,#0FDH; L1亮 LCALL DELAY MOV P1,#0FBH ; L2亮 LCALL DELAY MOV P1,#0F7H ; L3亮 LCALL DELAY MOV P1,#0EFH ; L4亮 LCALL DELAY MOV P1,#0DFH ; L5亮 LCALL DELAY,MOV P1,#0BFH ; L6亮 LCALL DELAY MOV P1,#7FH ; L7亮 LCALL DELAY SJMP $;重复执行本条指令 ORG 0F00H DELAY: MOV R7,#10 D0: MOV R6,#100 D1: MOV R5,#200 D2: DJNZ R5,D2 DJNZ R6,D1 DJNZ R7,D0 RET ;子程序返回指令 END ;程序结束标记,在本项目中,利用P1口实现8个发光二极管的流水灯控制,主要利用了送数指令,将要显示的现象对应的数据通过P1口送出。在编写控制程序时,应首先将每个对应现象分析清楚,比如:要让L3亮,其余发光二极管灭,则P1口的数据应为11110111B;要让L7亮,则P1口的数据应为01111111B。然后找到能实现此操作的指令即可。下面使用我们在本项目中学习的移位指令编写程序如下: ORG 0000H ORG 0F00H LJMP MAIN2 DELAY:MOV R7 ,#10 ORG 0200H D0:MOV R6 ,#100 MAIN2:MOV A,#0FEH D1:MOV R5, #200 XH:MOV P1,A D2:DJNZ R5,D2 LCALL DELAY DJNZ R6,D1 RL A DJNZ R7,D0 LJMP XH RET END,知 识 点 链 接,分析后可知,本段程序与项目中给出的参考程序功能相似,但是指令数量较少,所占存储器空间较小。根据发光二极管的点亮次序,通过分析每次给P1口所送数据,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年江苏省盐城市第二小学数学三上期末质量检测模拟试题含解析
- 七年级下册各单元综合性学习课件
- 八年级生物上《细菌》-课件
- 自考行政管理的行业前景试题及答案
- 2025年护士专业定位试题及答案挖掘
- 执业护士备考中的知识点掌握试题及答案
- 执业药师考试模拟试题及答案解析
- 中国古典文学对管理的启示试题及答案
- 行政管理专业学生的职业发展规划试题及答案
- 执业护士执业技能要求试题及答案2025
- 演出服装定制合同协议
- 计划生育选择试题及答案
- 法律文化-形考作业3-国开(ZJ)-参考资料
- 家校共育“心”模式:青少年心理健康教育家长会
- 形势与政策(贵州财经大学)知到智慧树章节答案
- 从创意到创业智慧树知到期末考试答案章节答案2024年湖南师范大学
- DL-T 1476-2023 电力安全工器具预防性试验规程
- 更换岩棉彩钢板施工方案
- 老年人的体重控制
- 北京中考英语完形填空专项练习及答案
- 小黄瓜种植观察日记(课堂PPT)
评论
0/150
提交评论