日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]C源代碼:#include /*定義字型字位口*/ #define DIGPORT P2 #define WORDPORT P0/*定義鍵盤口*/ #define KEYPORT P1#define uint unsigned int #define uchar unsigned char #define uong unsigned longsbit P_

C源代碼:

#include

/*定義字型字位口*/
#define DIGPORT P2
#define WORDPORT P0

/*定義鍵盤口*/
#define KEYPORT P1

#define uint unsigned int
#define uchar unsigned char
#define uong unsigned long

sbit P_7=P3^7; //PWM信號(hào)輸出

bit OVER;
uint k,dt;
uong KEYNUM;
uchar qu,NUM;

void Delay(uint ms)
{
while(--ms);
}


void timer0(void) interrupt 1 using 1
{
TL0=-(10248%256);
TH0=-(10248%256);
NUM+=1;
if(NUM>=10){
TR1=0;
TR0=0;
OVER=1;
}
}

uint CK(void)
{
uint number=0;
P_7=1;
OVER=0;NUM=0;
EA=1;ET0=1;
TH0=(10203/256);
TH0=(10203%256);
TH1=0;
TL1=0;
TMOD=0x51;
TR0=1;
TR1=1;
Delay(dt);
P_7=0;
while (!OVER);
OVER=0;
number=TH1*256+TL1;
return(number);
}

void Display_LED(uong nu)
{
uint ii=0;
uong aa,bb;
uint xx[]={-0x10,-0x10,-0x10,-0x10,-0x10,-0x10,-0x10,-0x10};
do
{
bb=nu/10;
aa=nu-bb*10;
xx[ii]=aa;
nu=bb;ii++;
}while(nu>0);
DIGPORT=0xf0; WORDPORT=0x30+xx[0];
DIGPORT=0xf1; WORDPORT=0x30+xx[1];
DIGPORT=0xf2; WORDPORT=0x30+xx[2];
DIGPORT=0xf3; WORDPORT=0x30+xx[3];
DIGPORT=0x0f; WORDPORT=0x30+xx[4];
DIGPORT=0x1f; WORDPORT=0x30+xx[5];
DIGPORT=0x2f; WORDPORT=0x30+xx[6];
DIGPORT=0x3f; WORDPORT=0x30+xx[7];
}

void getkey()
{
qu=0;k=0;
KEYNUM=0;
do
{
switch(KEYPORT)
{
case 0xbd:
KEYNUM=KEYNUM*10;
break;
case 0xf6:
KEYNUM=KEYNUM*10+1;
break;
case 0xf5:
KEYNUM=KEYNUM*10+2;
break;
case 0xf3:
KEYNUM=KEYNUM*10+3;
break;
case 0xee:
KEYNUM=KEYNUM*10+4;
break;
case 0xed:
KEYNUM=KEYNUM*10+5;
break;
case 0xeb:
KEYNUM=KEYNUM*10+6;
break;
case 0xde:
KEYNUM=KEYNUM*10+7;
break;
case 0xdd:
KEYNUM=KEYNUM*10+8;
break;
case 0xdb:
KEYNUM=KEYNUM*10+9;
break;
case 0xbe:
KEYNUM=KEYNUM/10;
break;
case 0xbb:
qu=1;
}
Delay(6000);
Delay(6000);
Delay(6000);
Delay(6000);
Delay(6000);
Delay(6000);
Delay(6000);
Delay(6000);

if(KEYNUM>100000000) break;
Display_LED(KEYNUM);
}while(qu==0);
}


void main(void)
{
uong f;
P_7=0;
dt=1000;
getkey();
for(;;){
f=0;
f=CK()*12;
Display_LED(f);
if((f>KEYNUM)&&(dt>100)) dt=dt-(f-KEYNUM)/10;
if((f }
}

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉