13页mtc89c52程序LED中断定时Word文档下载推荐.docx

上传人:b****6 文档编号:15919901 上传时间:2022-11-17 格式:DOCX 页数:32 大小:20.76KB
下载 相关 举报
13页mtc89c52程序LED中断定时Word文档下载推荐.docx_第1页
第1页 / 共32页
13页mtc89c52程序LED中断定时Word文档下载推荐.docx_第2页
第2页 / 共32页
13页mtc89c52程序LED中断定时Word文档下载推荐.docx_第3页
第3页 / 共32页
13页mtc89c52程序LED中断定时Word文档下载推荐.docx_第4页
第4页 / 共32页
13页mtc89c52程序LED中断定时Word文档下载推荐.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

13页mtc89c52程序LED中断定时Word文档下载推荐.docx

《13页mtc89c52程序LED中断定时Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《13页mtc89c52程序LED中断定时Word文档下载推荐.docx(32页珍藏版)》请在冰豆网上搜索。

13页mtc89c52程序LED中断定时Word文档下载推荐.docx

//程序停止在这里,在后面会讲到为什么这样写。

}

②//用总线操作点亮第一个发光管.

P1=0xfe;

//将单片机P1口的8个口由高到低分别赋值为11111110

(二),点亮最后一个发光二级管

①//用位操作点亮最后一个发光管.

sbitled8=P1^7;

led8=0;

//将单片机P1.7口清零

②//用总线操作点亮最后一个发光管.

P1=0x7f;

//将单片机P1口的8个口由高到低分别赋值为01111111

(三),二极1,3,5,7管点亮

①//用位操作点亮1,3,5,7发光管.

sbitled3=P1^2;

sbitled5=P1^4;

sbitled7=P1^6;

led3=0;

//将单片机P1.2口清零

led5=0;

//将单片机P1.4口清零

led7=0;

//将单片机P1.6口清零

②//用总线操作点亮1,3,5,7发光管.

P1=0xaa;

//将单片机P1口的8个口由高到低分别赋值为10101010

(四),点亮2,4,5,6二极管

①/用位操作点亮2,4,5,6发光管.

sbitled2=P1^1;

sbitled4=P1^3;

sbitled6=P1^5;

led2=0;

//将单片机P1.1口清零

led4=0;

//将单片机P1.3口清零

led6=0;

//将单片机P1.5口清零

②//用总线操作点亮2,4,5,6发光管.

P1=0xc5;

//将单片机P1口的8个口由高到低分别赋值为11000101

(五),第一个发光管闪烁

①//尝试让第一个发光管闪烁.(程序看不懂没关系,后面章节会有详细讲解)

unsignedinti;

//定义一个int型变量

while

(1)

{

i=50000;

//变量赋初值为50000

led1=0;

//点亮灯

while(i--);

//延时

led1=1;

//熄灭灯

}

(六),流水灯程序

//尝试写出流水灯程序(程序看不懂没关系,后面章节会有详细讲解)

unsignedintI;

//变量赋初值为50000

P1=0xfe;

//点亮第一个灯

//延时

P1=0xfd;

//点亮第二个灯

P1=0xfb;

//点亮第三个灯

P1=0xf7;

//点亮第四个灯

P1=0xef;

//点亮第五个灯

P1=0xdf;

//点亮第六个灯

P1=0xbf;

//点亮第七个灯

P1=0x7f;

//点亮第八个灯

//延时

(七),第一个发光管以间隔200ms闪烁

//第一个发光管以间隔200ms闪烁

#defineuintunsignedint//宏定义

#defineucharunsignedchar//宏定义

voiddelay(uintz)//延时函数,z的取值为这个函数的延时ms数,如delay(200);

大约延时200ms.

{//delay(500);

大约延时500ms.

uintx,y;

for(x=z;

x>

0;

x--)

for(y=110;

y>

y--);

while

(1)//大循环

//点亮小灯

delay(200);

//延时200毫秒

//熄灭小灯

}

(八),8个发光管由上至下间隔1s流动,其中每个管亮500ms,灭500ms,亮时蜂鸣器响,灭时关闭蜂鸣器,一直重复下去。

#include<

intrins.h>

//包含有左右循环移位子函数的库

sbitbeep=P2^3;

uchara;

a=0xfe;

P1=a;

beep=0;

//开启蜂鸣器

delay(500);

//延时500毫秒

P1=0xff;

//熄灭小灯

beep=1;

//关闭蜂鸣器

a=_crol_(a,1);

//将a变量循环左移一位

(九),8个发光管来回流动,每个管亮100ms,流动时让蜂鸣器发出"

滴滴"

声。

uchara,i;

a=0xfe;

//赋初值

for(i=0;

i<

8;

i++)//左移

{

P1=a;

beep=0;

delay(50);

//延时50毫秒

beep=1;

//再延时50毫秒

a=_crol_(a,1);

//将a变量循环左移一位

}

a=0x7f;

i++)//右移

a=_cror_(a,1);

//将a变量循环右移一位

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1