資源簡介
基于STC89C51單片機(jī)的智能搶答器的設(shè)計(jì)與實(shí)現(xiàn),親測有效

代碼片段和文件信息
#include?“reg51.h“????????//51系列單片機(jī)定義文件
#include?“intrins.h“??????//調(diào)用_nop_();延時(shí)函數(shù)用
#define?IN????P1????//顯示數(shù)據(jù)段碼輸出口
#define?uchar?unsigned?char//無符號字符(8位)
#define?uint?unsigned?int??//無符號整數(shù)(16位)
uchar?num;?????????????????//搶答選手編號
uchar?time=20;?????????????//搶答時(shí)間初值
uchar?dtime=30; ???//回答時(shí)間初值
uchar?nmnum_1;???????????//搶答時(shí)間臨時(shí)變量秒計(jì)數(shù)值,搶答選手號
sbit??key1=P3^0;???????????//開始
sbit??key2=P3^1;???????????//停止
sbit??key3=P3^2;???????????//設(shè)定
sbit??key4=P3^3;???????????//確認(rèn)
sbit??key5=P3^4;???????????//搶答時(shí)間加1
sbit??key6=P3^5; ???//搶答時(shí)間減1
sbit??key7=P3^6;???????????//回答時(shí)間加1
sbit??key8=P3^7; ???//回答時(shí)間減1
bit???TZ=0; ???//調(diào)整標(biāo)志位
bit???RUN=1; ???//運(yùn)行標(biāo)志,=0,搶答計(jì)時(shí)=1,回答計(jì)時(shí)。
sbit??W1=P2^4;
sbit??W2=P2^5;
sbit??W3=P2^6;
sbit??W4=P2^7;
sbit??busy?=P2^0;
sbit??dat??=P2^1;
sbit??rest?=P2^2;
sbit??point=P0^7;
void?display();
void?sound(uchar?k);
/************************************/
uchar?code?dis_7[]={0xC00xF90xA40xB00x990x920x820xF8
??????????????????????????0x800x900xFF0x7F};
/*?共陽七段LED段碼表??“0“??“1“??“2“??“3“??“4“??“5“??“6“??“7“??“8“??“9“?“不亮“?*/
/********1毫秒延時(shí)子函數(shù)**********/
delay1ms(uint?t)
{
uint?ij;
for(i=0;i ???for(j=0;j<120;j++)
???;
}
/********************************************************報(bào)數(shù)?程序********************************************************/
void?sound(uchar?k)
{uint?i;
?while(busy==0){display();}
?rest=1;
?display();
?rest=0;
?for(i=k;i>0;i--)
?{dat=1;
??display();
??dat=0;
??}
}
//******************************************顯示程序
void?display()
{if(TZ==0)
?{P0=dis_7[num];?W1=0;???delay1ms(1);???W1=1;
??P0=0xbf; ????W2=0; delay1ms(1);???W2=1;
??P0=dis_7[n/10%10];?W3=0; ?delay1ms(1); ?W3=1;
??P0=dis_7[n%10];???W4=0; ?delay1ms(1); ??W4=1;
?}
?else
?{P0=dis_7[time/10%10];?W1=0;???delay1ms(1);???W1=1;
??P0=dis_7[time%10];point=0; ????W2=0; delay1ms(1);???W2=1;
??P0=dis_7[dtime/10%10];?W3=0; ?delay1ms(1); ?W3=1;
??P0=dis_7[dtime%10];???W4=0; ?delay1ms(1); ??W4=1;
?}
?
}
/********************************************************/?
/**********語音程序******************/
void?nose(uchar?x)
{?switch?(x)
{ case?0:{sound(29);sound(17);break;}
case?1:{sound(num+1);sound(11);sound(12);sound(13);break;}
case?2:{sound(32);break;}
case?3:{sound(29);sound(25);break;}
case?4:{sound(num+1);sound(11);;sound(14);sound(12)break;}
case?5:{sound(28);sound(25);break;}
default: break;
}
}
/*掃描程序*/
/*****************************************/
void?keyscan()
{
if(P1!=0xFF&&TR0==0&&TZ==0)
?{num_1=P1;
??switch(num_1)
{ case?0xfe:?{num=1;nose(4);}?break;??
case?0xfd:?{num=2;nose(4);}?break;
case?0xfb:?{num=3;nose(4);}?break;
case?0xf7:?{num=4;nose(4);}?break;
case?0xef:?{num=5;nose(4);}?break;
case?0xdf:?{num=6;nose(4);}?break;
case?0xbf:?{num=7;nose(4);}?break;
case?0x7f:?{num=8;nose(4);}?break;
default:?break;
}
while(key2==1){display();}
{sound(32);?????????????????????????
?num=0;????
}???????????????
while(key2==0);??
?
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????5739??2017-05-17?18:39??畢設(shè)程序\dingshiqi.c
?????文件???????3331??2017-04-25?19:42??畢設(shè)程序\dingshiqi.hex
?????文件?????????51??2017-04-25?19:42??畢設(shè)程序\dingshiqi.lnp
?????文件??????11082??2017-05-17?18:39??畢設(shè)程序\dingshiqi.LST
?????文件??????16272??2017-04-25?19:42??畢設(shè)程序\dingshiqi.M51
?????文件????????180??2017-07-17?14:29??畢設(shè)程序\dingshiqi.plg
?????文件??????14858??2017-04-24?19:46??畢設(shè)程序\dingshiqi.SDI
?????文件??????56081??2017-07-17?14:29??畢設(shè)程序\dingshiqi.uvopt
?????文件??????13410??2017-04-20?15:53??畢設(shè)程序\dingshiqi.uvproj
?????文件?????????39??2017-05-17?18:39??畢設(shè)程序\dingshiqi.__i
?????文件??????56085??2017-06-08?19:26??畢設(shè)程序\dingshiqi_uvopt.bak
?????文件??????13411??2017-04-18?21:42??畢設(shè)程序\dingshiqi_uvproj.bak
?????文件???????6376??2009-05-07?14:37??畢設(shè)程序\STARTUP.A51
?????文件??????14048??2017-04-18?21:41??畢設(shè)程序\STARTUP.LST
?????文件????????758??2017-04-18?21:41??畢設(shè)程序\STARTUP.OBJ
?????目錄??????????0??2017-09-20?13:09??畢設(shè)程序
-----------?---------??----------?-----??----
???????????????211721????????????????????16
評論
共有 條評論