不可控霹雳灯

2025-10-06 23:58:56

1、首先用protues画出原理图

不可控霹雳灯

2、用keil编写程序代码

3、/*------------------------------------------------------------------------

名称:不可控霹雳灯

编写:陈植锋

日期:2013-11-1

内容:通过查表操作分别赋值给P0口和P1口,让不同时候16个LED灯显示不同结果。

-------------------------------------------------------------------------*/

#include<reg51.h>

#define uint unsigned int

#define uchar unsigned char

void delayms(uint);

uchar code P0_led[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0x55,0xaa,0xf0,0x0f,

0xfc,0xf3,0xcf,0x3f,0x00,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //P0口LED灯显示表

uchar code P1_led[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xaa,0x55,0x0f,0xf0,

0x3f,0xcf,0xf3,0xfc,0x00,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //P1口LED灯显示表

main()

{

uchar i;

delayms(200);

P0=0x00; //检测LED是否有损坏

P1=0x00;

delayms(300);

P0=0xff;

P1=0xff;

delayms(300);

while(1)

{

for(i=0;i<26;i++)

{

delayms(500);

P0=P0_led[i];

P1=P1_led[i]; }

}

}

void delayms(uint xms) //延时

{

uint i,j;

for(i=0;i<xms;i++)

for(j=0;j<120;j++);

}

4、用protues仿真

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢