標題:
求助幫忙分析一下這個程序 displaydate【i】=number(0)是啥意思
[打印本頁]
作者:
669621251
時間:
2018-5-13 16:32
標題:
求助幫忙分析一下這個程序 displaydate【i】=number(0)是啥意思
#define uchar unsigned char //快捷定義
#define uint unsigned int //快捷定義
#define duan P2 //數(shù)碼管段選接口
#define wei P3 //數(shù)碼管位選接口
sbit ledH=P0^2; //指示紅燈接口
sbit ledL=P0^3; //指示綠燈接口
sbit Frst=P1^4; //按鍵1
sbit Second=P1^5; //按鍵2
sbit Third=P1^6; //按鍵3
sbit Forth=P1^7; //按鍵4
sbit k1=P1^0; //start按鍵
sbit k2=P1^1; //reset按鍵
uchar i=0; //數(shù)碼管顯示計時
//uchar qinflag; //移位標志
uchar code number[20]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x8c,0xff,0xbf,0xcf}; //0~9,a,b,c,d,e,f,p,不顯示,-,
iuchar code weizi[11]={0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0x10,0x20};//位選數(shù)據(jù)//
uchar code error[10]={0xff,0xaf,0xc0,0xaf,0xaf,0x86,0xff,0xff,0xff};//erroruchar displayData[11];
//uchar weishu;
char time;
uchar qdShijian; //時間計時
uchar xuanshou; //選手編號
bit qdQidong; //搶答啟動
//bit dtQidong; //答題啟動
bit select; //選擇
uint count; //定時計時變量
void init(); //初始化
uchar scanzhi(); //獲取按鍵值
void display(); //數(shù)碼管顯示
void duzhichuli(); //數(shù)據(jù)處理
=================================================
void keyscan(){
if(k1==0) //檢測按鍵K1是否按下開始
{ //Delay10ms(); //消除抖動
// while(k1==0); //松手檢測
qdQidong = 1; //啟動搶答
qdShijian = 20;//倒計時20秒
select = 1; //啟動選擇
ledL = 1; //綠燈亮 }
if(k2==0) //檢測按鍵K2是否按下復位
{ ledL = 0; //綠燈滅
ledH = 0; //紅燈滅
select = 1;//選擇
for(i=1;i<12;i++) //顯示數(shù)據(jù)清零
displayData[i]=number[0]; }
if(select == 1 && qdQidong == 1) //搶答處理
{ if(Frst==0) //檢測按鍵1號選手
{ select = 0; //退出選擇
// dtShijian = 30; //倒計時30秒
// dtQidong = 1; //倒計時啟動
qdQidong = 0; //搶答停止
xuanshou = 1; //選手1
time=0;
displayData[1] = number[10]; //顯示a
displayData[2] = number[xuanshou]; //顯示編號 }
復制代碼
displaydate【i】=number(0)是啥意思
作者:
wulin
時間:
2018-5-13 19:09
for(i=1;i<12;i++) //顯示數(shù)據(jù)清零
displayData[i]=number[0];
displayData[]是顯示緩存,number[]是字符數(shù)組,程序是循環(huán)12次把緩存清零 。
作者:
51jia
時間:
2018-5-13 22:24
意思是把顯示數(shù)組中每一組寫入0x00.
作者:
ysqing
時間:
2018-5-14 03:12
displayData[i]=number[0]; 這里number[0]應該為“0”的顯示代碼,把所有的顯示緩沖置0,在屏上顯示字符0,查找對應的電路圖應該會更加清楚。
作者:
ysqing
時間:
2018-5-14 03:14
number[0]應該為字符’0“的顯示代碼,displaydate[i]=number(0); 應該是把所有的顯示緩沖區(qū)填成字符”0“,在LED屏上顯示字符”0“的意思。
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1