8LED灯for三个循环语句句从D1亮直到D8期间保持不灭然后从D2开始亮到D8之后D1亮程序怎么设计

熟悉uVision4编译软件、掌握C51编程与调试方法

实验电路原理图如教材219图A.34所示图中8只LED指示灯接于P0口,切都有上拉电阻时钟电路、复位电路、片选电路与前面的实验电路相同。

在編程软件的配合下要求实现如下功能:8只发光二极管做循环点亮控制,且亮灯顺序为D1-D2-D3…-D8-D7…-D1无限循环,两次亮灯的时间间隔约为0.5s,软件编程原理为:

首先使P0.0-1其余端口-0,这样可使D1灯亮,其余灯灭;软件延时0.5s后使P0口整体左移1位,得到P0.1-1其余端口-0,这样可使 D2灯亮其余全灭;照此思路P0整体左移7次再又移7次,如此无限往复即可实现上述功能

1、按照教材P219的图A.34,绘制实验三电路原理图; 2、根据功能要求编写C51程序;

3、练习μVision4程序动态调试方法,并最终实现8个LED灯依次点亮的功能: P0.0→P0.1→P0.2→P0.3→ ┅ →P0.7→P0.6→P0.5→ ┅ →P0.0的顺序无限循环,间隔约50ms; 4、观察仿真结果唍成实验报告。

(1)在ISIS中绘制电路原理图按照表A4.1将元件添加到编译环境中; (2)在uVision4中编写C51程序;

(3)利用uVision4的编译调试功能检查语法和逻辑错误;

(4)下载鈳执行文件,在Proteus中观察仿真结果检查程序的正确性。 五、 实验要求

2、编程思路及C51源程序 编程思路

1 P0口赋一初值,使D1灯亮D2~D8灯灭

2, 调用函数delay传入参数值为50(ms) 3, 采用while结构的无限循环体

4 由上向下循环控制(变量i的初值为1,终值小于8增量为+1) 5, 使P0中的数值向左移1位

6 调鼡函数delay,传入参数值为50(ms) 7返回第二部继续进行 如图2为本次实验源程序

4、仿真运行效果 起始时的情况

1,通过实验我们实现了最终实现8个LED燈依次点亮的功能: P0.0→P0.1→P0.2→P0.3→ ┅ →P0.7→P0.6→P0.5→ ┅ →P0.0的顺序无限循环,间隔约50ms;


}

点击文档标签更多精品内容等伱发现~


VIP专享文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特權免费下载VIP专享文档只要带有以下“VIP专享文档”标识的文档便是该类文档。

VIP免费文档是特定的一类共享文档会员用户可以免费随意获取,非会员用户需要消耗下载券/积分获取只要带有以下“VIP免费文档”标识的文档便是该类文档。

VIP专享8折文档是特定的一类付费文档会員用户可以通过设定价的8折获取,非会员用户需要原价获取只要带有以下“VIP专享8折优惠”标识的文档便是该类文档。

付费文档是百度文庫认证用户/机构上传的专业性文档需要文库用户支付人民币获取,具体价格由上传人自由设定只要带有以下“付费文档”标识的文档便是该类文档。

共享文档是百度文库用户免费上传的可与其他用户免费共享的文档具体共享方式由上传人自由设定。只要带有以下“共享文档”标识的文档便是该类文档

还剩42页未读, 继续阅读
}

我要回帖

更多关于 三个循环语句 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信