电子时钟(带秒表的)程序设计

#include

#define uchar unsigned char

#define uint unsigned int

sbit E=P3^4;

sbit RS=P3^5;

sbit key1=P2^4;

sbit key2=P2^5;

sbit key3=P2^6;

sbit key4=P2^7;

sbit mbkey=P2^2;

sbit beep=P2^3;

uchar count,shi=00,fen=00,miao=00,key1num,flag,flag1,xqnum;//flag闹钟

uchar key2num,jinzhi=3,naonum=1,ms,mbmiao,mbfen,mbkeynum,num; //ms秒表进数,mbmiao.mbfen 秒表的秒. 分 key2num 是key5的计数 jinzhi 进制转换参数

uint nian=2010,yue=12,ri=8,count2;

uchar code table[]=" 2010-12-8THU";

uchar code table1[]="24d 00:00:00 ON";

uchar code table2[]="MON,TUE,WED,THU,FRI,SAT,SUN";

uchar code table3[]="am ,pm ,24d";

uchar code table4[]="ON ,OFF";

uchar code table5[]=" 00:00:00 mb ";

void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

void di(uint x) //蜂鸣器发声函数

{

beep=0;

delay(x);

beep=1;

}

void write_com(uchar com)//给液晶写命令

{

RS=0;

P0=com;

delay(5);

E=1;

delay(5);

E=0;

}

void write_date(uchar date)//给液晶写数据

{

RS=1;

P0=date;

delay(5);

E=1;

delay(5);

E=0;

}

void init() //初始化函数

{

uchar num;

E=0;

write_com(0x38);

write_com(0x0c);

write_com(0x06);

write_com(0x01);//清零

write_com(0x80);

for(num=0;num

{

write_date(table[num]);

delay(20);

}

write_com(0x80+0x40); //第二行

for(num=0;num

{

write_date(table1[num]);

delay(20);

}

TMOD=0X01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

TH1=(65536-10000)/256;

TL1=(65536-10000)%256;

ET1=0;

TR1=0;

}

void write_nian(uchar add , uint date) //年显示函数

uchar qian,bai,shi,ge;

qian=date/1000;

bai=(date-1000*qian)/100;

shi=(date-qian*1000-bai*100)/10;

ge=date%10;

write_com(0x80+add);

write_date(0x30+qian);

write_date(0x30+bai);

write_date(0x30+shi);

write_date(0x30+ge);

}

void write_yue(uchar add , uchar date)

{

uchar shi,ge;

shi=date/10;

ge=date%10;

write_com(0x80+add);

write_date(0x30+shi);

write_date(0x30+ge);

}

void write_ri(uchar add , uchar date)

{

uchar shi,ge;

shi=date/10;

ge=date%10;

write_com(0x80+add);

write_date(0x30+shi);

write_date(0x30+ge);

}

void write_sfm(uchar add ,uchar date)

{

uchar shi,ge;

shi=date/10;

ge=date%10;

write_com(0x80+0x40+add);

write_date(0x30+shi);

write_date(0x30+ge);

}

//月显示函数//日显示函数 //秒显示函数

void write_week(uchar week) //星期显示函数 {

uchar week_num;

week_num=week;

switch(week_num)

{

case 1: write_com(0x80+13);

write_date(table2[0]);

write_date(table2[1]);

write_date(table2[2]);

write_com(0x80+13);

break;

case 2: write_com(0x80+13);

write_date(table2[4]);

write_date(table2[5]);

write_date(table2[6]);

write_com(0x80+13);

break;

case 3: write_com(0x80+13);

write_date(table2[8]);

write_date(table2[9]);

write_date(table2[10]);

write_com(0x80+13);

break;

case 4: write_com(0x80+13);

write_date(table2[12]);

write_date(table2[13]);

write_date(table2[14]);

write_com(0x80+13);

break;

case 5: write_com(0x80+13);

write_date(table2[16]);

write_date(table2[17]);

write_date(table2[18]);

write_com(0x80+13);

break;

case 6: write_com(0x80+13);

write_date(table2[20]);

write_date(table2[21]);

write_date(table2[22]);

write_com(0x80+13);

break;

case 7: write_com(0x80+13);

write_date(table2[24]);

write_date(table2[25]);

write_date(table2[26]);

write_com(0x80+13);

break;

}

}

void write_jinzhi(uchar jinzhi)

{

uchar jznum;

jznum=jinzhi;

switch(jznum)

{

case 1: write_com(0x80+0x40+0);

write_date(table3[0]);

write_date(table3[1]);

write_date(table3[2]);

write_com(0x80+0x40+0);

break;

case 2: write_com(0x80+0x40+0);

write_date(table3[4]);

write_date(table3[5]);

write_date(table3[6]);

write_com(0x80+0x40+0);

break;

case 3: write_com(0x80+0x40+0);

write_date(table3[8]);

write_date(table3[9]);

write_date(table3[10]);

write_com(0x80+0x40+0);

break;

}

}

//jinzhi进制显示函数

void write_nao(uchar nao) //闹钟开关显示函数 {

uchar naonum;

naonum=nao;

switch(naonum)

{

case 1: write_com(0x80+0x40+13);

write_date(table4[0]);

write_date(table4[1]);

write_date(table4[2]);

write_com(0x80+0x40+13);

break;

case 2: write_com(0x80+0x40+13);

write_date(table4[4]);

write_date(table4[5]);

write_date(table4[6]);

write_com(0x80+0x40+13);

break;

}

}

void keyboard() //按键扫描函数

{

if(flag==1)

{

//闹钟暂停函数

if(key4==0)

{

delay(5);

if(key4==0)

{

while(!key4);

beep=1;

flag=0;

}

}

}

if(key1==0)

{

delay(5);//消斗

if(key1==0)

{

key1num++; while(!key1); di(1); if(key1num==1) { TR0=0; write_com(0x80+0x40+10); write_com(0x0f);//光标闪烁 } if(key1num==2) { write_com(0x80+0x40+7); } if(key1num==3) { write_com(0x80+0x40+4); } if(key1num==4) { write_com(0x80+0x40); } if(key1num==5) { write_com(0x80+2); } if(key1num==6) { write_com(0x80+7); } if(key1num==7) { write_com(0x80+10); } if(key1num==8) { write_com(0x80+13); } if(key1num==9) { write_com(0x80+0x40+13); } if(key1num==10) { key1num=0;

} } write_com(0x0c);//光标停止闪烁 TR0=1;//打开定时器 } if(key1num!=0) { if(key2==0) { delay(5); if(key2==0) { while(!key2);//等待松手 di(100); if(key1num==1) { miao++; if(miao==60) miao=0; write_sfm(10,miao); write_com(0x80+0x40+10); } if(key1num==2) { fen++; if(fen==60) fen=0; write_sfm(7,fen); write_com(0x80+0x40+7); } if(key1num==3) { shi++; if(jinzhi==3) { if(shi==24) shi=0; } else { if(shi>12) shi=shi-12; }

write_com(0x80+0x40+4); } if(key1num==4) { jinzhi++; if(jinzhi==4) jinzhi=1; write_jinzhi(jinzhi); } if(key1num==5) { nian++; write_nian(2,nian); write_com(0x80+2); } if(key1num==6) { yue++; if(yue==13) yue=1; write_yue(7,yue); write_com(0x80+7); } if(key1num==7) { ri++; if(ri==32) ri=1; write_ri(10,ri); write_com(0x80+10); } if(key1num==8) { xqnum++; if(xqnum==8) xqnum=1; write_week(xqnum); } if(key1num==9) { naonum++; if(naonum==3) naonum=1;

} if(key1num==10) { key1num=0; write_com(0x0c);//光标停止闪烁 TR0=1;//打开定时器 } } } if(key3==0) { delay(5); if(key3==0) { while(!key3); di(100); if(key1num==1) { miao--; if(miao==-1) miao=59; write_sfm(10,miao); write_com(0x80+0x40+10); } if(key1num==2) { fen--; if(fen==-1) fen=59; write_sfm(7,fen); write_com(0x80+0x40+7); } if(key1num==3) { shi--; if(shi==-1) shi=23; if(jinzhi==3) {

if(shi==-1) shi=23; } else { if(shi

write_week(xqnum);

write_com(0x80+10);

}

if(key1num==9)

{

naonum--;

if(naonum==0)

naonum=2;

write_nao(naonum);

write_com(0x80+0X40+13);

}

}

}

}

}

}

void mbiao( ) //秒表函数

{

if(mbkey==0)

{

mbkeynum++;

while(!mbkey);

if(mbkeynum==1) //关闭时钟定时器

{

TR0=0;

ET0=0;

write_com(0x80+0x40);

for(num=0;num

write_date(table5[num]);

ms=0;

mbmiao=0;

mbfen=0;

TR1=0;

ET1=0;

}

if(mbkeynum==2) //打开秒表定时器关闭时钟定时器 {

TR1=1;

ET1=1;

TR0=0;

ET0=0;

}

if(mbkeynum==3) //关闭秒表定时器 {

TR1=0;

ET1=0;

TR0=0;

ET0=0;

}

if(mbkeynum==4)

{

TR0=1;

ET0=1;

TR1=0;

ET1=0;

write_sfm(10,miao);

write_sfm(7,fen);

write_sfm(4,shi);

write_jinzhi(jinzhi);

write_com(0x80+0x40+13);

write_date(' ');

write_date('O');

write_date('N');

mbkeynum=0;

}

}

}

void main()

{

init();

while(1)

{

keyboard();

mbiao();

if(count==20)

{

count=0;

miao++;

if(miao==60)

{

miao=0; //显示时钟状态打开时钟定时器 //液晶变化

fen++; if(fen==60) { fen=0; shi++; if(jinzhi==3) //24进制时钟 { if(shi==24) shi=0; } else { if(shi>12) //12进制时钟 { shi=shi-12; jinzhi++; if(jinzhi==3) jinzhi=1; } } write_sfm(4,shi); write_jinzhi(jinzhi); } write_sfm(7,fen); } write_sfm(10,miao); if(miao==0&&fen==0&&shi==0||(jinzhi==2&&shi==12&&fen==0&&miao==0))//日期和星期递变 { write_com(0x80+9); ri++; if(ri==32) { ri=1; yue++; if(yue==13) { yue=1; nian++; write_nian(2,nian); } write_yue(7,yue); } write_ri(10,ri);

xqnum++;

write_week(xqnum); }

if(fen==0&&miao>=0&&miao

{

flag=1;

beep=~beep;

}

if(naonum==1&&fen==0&&miao==30) {

flag=1;

beep=0;

}

if(miao==6)

beep=1;

}

}

}

void timer0() interrupt 1 //时钟定时器 {

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

count++;

}

void timer1() interrupt 3 //秒表定时器 {

//TL1=([1**********])%256;

//TH1=([1**********])/256;

TL1=(65536 - 50000)%256;

TH1=(65536 - 50000)/256;

ms++;

write_sfm(10,ms);

if(ms==1*30)

{

mbmiao++;

write_sfm(7,mbmiao);

ms=0;

if(mbmiao==60)

{

mbmiao=0; //闹钟

} } } mbfen++; write_sfm(4,mbfen);

#include

#define uchar unsigned char

#define uint unsigned int

sbit E=P3^4;

sbit RS=P3^5;

sbit key1=P2^4;

sbit key2=P2^5;

sbit key3=P2^6;

sbit key4=P2^7;

sbit mbkey=P2^2;

sbit beep=P2^3;

uchar count,shi=00,fen=00,miao=00,key1num,flag,flag1,xqnum;//flag闹钟

uchar key2num,jinzhi=3,naonum=1,ms,mbmiao,mbfen,mbkeynum,num; //ms秒表进数,mbmiao.mbfen 秒表的秒. 分 key2num 是key5的计数 jinzhi 进制转换参数

uint nian=2010,yue=12,ri=8,count2;

uchar code table[]=" 2010-12-8THU";

uchar code table1[]="24d 00:00:00 ON";

uchar code table2[]="MON,TUE,WED,THU,FRI,SAT,SUN";

uchar code table3[]="am ,pm ,24d";

uchar code table4[]="ON ,OFF";

uchar code table5[]=" 00:00:00 mb ";

void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

void di(uint x) //蜂鸣器发声函数

{

beep=0;

delay(x);

beep=1;

}

void write_com(uchar com)//给液晶写命令

{

RS=0;

P0=com;

delay(5);

E=1;

delay(5);

E=0;

}

void write_date(uchar date)//给液晶写数据

{

RS=1;

P0=date;

delay(5);

E=1;

delay(5);

E=0;

}

void init() //初始化函数

{

uchar num;

E=0;

write_com(0x38);

write_com(0x0c);

write_com(0x06);

write_com(0x01);//清零

write_com(0x80);

for(num=0;num

{

write_date(table[num]);

delay(20);

}

write_com(0x80+0x40); //第二行

for(num=0;num

{

write_date(table1[num]);

delay(20);

}

TMOD=0X01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

TH1=(65536-10000)/256;

TL1=(65536-10000)%256;

ET1=0;

TR1=0;

}

void write_nian(uchar add , uint date) //年显示函数

uchar qian,bai,shi,ge;

qian=date/1000;

bai=(date-1000*qian)/100;

shi=(date-qian*1000-bai*100)/10;

ge=date%10;

write_com(0x80+add);

write_date(0x30+qian);

write_date(0x30+bai);

write_date(0x30+shi);

write_date(0x30+ge);

}

void write_yue(uchar add , uchar date)

{

uchar shi,ge;

shi=date/10;

ge=date%10;

write_com(0x80+add);

write_date(0x30+shi);

write_date(0x30+ge);

}

void write_ri(uchar add , uchar date)

{

uchar shi,ge;

shi=date/10;

ge=date%10;

write_com(0x80+add);

write_date(0x30+shi);

write_date(0x30+ge);

}

void write_sfm(uchar add ,uchar date)

{

uchar shi,ge;

shi=date/10;

ge=date%10;

write_com(0x80+0x40+add);

write_date(0x30+shi);

write_date(0x30+ge);

}

//月显示函数//日显示函数 //秒显示函数

void write_week(uchar week) //星期显示函数 {

uchar week_num;

week_num=week;

switch(week_num)

{

case 1: write_com(0x80+13);

write_date(table2[0]);

write_date(table2[1]);

write_date(table2[2]);

write_com(0x80+13);

break;

case 2: write_com(0x80+13);

write_date(table2[4]);

write_date(table2[5]);

write_date(table2[6]);

write_com(0x80+13);

break;

case 3: write_com(0x80+13);

write_date(table2[8]);

write_date(table2[9]);

write_date(table2[10]);

write_com(0x80+13);

break;

case 4: write_com(0x80+13);

write_date(table2[12]);

write_date(table2[13]);

write_date(table2[14]);

write_com(0x80+13);

break;

case 5: write_com(0x80+13);

write_date(table2[16]);

write_date(table2[17]);

write_date(table2[18]);

write_com(0x80+13);

break;

case 6: write_com(0x80+13);

write_date(table2[20]);

write_date(table2[21]);

write_date(table2[22]);

write_com(0x80+13);

break;

case 7: write_com(0x80+13);

write_date(table2[24]);

write_date(table2[25]);

write_date(table2[26]);

write_com(0x80+13);

break;

}

}

void write_jinzhi(uchar jinzhi)

{

uchar jznum;

jznum=jinzhi;

switch(jznum)

{

case 1: write_com(0x80+0x40+0);

write_date(table3[0]);

write_date(table3[1]);

write_date(table3[2]);

write_com(0x80+0x40+0);

break;

case 2: write_com(0x80+0x40+0);

write_date(table3[4]);

write_date(table3[5]);

write_date(table3[6]);

write_com(0x80+0x40+0);

break;

case 3: write_com(0x80+0x40+0);

write_date(table3[8]);

write_date(table3[9]);

write_date(table3[10]);

write_com(0x80+0x40+0);

break;

}

}

//jinzhi进制显示函数

void write_nao(uchar nao) //闹钟开关显示函数 {

uchar naonum;

naonum=nao;

switch(naonum)

{

case 1: write_com(0x80+0x40+13);

write_date(table4[0]);

write_date(table4[1]);

write_date(table4[2]);

write_com(0x80+0x40+13);

break;

case 2: write_com(0x80+0x40+13);

write_date(table4[4]);

write_date(table4[5]);

write_date(table4[6]);

write_com(0x80+0x40+13);

break;

}

}

void keyboard() //按键扫描函数

{

if(flag==1)

{

//闹钟暂停函数

if(key4==0)

{

delay(5);

if(key4==0)

{

while(!key4);

beep=1;

flag=0;

}

}

}

if(key1==0)

{

delay(5);//消斗

if(key1==0)

{

key1num++; while(!key1); di(1); if(key1num==1) { TR0=0; write_com(0x80+0x40+10); write_com(0x0f);//光标闪烁 } if(key1num==2) { write_com(0x80+0x40+7); } if(key1num==3) { write_com(0x80+0x40+4); } if(key1num==4) { write_com(0x80+0x40); } if(key1num==5) { write_com(0x80+2); } if(key1num==6) { write_com(0x80+7); } if(key1num==7) { write_com(0x80+10); } if(key1num==8) { write_com(0x80+13); } if(key1num==9) { write_com(0x80+0x40+13); } if(key1num==10) { key1num=0;

} } write_com(0x0c);//光标停止闪烁 TR0=1;//打开定时器 } if(key1num!=0) { if(key2==0) { delay(5); if(key2==0) { while(!key2);//等待松手 di(100); if(key1num==1) { miao++; if(miao==60) miao=0; write_sfm(10,miao); write_com(0x80+0x40+10); } if(key1num==2) { fen++; if(fen==60) fen=0; write_sfm(7,fen); write_com(0x80+0x40+7); } if(key1num==3) { shi++; if(jinzhi==3) { if(shi==24) shi=0; } else { if(shi>12) shi=shi-12; }

write_com(0x80+0x40+4); } if(key1num==4) { jinzhi++; if(jinzhi==4) jinzhi=1; write_jinzhi(jinzhi); } if(key1num==5) { nian++; write_nian(2,nian); write_com(0x80+2); } if(key1num==6) { yue++; if(yue==13) yue=1; write_yue(7,yue); write_com(0x80+7); } if(key1num==7) { ri++; if(ri==32) ri=1; write_ri(10,ri); write_com(0x80+10); } if(key1num==8) { xqnum++; if(xqnum==8) xqnum=1; write_week(xqnum); } if(key1num==9) { naonum++; if(naonum==3) naonum=1;

} if(key1num==10) { key1num=0; write_com(0x0c);//光标停止闪烁 TR0=1;//打开定时器 } } } if(key3==0) { delay(5); if(key3==0) { while(!key3); di(100); if(key1num==1) { miao--; if(miao==-1) miao=59; write_sfm(10,miao); write_com(0x80+0x40+10); } if(key1num==2) { fen--; if(fen==-1) fen=59; write_sfm(7,fen); write_com(0x80+0x40+7); } if(key1num==3) { shi--; if(shi==-1) shi=23; if(jinzhi==3) {

if(shi==-1) shi=23; } else { if(shi

write_week(xqnum);

write_com(0x80+10);

}

if(key1num==9)

{

naonum--;

if(naonum==0)

naonum=2;

write_nao(naonum);

write_com(0x80+0X40+13);

}

}

}

}

}

}

void mbiao( ) //秒表函数

{

if(mbkey==0)

{

mbkeynum++;

while(!mbkey);

if(mbkeynum==1) //关闭时钟定时器

{

TR0=0;

ET0=0;

write_com(0x80+0x40);

for(num=0;num

write_date(table5[num]);

ms=0;

mbmiao=0;

mbfen=0;

TR1=0;

ET1=0;

}

if(mbkeynum==2) //打开秒表定时器关闭时钟定时器 {

TR1=1;

ET1=1;

TR0=0;

ET0=0;

}

if(mbkeynum==3) //关闭秒表定时器 {

TR1=0;

ET1=0;

TR0=0;

ET0=0;

}

if(mbkeynum==4)

{

TR0=1;

ET0=1;

TR1=0;

ET1=0;

write_sfm(10,miao);

write_sfm(7,fen);

write_sfm(4,shi);

write_jinzhi(jinzhi);

write_com(0x80+0x40+13);

write_date(' ');

write_date('O');

write_date('N');

mbkeynum=0;

}

}

}

void main()

{

init();

while(1)

{

keyboard();

mbiao();

if(count==20)

{

count=0;

miao++;

if(miao==60)

{

miao=0; //显示时钟状态打开时钟定时器 //液晶变化

fen++; if(fen==60) { fen=0; shi++; if(jinzhi==3) //24进制时钟 { if(shi==24) shi=0; } else { if(shi>12) //12进制时钟 { shi=shi-12; jinzhi++; if(jinzhi==3) jinzhi=1; } } write_sfm(4,shi); write_jinzhi(jinzhi); } write_sfm(7,fen); } write_sfm(10,miao); if(miao==0&&fen==0&&shi==0||(jinzhi==2&&shi==12&&fen==0&&miao==0))//日期和星期递变 { write_com(0x80+9); ri++; if(ri==32) { ri=1; yue++; if(yue==13) { yue=1; nian++; write_nian(2,nian); } write_yue(7,yue); } write_ri(10,ri);

xqnum++;

write_week(xqnum); }

if(fen==0&&miao>=0&&miao

{

flag=1;

beep=~beep;

}

if(naonum==1&&fen==0&&miao==30) {

flag=1;

beep=0;

}

if(miao==6)

beep=1;

}

}

}

void timer0() interrupt 1 //时钟定时器 {

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

count++;

}

void timer1() interrupt 3 //秒表定时器 {

//TL1=([1**********])%256;

//TH1=([1**********])/256;

TL1=(65536 - 50000)%256;

TH1=(65536 - 50000)/256;

ms++;

write_sfm(10,ms);

if(ms==1*30)

{

mbmiao++;

write_sfm(7,mbmiao);

ms=0;

if(mbmiao==60)

{

mbmiao=0; //闹钟

} } } mbfen++; write_sfm(4,mbfen);


相关文章

  • 电子秒表的设计报告
  • 电子秒表电路设计实验报告 学生姓名: 如孜江·库万 学 号:2011130215 专 业:通信工程 年级.班级:2011年级3班 实验项目:电子秒表电路设计 实验类型:设计 实验时间: 实验指导老师: 实验评分: 一. 实验目的 1.进一步 ...查看


  • 电子秒表电路的设计
  • 电子秒表电路的设计 作者:dolphin时间:2011-05-05浏览次数:8841 一. 实验目的 1 .学习数字电路中基本RS 触发器.单稳态触发器.时钟发生器及计数.译码显示等单元电路的综合应用. 2 .学习电子秒表的调试方法. 二. ...查看


  • 电子秒表实验报告
  • 电子技术设计性 实训报告 学 号: 211002146 姓 名: 邱富烨 同 组 人: 夏文彬 班 级: 指导老师: 林雪健 日 期: 2012.09.07 目 录 一.实训目的------------------------------- ...查看


  • 数字电子技术课程设计--电子秒表电路
  • 课 程 设 计 任 务 书 一. 设计题目 电子秒表电路 二. 主要内容及要求 要求设计一个数字秒表,用于短时间测量,适用于田径比赛等竞技场合计时使用. (1)计时范围:0~10分钟 (2)显示分辨率为1s/10. (3 计时 三. 进度安 ...查看


  • 数字电子技术----电子秒表课程设计
  • 通过以下五个练习熟悉使用multism软件. 1. 试利用138译码器产生一组多输出逻辑函数. 2 图1-1 根据EDA的仿真结果,我了解到三个控制输入端S1,\S2,\S3的状态决定了电路的状态.当S1=1,\S2=\S3=0时,译码器处 ...查看


  • 电子科技大学电子技术综合实验秒表实验报告
  • 现代电子技术综合实验 电子秒表设计 学生姓名:学 号:指导老师:学 院:提交时间: 摘要 本文介绍了使用VHDL开发FPGA的一般流程,重点介绍了电子秒表的设计.该设计以VHDL作为硬件开发语言,以ISE作为软件开发平台,准确地实现了秒表计 ...查看


  • 电气工程与自动化毕业论文论文
  • 黑龙江信息技术职业学院 毕业设计(论文)说明书 系 部 专 业 年 级姓 名 指导教师 年 月 日 一.原始依据(包括设计或论文的工作基础.研究条件.应用环境.工作目的等) 二.参考文献 [1] 李叶紫.王喜斌.胡辉.孙东辉.编著MCS_5 ...查看


  • 电子计时器
  • 秒表计时器 设计要求: 1.显示分辨率为1s /100,外接系统时钟频率为100KHz . 2.计时最长时间为1h ,六位显示器,显示时间最长为59m59.99s . 3.系统设置启/停键和复位键.复位键用来消零,做好计时准备.启/停键是控 ...查看


  • 带有秒表功能数字时钟的设计_毕业论文
  • 电子系统设计应用论文 题 目: 带有秒表功能数字时钟的设计 专 业: 班 级: 学生姓名: 带有秒表功能数字时钟的设计 专业: 电子信息工程 学号:20111xxx 姓名:石头 指导老师:xxx 摘要 :本次设计以AT89C52芯片为核心, ...查看


  • 数字秒表课程设计
  • 摘 要 当前电子系统的设计正朝着速度快,容量大,体积小,质量轻,用电省的方向发展.推动该潮流迅速发展的决定性因素就是使用了现代化的EDA [1]设计工具.本论文先确定了系统的逻辑功能,建立算法流程,选择电路结构,然后确定并设计电路所需的数据 ...查看


热门内容