亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標(biāo)題:
單片機(jī)數(shù)碼管遞減計(jì)數(shù)及流水燈程序
[打印本頁]
作者:
大一王
時(shí)間:
2021-9-8 15:55
標(biāo)題:
單片機(jī)數(shù)碼管遞減計(jì)數(shù)及流水燈程序
包含Proteus仿真圖和源代碼
單片機(jī)源程序如下:
#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uint count0, count1, count2, flag, flag1; //三個(gè)定時(shí)時(shí)間 遞減計(jì)時(shí) 流水燈計(jì)時(shí) 暫停計(jì)時(shí)
uint inx1, inx2, inx3, inx4, inx5, inx6, temp; //六根數(shù)碼管的顯示
uchar flowlight;
void delay(uint num); //延時(shí)函數(shù)
void display(uchar inx1, uchar inx2, uchar inx3, uchar inx4, uchar inx5, uchar inx6); //數(shù)碼管顯示函數(shù)
sbit Wela = P2^7; //位選端口
sbit Dula = P2^6; //段選端口
sbit beep = P2^3; //蜂鳴器端口
uchar code Table[] = //段碼數(shù)組
{
0x3F,0x06,0x5B,0x4F,0x66,0x6D, //共陰極段碼 0 1 2 3 4 5
0x7D,0x07,0x7F,0x6F,0x77,0x7C, //共陰極段碼 6 7 8 9 A b
0x39,0x5E,0x79,0x71,0x73,0x3E, //共陰極段碼 C d E F P U
0x31,0x6E,0x76,0x38,0x00 //共陰極段碼 T y H L 滅燈
};
/************延時(shí)函數(shù)***************/
void delay(uint num) //延時(shí) num ms
{
uint x, y;
for(x=num; x>0; x--)
{
for(y=110; y>0; y--);
}
}
void main()
{
temp = 765432 - 765000;
count0 = 0;
count1 = 0;
count2 = 0;
flag = 0;
flag1 = 0;
EA = 1;
EX0 = 1;
TMOD = 0x11; //設(shè)置定時(shí)器T0,T1 為工作方式1
TH0 = (65536 - 50000) / 256;
TL0 = (65536 - 50000) % 256;
TH1 = (65536 - 50000) / 256;
TL1 = (65536 - 50000) % 256;
ET0 = 1; //開定時(shí)器T0中斷
ET1 = 1; //開定時(shí)器T1中斷
TR0 = 1; //打開定時(shí)器T0
TR1 = 1; //打開定時(shí)器T1
P1 = 0xfe;
flowlight = P1;
while(1)
{
beep = 0;
if(flag1 != 1)
{
display(7, 6, 5, inx4, inx5, inx6);
if(temp == 398)
{
TR0 = 0;
TR1 = 0;
flag = 1;
P1 = 0xff;
TH0 = (65536 - 50000) / 256;
TL0 = (65536 - 50000) % 256;
TR0 = 1;
count0 = 0;
temp--;
}
}
else
{
display(20, 14, 21, 21, 0, 22);
TR0 = 0;
}
}
}
/***********數(shù)碼管顯示函數(shù)************/
void display(uchar inx1, uchar inx2, uchar inx3, uchar inx4, uchar inx5, uchar inx6)
{
Wela = 1;
P0 = 0xfe;
Wela = 0;
Dula = 1;
P0 = Table[inx1];
Dula = 0;
delay(5);
Wela = 1;
P0 = 0xfd;
Wela = 0;
Dula = 1;
P0 = Table[inx2];
Dula = 0;
delay(5);
Wela = 1;
P0 = 0xfb;
Wela = 0;
Dula = 1;
P0 = Table[inx3];
Dula = 0;
delay(5);
Wela = 1;
P0 = 0xf7;
Wela = 0;
Dula = 1;
P0 = Table[inx4];
Dula = 0;
delay(5);
Wela = 1;
P0 = 0xef;
Wela = 0;
Dula = 1;
P0 = Table[inx5];
Dula = 0;
delay(5);
Wela = 1;
P0 = 0xdf;
Wela = 0;
Dula = 1;
P0 = Table[inx6];
Dula = 0;
delay(5);
}
/*********定時(shí)器T0定時(shí)**********/
void timer0() interrupt 1 //定時(shí)器T0定時(shí)50ms
{
TH0 = (65536 - 50000) / 256;
TL0 = (65536 - 50000) % 256;
count0++;
if(flag != 1)
{
if(count0 == 10) //流水燈延時(shí) 500ms 流動(dòng)
{
beep = 1;
flowlight = _crol_(flowlight, 1);
P1 = flowlight;
count0 = 0;
}
}
else
{
if(count0 % 4 == 0)
{
P1 = ~P1;
if(count0 == 60)
{
flag1 = 1;
}
}
}
}
/*********定時(shí)器T1中斷函數(shù)50ms*******/
void timer1() interrupt 3 //定時(shí)器T1定時(shí)50ms
{
TH1 = (65536 - 50000) / 256;
TL1 = (65536 - 50000) % 256;
count1++;
if(count1 == 2) //數(shù)碼管以100ms遞減
{
temp--;
inx4 = temp / 100;
inx5 = temp % 100 / 10;
inx6 = temp % 10;
count1 = 0;
}
}
復(fù)制代碼
新手程序,望大佬放過
所有資料51hei附件下載:
Works.rar
(95.66 KB, 下載次數(shù): 9)
2021-9-8 15:55 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1