好文档 - 专业文书写作范文服务资料分享网站

LED小灯实验报告

天下 分享 时间: 加入收藏 我要投稿 点赞

mov p0,#0x00

clr p1.3 ;关闭点阵

setb p1.2 ;使能控制led小灯的锁存器 clr c mov r0,#01h ;用于实现小灯移动的一个变量 chongzhuang: mov r3,#14 ;r3用于判断小灯是否已移到最边缘的那一个 xunhuan:mov a,r0

cpl a ;小灯是低电平点亮,所以取反后就只点亮一个 mov p0,a acall yanshi mov a,r3

subb a,#8 ;判断是否移到了最边缘的那一个小灯 jnc left ;

否,则继续该方向移动。是,则转移至left进行反方向移动 mov a,r0 rr a mov r0,a ;对r0进行不带进位循环右移,即实现小灯的移动 ajmp again left: mov a,r0

rl a

mov r0,a again: dec r3 mov a,r3 clr c

jz chongzhuang ;判断r3是否为零,是,则重新装数 ajmp xunhuan ;反复循环 yanshi: ;非精确延时子程序 mov r4,#5 ys0: mov r2,#0ffh ys1: mov r1,#0ffh ys2: djnz r1,ys2

djnz r2,ys1 djnz r4,ys0 ret end篇五:led灯实验报告 mcs-51单片机接口技术实验 适用:电气类专业本科学生 实验报告

实验一 熟悉proteus仿真模拟器,led花样表演 一、实验目的 掌握以下方法:

1.在proteus的环境下,设计硬件原理图; 2.在keilc集成环境下设计c51语言程序; 2.在proteus的环境下,将硬件原理图与软件联接仿真运行。 二、实验环境

1.个人微机,windows操作系统 2.proteus仿真模拟器 3.keilc编程 三、实验题目 基本题:使用8051的并口带动8个led发光二极管显示一种花样表演。 提高题:使用

一个键切换实现3种以上花样表演。 四、实验类型:

学习、模仿与简单设计型。 五、实验步骤:

0、进入isis,先选择需要的元件,然后设计电原理图,保存文件; 1、在keilc软件集成环境下编写源程序,编译工程文件; 2、将所设计的硬件原理图与目标代码程序相联接; 4、按play键,仿真运行程序。

附,可能用到的元件名称:

cpu:at89c51或任一种mcs-51家族cpu; 晶振:crystal;

电容器:capacitors,选22pf 电解电容:cap-elec或genelect10u16v 复位电阻:minres10k 限流电阻:minres330r 按键:button

led:led-blue/red/yellow或diode-led (一)接线图如下: (二).基础花样 (四)程序流程图 (五)c程序

#include <reg52.h> #define uint unsigned int #define uchar unsigned char const tab1[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f, /*正向流水灯*/ 0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,};/*反向流水灯*/ const tab2[]={0xff,0x00,0xff,0x00,0xff,0x00,}; void delay() {

uint i,j;

for(i=0;i<256;i++) for(j=0;j<256;j++) {;} }

void int1() interrupt 0 {

uchar i;

for (i=0;i<6;i++) { p0=tab2[i]; delay(); } }

void main(void) {

ex0=1; it0=1;

ea=1; while(1) {

uchar x;

for(x=0;x<15;x++) { p0=tab1[x];

delay();} }

} (六)总结 本次实验让我能够熟练的掌握和使用keil和proteus等软件进行编程和仿真,也对流水灯的原理和硬件结构有了更加深刻的认识。只会基础花样不懂变通。

LED小灯实验报告

movp0,#0x00clrp1.3;关闭点阵setbp1.2
推荐度:
点击下载文档文档为doc格式
188hh1iqrz4mu7425ego
领取福利

微信扫码领取福利

微信扫码分享