設(shè)計一個以單片機為核心的單詞記憶測試器:
①實現(xiàn)單詞的錄入(為使程序具有可演示性,單詞不少于10個)。
②單詞用按鍵控制依次在屏幕上顯示,按鍵選擇認識還是不認識,也可以直接進入下一個或者上一個。
③單詞背完后給出正確率。
#include "reg52.h"
#include "lcd.h"
typedef unsigned int u16; //對數(shù)據(jù)類型進行聲明定義
typedef unsigned char u8;
sbit k1 = P1^0;
sbit k2 = P1^1;
sbit k3 = P1^2;
sbit k4 = P1^3;
u8 code Init[2][16]={{" H.I.T. CHINA "},{" welcome "} };
u8 over[2][16] = {{" result "},{" 0% "}};
u8 code word[10][16] = { {" radius "},
{" symmetry "},
{" triple "},
{" audinle "},
{" compatible "},
{" derive "},
{" electronic "},
{" ideology "},
{" input "},
{" parallel "},
};
void delay(u16 i)
{while(i--);
}
u8 i = 0;//記錄顯示單詞序號
u8 time = 0;//記錄認識的單詞數(shù)
u8 num = 1;//記錄已查看的單詞
void keybroad()
{//開始按鍵
if(k1==0) //檢測按鍵K1是否按下
{ delay(1000); //消除抖動 一般大約10ms
if(k1==0) //再次判斷按鍵是否按下
{ time = 0;//記錄認識的單詞數(shù)
num = 1;//記錄已查看的單詞
Lcdshow_str(0,1,word[i]);
}
while(!k1); //檢測按鍵是否松開
}
if(num<=10)
{//向上按鍵
if(k2==0) //檢測按鍵K1是否按下
{delay(1000); //消除抖動 一般大約10ms
if(k2==0) //再次判斷按鍵是否按下
{ if(i==0)
{i = 10-1;//一共10個單詞
}
else
i--;
Lcdshow_str(0,1,word[i]);
num++;
}
while(!k2); //檢測按鍵是否松開
}
if(k3==0) //檢測按鍵K1是否按下
{delay(1000); //消除抖動 一般大約10ms
if(k3==0) //再次判斷按鍵是否按下
{ if(i==9)
i=0;
else
i++;
Lcdshow_str(0,1,word[i]);
num++;
}
while(!k3); //檢測按鍵是否松開
}
if(k4==0) //檢測按鍵K1是否按下
{delay(1000); //消除抖動 一般大約10ms
if(k4==0) //再次判斷按鍵是否按下
{ if(i==9)
i=0;
else
i++;
time++;
Lcdshow_str(0,1,word[i]);
num++;
}
while(!k4); //檢測按鍵是否松開
}
}
}
void main(void)
{LcdInit();
Lcdshow_str(0,0,Init[0]);
Lcdshow_str(0,1,Init[1]);
while(1)
{keybroad();
if(num>10)
{ if(time==10)
over[1][5] = 1+0x30;
over[1][6] = time%10+0x30;
Lcdshow_str(0,0,over[0]);
Lcdshow_str(0,1,over[1]);
}
}
}
仿真文件、程序proteus、51工程文件
ps:有需要可私信要文件
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
分享標題:基于51單片機的單詞記憶測試器-創(chuàng)新互聯(lián)
文章起源:http://www.rwnh.cn/article14/cehode.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、手機網(wǎng)站建設(shè)、微信小程序、網(wǎng)站建設(shè)、關(guān)鍵詞優(yōu)化、網(wǎng)頁設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容