資源簡介
基于51單片機的智能搶答器+C源碼+原理圖+PCB 非常適合單片機的初學者一個小項目

代碼片段和文件信息
////////////////////////////////////////////////////////////////////////////////
/////////////////名稱:智能搶答器///////////////////////////////////////////////
/////////////////姓名:周濤?孫士培?何成波///////////////////////////////////////
/////////////////日期:2009年5月19日/////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
#include
#include
#define?uchar?unsigned?char
#define?uint?unsigned?int
uchar?dec_sign=0;
uchar?reset_sign=0;
uchar?player1_sign=0;
uchar?player2_sign=0;
uchar?player3_sign=0;
uchar?player4_sign=0;
uchar?player5_sign=0;
uchar?counter_sign=0;
uint?player1_record;
uint?player2_record;
uint?player3_record;
uint?player4_record;
uint?player5_record;
uint?value_record;
uchar?timer_record;
uchar?timer_memory;
uchar?counter=0;
sbit?FM=P3^4;?
uchar?add_sign=0;
void?delayms(uint?x) ??????/////延遲函數
{
uint?ij;
for(i=x;i>0;i--)
for(j=110;j>0;j--);
}
void?Xled_bright(uchar?x) ??////第x盞燈亮 ??不能同時亮
{
uchar?temp;
?temp=P3&0x1f;
P3=temp|((x-1)<<5);
}
void?FM_ring()
{
FM=0;
}
void?FM_close()
{
FM=1;
}
void?FM_alarm()
{
uchar?ij;
for(i=3;i>0;i--)
{
FM=1;
delayms(10);
FM=0;
delayms(5);
}
for(j=3;j>0;j--)
{
FM=1;
delayms(100);
FM=0;
delayms(50);
}
}
void?select_num(uchar?x) ?////選擇第x個數碼管?x取0--15
{
uchar?temp;
temp=P0&0x0f;
P0=((x-1)<<4)|temp;
}
void?write_num(uchar?x) ?////寫上x這個數,x取0--9
{
uchar?temp;
temp=P0&0xf0;
P0=x|temp;
}
void?select_write(uchar?xuchar?y)??////其中x表示選中的數碼管號y表示在選中這數碼管上要寫的數
{
select_num(x);
write_num(y);
}
void?score_0init()
{
uchar?i;
for(i=1;i<16;i++)
{
select_num(i);
write_num(0);
}
}
void?write_timer(uchar?x) ?///讓計時數碼管顯示x鈔
{
uchar?shige;
shi=x/10;
ge=x%10;
select_num(16); ??///實際上是鎖存了所有顯示分數的數碼管
Xled_bright(7); ??///實際上是打開一個計時數碼管的使能????這是選中計數管的十位
write_num(shi);
Xled_bright(6); ??///這是選中計數管的個位
write_num(ge);
timer_record=x;
}
void?reset_key()
{
uchar?temp;
P2=0xfd;
temp=P2&0x10;
if(temp!=0x10)
{
delayms(10);
P2=0xfd;
temp=P2&0x10;
if(temp!=0x10)
{
reset_sign=1;
}
while(temp!=0x10)
{
P2=0xfd;
temp=P2&0x10;
}
P3=P3|0xe0; ??////滅燈
}
}
void?display_score(uchar?player_numuint?score_num)
{
uint?baishige;
uchar?baiwei_sign;
bai=score_num/100;
shi=score_num%100/10;
ge=score_num%10;
baiwei_sign=player_num*3-2;
select_write(baiwei_signbai);
select_write(baiwei_sign+1shi);
select_write(baiwei_sign+2ge);
switch(player_num)
{
case?1:?player1_record=score_num;?break;
case?2:?player2_record=score_num;?break;
case?3:?player3_record=score_num;?break;
case?4:?player4_record=score_num;?break;
case?5:?player5_record=score_num;?break;
}
}
void?add_Xfen(uint?xuchar?player_num)
{
switch(player_num)
{
case?1:?display_score(1player1_record+x);?break;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???11858432??2009-04-19?20:06??智能搶答器PCB.PcbDoc
?????文件?????229773??2009-05-21?12:46??智能搶答器原理圖3.pdf
?????文件??????13757??2009-05-19?16:59??智能搶答器5?程序.c
-----------?---------??----------?-----??----
?????????????12101962????????????????????3
- 上一篇:樹莓派3B+原理圖
- 下一篇:小波總結 小波變換小波總結 小波變換
評論
共有 條評論