?? test.c
字號(hào):
# include <reg51.h>
# define led P1
# define Ton 40 //基準(zhǔn)脈寬0.04ms
# define true 1
code unsigned char stop[3] _at_ 0x3B; //Mon51用,絕對(duì)地址引用
unsigned char LEDflag = 0; //全局變量,最大255,保存T0中斷次數(shù)
static unsigned char ledon[8] = {0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void timer_init() //定時(shí)器初始化
{
TMOD = 0x02; //T0 方式2,8位自動(dòng)載入
TH0 = 256 - Ton; //T0初始值
TL0 = 256 - Ton; //重載值
TR0 = true; //啟動(dòng)T0
ET0 = true; //開(kāi)T0,T1中斷
EA = true; //全局中斷允許
}
void time0_int() interrupt 1 using 3 //T0中斷函數(shù),中斷1,使用工作組3
{
LEDflag++; //修改LEDflag
}
led_show4()
{
unsigned char i = 0,j = 0; // i初始化
for(j = 0;j<=7;j++)
{
i = 0; // i初始化
while(i!=255) // 由暗變亮
{
if(LEDflag == 0) // 點(diǎn)亮
{
led = ledon[j];
}
if(LEDflag == i) // 熄滅
{
led = 0xff;
}
if(LEDflag == 255) //修改變量
{
i++;
}
}
}
for(j=7;j>=0;j--)
{
i = 0; // i初始化
while(i!=255) // 由亮變暗
{
if(LEDflag == 0) // 熄滅
{
led = 0xff;
}
if(LEDflag == i) // 點(diǎn)亮
{
led = ledon[j];
}
if(LEDflag == 255) //修改變量
{
i++;
}
}
}
}
void main()
{
timer_init();
while(1)
{
led_show4();
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -