您好,欢迎来到华拓科技网。
搜索
您的当前位置:首页stc 单片机闪烁灯、流水灯查表法的实现

stc 单片机闪烁灯、流水灯查表法的实现

来源:华拓科技网


Stc 单片机闪烁灯、流水灯查表法的实现

闪烁灯

1.实验任务 如电路原理图所示:在P2.0端口上接一个发光二极管L1,使L1在不停地一

亮一灭,一亮一灭的时间间隔为0.2秒。

21032 32

21032 32

3.系统板上硬件连线 把“单片机最小系统”中的P2.0端口用导线连接到发光二极管L1

端口上。

1.实验任务 利用取表的方法,使端口P2做单一灯的变化:左移2次,右移2次,闪烁2

次(延时的时间0.2秒)

3.硬件实现 把“单片机最小系统”P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应

着L8。

5.

C语言源程序

#include

unsigned char code table[]={0xfe,0xfd,0xfb,0xf7,

0xef,0xdf,0xbf,0x7f,

0xfe,0xfd,0xfb,0xf7,

0xef,0xdf,0xbf,0x7f,

0x7f,0xbf,0xdf,0xef,

21032 32

0xf7,0xfb,0xfd,0xfe,

0x7f,0xbf,0xdf,0xef,

0xf7,0xfb,0xfd,0xfe,

21032 32

0x00,0xff,0x00,0xff,

0x01};

unsigned char i;

void delay(void)

{

unsigned char m,n,s;

for(m=20;m>0;m--)

for(n=20;n>0;n--)

for(s=248;s>0;s--);

}

void main(void)

{

while(1)

21032 32

{

if(table!=0x01) { P1=table; i++; delay(); } else { i=0;

} } } 流水灯程序c

#include

sbit L1=P2^0;

sbit l2=P2^1;

sbit l3=P2^2;

sbit l4=P2^3;

sbit l5=P2^4;

sbit l6=P2^5;

sbit l7=P2^6;

sbit l8=P2^7;

21032 32

void delay02s(void) //延时0.2秒子程序

{

unsigned char i,j,k;

for(i=20;i>0;i--)

for(j=20;j>0;j--)

for(k=150;k>0;k--);

}

void main(void)

{

while(1)

{

L1=0;

delay02s();

21032 32

L1=1;

l2=0;

delay02s();

l2=1;

l3=0;

delay02s();

l3=1;

l4=0;

delay02s();

l4=1;

l5=0;

delay02s();

l5=1;

21032 32

l6=0;

delay02s();

l6=1;

l7=0;

delay02s();

l7=1;

l8=0;

delay02s();

l8=1;

}

}

21032 32

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo6.cn 版权所有 赣ICP备2024042791号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务