怎么用c语言中的数组控制8个灯中的4个一起亮 - 爱问答

(爱问答)

怎么用c语言中的数组控制8个灯中的4个一起亮

#include <reg52.h>

unsigned char code a[]={0x7f,0xdf,0xf7,0xfd};  

unsigned char code b[]={0xbf,0xef,0xfb,0xfe}; 

unsigned char code LED[]={a,b};


unsigned char data i=0;

unsigned char data count=0;          //50ms计数器

void system_init();

void main()

{

system_init();                            // 系统初始化

while(1)

{

                                                 //空循环,主程序在等待中断的发生。

}

}

void system_init()

{

TMOD=0x01;

TH0=(65536-50000)>>8;         //取高8位的值。

TL0=(65536-50000);                 //编译器自动取低8位的值。

 

ET0=1;                                      //开定时器0中断。

EA=1;                                       //开总中断

 

TR0=1;                                     //开定时器0

 

P1=LED[0];                              //一开始第1个状态就开始执行。

}

 

void Timer_isr(void) interrupt 1

{

TH0=(65536-50000)>>8;     //取高8位的值。

TL0=(65536-50000);            //编译器自动取低8位的值。

 

count++;

    if(count==10)                  //计满10次,即10×50MS=0.5S

{

count=0;                              //计数器清0,准备下一次计数。

 

i++;                                     //新的状态

if(i>1) i=0;                           //如果状态编号为2即过界了

 

P1=LED[i];                           //把新的状态送给P1显示。

}

}

怎么灯不能交替一起亮

//假设晶振12MHZ,P1控制LED低电平亮
#include "reg51.h"
unsigned int YSJS=0;
unsigned int P1BUF=0X03;
void main(void)
{
TMOD |= 0X10; //定时器1工作于方式1,16位定时器
TH1 = 0XFF; //定时器1定时时间=500uS
TL1 = 0X06;
ET1 = 1; //使能定时器1中断
EA =1; //开总中断
P1 = P1BUF;
while(1)
{
}
}
void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组
{
TH1 = 0XFF; //定时器1定时时间=500us
TL1 = 0X06;
YSJS++;
if(YSJS==2000) //500uS*2000=1000000us=1s
{
P1 = P1BUF;
YSJS = 0
P1BUF = P1BUF<<2;
IF(P1BUF==0)P1BUF=0X03;
}
}

相关标签:控制c语言

下一篇:什么是5G时代?5G、6G、7G、10G发展到NG?

上一篇:三种循环语句的数据流程图如何执行?

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?