流水灯实验报告
位置: 首页 >研讨体会 > 文章内容

流水灯实验报告

2020-08-29 07:20:49 投稿作者: 点击:

  单片机流水灯试验

 一、实验目得: 1、进一步熟悉 Keil C51 集成开发环境调试功能得使用 2、学会自己编写程序,进行编译、仿真调试 3、学会使用单片机得 P0 口作为I/O 口去控制外围电路,实现 LED 灯以固定得频率进行闪烁、 二、实验设备: 1、PC 机 2、SW-51PROC 单片机综合实验平台 三、实验内容: 1、编写一段程序,用单片机P0 口得 8 个输出去控制 8 个 LED 灯,实现如下功能: 先使 8 个LED 灯轮流点亮,从左向右移动,时间间隔 0、5s。以上过程循环实现、 四、实验步骤: 1、实验原理: 单片机流水得实质就是单片机各引脚在规定得时间逐个上电,使 LED 灯能逐个亮起来但过了该引脚通电得时间后便灭灯得过程,实验中使用了单片机得P2端口,对 8 个LED灯进行控制,要实现逐个亮灯即将 P2得各端口逐一置零,中间使用时间间隔隔开各灯得亮灭。使用 rl 或 rr

 a 实现位得转换。

 A 寄存器得位经过 rr a之后转换如下所示: A0 A1 A2 A3 A4 A5 A6 A7 然后将 A 寄存器转换一次便送给 P2 即 MOV P2,A便将转换后得数送到了 P2口,不断循环下去,便实现了逐位置一操作、 2、实验电路图

 a11a223a34a4b1b2b3b45678GND0a11a223a34a4P2.4P2.5P2.6P2.75678a11a223a34a4P2.0P2.1P2.2P2.35678Vcc10+5v80C51 3通过仿真实验正确性

 代码如下 :ORG 0

 MOV A,#00000001B LOOP:MOV P2,A RL A ACALL DELAY SJMP LOOP DELAY:MOV R1,#255 DEL2:MOV R2,#250 DEL1:DJNZ R2,DEL1

  DJNZ R1,DEL2 RET End ORG 0000H LJMP MAIN 4、实验程序 :

 ORG 0050H MAIN:MOV R0,#14

 MOV DPTR,#TABLE L0:

 MOV A,#0 L1:

 MOVC A,DPTR+A

 MOV P0,A

 ACALL DELAY1

  INC A41 DJNZ R0,L1 SJMP L0

 DELAY1:

  MOV R1,#250 LOOP1:

  MOV R2,#250 LOOP2:

  NOP

  NOP

  NOP

  NOP

  NOP

  DJNZ

 2POOL,0Rﻩ

 DJNZ R1,LOOP1

  RET TABLE: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH END 5、实验结果:

  五、实验总结 这次试验我通过Proteus仿真实现对流水灯功能得实现。受益匪浅,对 80c51得功能与结构有了深层次得了解,我深刻得明白,要想完全了解 c51 还有一定距离,但我会一如既往得同困难作斗争。在实验中,我遇到了不少困难,比如不知道怎么将程序写进单片机中,写好程序得却总出错,不知道什么原因,原来没有生成 hex文件。这些错误令我明白以后在试验中要步步细心,避免出错、

猜你喜欢
推荐图文
毕业设计
  • 办公表格
    办公表格

    打开文本图片集从北京飞到秘鲁首都利马,到达地球另一端充满隔世文...

  • 谈判技巧
    谈判技巧

    打开文本图片集这位出现让大家感到很惊讶……但当你好好想想大妖精...