亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? c8051f021.c

?? 片上系統(tǒng)單片機C8051F021的應(yīng)用程序
?? C
?? 第 1 頁 / 共 3 頁
字號:
#include <C8051F020.h>
//#include <reg52.h>

#define uint  unsigned int
#define uchar unsigned char
#define x1    0x80
#define x2    0x88
#define y     0x80
#define comm  0
#define dat   1

sbit rs = P2^7;   //H=data; L=command;
sbit rw = P2^6;   //H=read; L=write;
sbit  e = P2^5;   //input enable;
sbit psb= P2^4;   //H=并口; L=串口;
sbit rst= P2^3;   //Reset Signal 低電平有效
sbit bl= P1^6;		//背光,低電平有效
sbit busy=P3^7;   //lcd busy bit
sbit p15=P1^5;
sbit p17=P1^7;
sbit p20=P2^0;
sbit p21=P2^1;	
sbit p22=P2^2;

//變量定義
	bit k1t=0;				//各個按鍵的標(biāo)志
	bit k1=0;
	bit k2=0;
	bit k3t=0;
	bit k3=0;
	bit k4=0;
	bit menu=0;				//菜單標(biāo)志,0為菜單界面,1為功能界面
	bit fun1=0;				//進入功能1標(biāo)志
	bit fun2=0;				//進入功能2標(biāo)志
	bit fun3=0;				//進入功能3標(biāo)志
	bit fun4=0;				//進入功能4標(biāo)志
	bit key2r=0;			//KEY2蜂鳴標(biāo)志,0則叫,1不叫
	bit key4r=0;			//KEY4蜂鳴標(biāo)志,0則叫,1不叫
	bit topsi=0;			//加法到達最高速度標(biāo)志
	bit topsd=0;			//減法到達最高速度標(biāo)志
	bit meda=0;				//進入DA功能的選擇界面
	bit mepw=0;				//進入PWM功能的選擇界面
	
	
	uchar kmark=0;			//按鍵掃描標(biāo)志
	uchar fcount=0;			//功能選擇標(biāo)志
	uchar f1co=0;				//AD計數(shù)
	uchar f2count=0;		//DA路數(shù)選擇標(biāo)志
	uchar f3count=0;		//PWM路數(shù)選擇標(biāo)志
	uchar incount=9;		//加計數(shù)
	uchar decount=9;		//減計數(shù)
	uchar k2count=0;		//上翻鍵計數(shù)
	uchar k4count=0;		//下翻鍵計數(shù)
	uchar instd=9;			//上翻標(biāo)準(zhǔn)
	uchar destd=9;			//下翻標(biāo)準(zhǔn)
	xdata uchar adnum0[3]={0,0,0};		//AD0數(shù)據(jù)存儲
	xdata uchar adnum1[3]={0,0,0};		//AD1數(shù)據(jù)存儲
	xdata uint adf0[10]={0,0,0,0,0,0,0,0,0,0};			//AD0濾波數(shù)據(jù)存儲
	xdata uint adf1[10]={0,0,0,0,0,0,0,0,0,0};			//AD1濾波數(shù)據(jù)存儲
	uint adres0=0;			//AD0濾波后的結(jié)果
	uint adres1=0;			//AD1濾波后的結(jié)果
	xdata uchar danum0[4]={0,0,0,0};		//DA0數(shù)據(jù)存儲數(shù)組
	xdata uchar danum1[4]={0,0,0,0};		//DA1數(shù)據(jù)存儲數(shù)組
	//uchar pwpr0[4];			//PWM0占空比存儲數(shù)組
	//uchar pwpr1[4];			//PWM1占空比存儲數(shù)組
	xdata uchar pwnum0[4]={0,0,0,0};		//PWM0電壓存儲數(shù)組
	xdata uchar pwnum1[4]={0,0,0,0};		//PWM1電壓存儲數(shù)組
	//uchar pwlas0[4]={0xff,0xff,0xff,0xff};
	xdata uchar fqnum0[6]={0,0,0,0,0,0};		//頻率數(shù)據(jù)存儲數(shù)組
	uchar pwcp0h=0;
	uchar pwcp0l=0;
	uchar pwcp1h=0;
	uchar pwcp1l=0;
	uchar adsel=0;			//AD路數(shù)選擇標(biāo)志,(0,1,2)為第一路,(3,4,5)為第二路

//函數(shù)聲明
void tt0();
void pca();
void ring(void);
void wr_lcd (uchar,uchar);
void chk_busy (void);
uchar code * selnt(uchar);	
void npd_ad(uchar,uchar,uchar,uchar);
void delay (uint);
void delay1(uint);
void f1disp();
void f2disp();
void f3disp();
void f4disp();
void npd_da(uchar,uchar,uchar,uchar,uchar);
void bcda4(uchar *,uchar,uchar,uchar,uchar);
void bcds4(uchar *,uchar,uchar,uchar,uchar);
void npd_fa(uchar,uchar,uchar,uchar);	
void npd_fb(uchar,uchar,uchar,uchar,uchar);	
void adfun();
uint bcdhb(uchar *,uchar);
void pwm0fun();
void pwm1fun();
uint filter(uint *,uchar,uint,uint);
void ditui(uint *,uchar ,uint );
unsigned long int sumarr(uint *,uchar );
void mami(uint *,uchar ,uint *,uint *);
void flashre();
void flashwr();
/*
void config(void);
void init_lcd (void)
void wr_zb(uchar,uchar);
void chn_disp (uchar code *);
void clrram (void)
void con_disp (uchar,uchar,uchar,uchar,uchar,uchar);
void clrp_disp (void);
void init_disp(void);
void kscan(void);
void key1(void);
void key3(void);
void keyans(void);
uchar code * selnt(uchar);
*/

uchar code tabme[]={
"1.12位A/D 輸入  "
"3.16位PWM 輸出  "
"2.12位D/A 輸出  "
"4.波形頻率測量  "
};
uchar code tabmes[]={
"2.12位D/A 輸出  "
"4.波形頻率測量  "
"3.16位PWM 輸出  "
"5.FLASH 存儲    "
};
uchar code tab1[]={
"1.選擇第一路DA  "
"                "
"2.選擇第二路DA  "
"                "
};

uchar code tab2[]={
"第一路DA輸出的電"
"壓為:           "
};

uchar code tab3[]={
"第二路DA輸出的電"
"壓為:           "
};

uchar code tab4[]={
"1.選擇第一路PWM "
"                "
"2.選擇第二路PWM "
"                "
};

uchar code tab5[]={
"第一路PWM 輸出的"
"電壓為:         "
};

uchar code tab6[]={
"第二路PWM 輸出的"
"電壓為:         "
};

uchar code tab7[]={
"輸入信號的頻率為"
"                "
};

uchar code tab8[]={
"已存入FLASH!^_^ "
"                "
};
uchar code tabn0[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFF,0xE0,0x07,
0xFF,0xE0,0x1F,0xFF,0xF8,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x03,0xFC,0x3F,0x03,
0xFC,0x3F,0x1F,0xFC,0x3F,0x1F,0xFC,0x3F,0xBF,0xFC,0x3F,0xFE,0xFC,0x3F,0xFC,0xFC,
0x3F,0xF0,0xFC,0x3F,0xF0,0xFC,0x3F,0xF0,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,
0x00,0xFC,0x3F,0x00,0xFC,0x1F,0xFF,0xF8,0x07,0xFF,0xE0,0x07,0xFF,0xE0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabn1[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,
0x7F,0x00,0x00,0xFF,0x00,0x01,0xFF,0x00,0x07,0xFF,0x00,0x07,0xFF,0x00,0x07,0xFF,
0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,
0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,
0x3F,0x00,0x0F,0xFF,0xFC,0x0F,0xFF,0xFC,0x0F,0xFF,0xFC,0x0F,0xFF,0xFC,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabn2[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFF,0xF0,0x07,
0xFF,0xF0,0x3F,0xFF,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x00,0x00,
0xFC,0x00,0x03,0xFC,0x00,0x07,0xF0,0x00,0x0F,0xE0,0x00,0x3F,0xC0,0x00,0x7F,0x80,
0x00,0xFE,0x00,0x01,0xFC,0x00,0x03,0xF8,0x00,0x07,0xF0,0x00,0x0F,0xE0,0x00,0x3F,
0xC0,0xFC,0x3F,0x00,0xFC,0x3F,0xFF,0xFC,0x3F,0xFF,0xFC,0x3F,0xFF,0xFC,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabn3[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFF,0xF0,0x0F,
0xFF,0xF0,0x3F,0xFF,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x00,0x00,
0xFC,0x00,0x00,0xFC,0x00,0x00,0xFC,0x01,0xFF,0xF8,0x01,0xFF,0xF0,0x01,0xFF,0xF8,
0x00,0x00,0xFC,0x00,0x00,0xFC,0x00,0x00,0xFC,0x00,0x00,0xFC,0x00,0x00,0xFC,0x3F,
0x00,0xFC,0x3F,0x00,0xFC,0x3F,0xFF,0xFC,0x0F,0xFF,0xF0,0x07,0xFF,0xF0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabn4[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x00,
0x0F,0xE0,0x00,0x1F,0xE0,0x00,0x3F,0xE0,0x00,0x7F,0xE0,0x00,0xFF,0xE0,0x01,0xFF,
0xE0,0x03,0xF7,0xE0,0x07,0xE7,0xE0,0x0F,0xC7,0xE0,0x1F,0x87,0xE0,0x1F,0x07,0xE0,
0x1F,0xFF,0xFC,0x1F,0xFF,0xFC,0x1F,0xFF,0xFC,0x00,0x07,0xE0,0x00,0x07,0xE0,0x00,
0x07,0xE0,0x00,0x07,0xE0,0x00,0x1F,0xF8,0x00,0x1F,0xF8,0x00,0x1F,0xF8,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabn5[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0xFF,0xFC,0x3F,
0xFF,0xFC,0x3F,0xFF,0xFC,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0x00,
0x00,0x3F,0x00,0x00,0x3F,0x00,0x00,0x3F,0xFF,0xF0,0x3F,0xFF,0xF8,0x3F,0xFF,0xFC,
0x00,0x00,0xFE,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,0x7E,0x3F,
0x80,0x7E,0x3F,0x80,0x7E,0x3F,0xFF,0xFC,0x07,0xFF,0xF8,0x07,0xFF,0xF0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabn6[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x80,0x00,
0xFF,0x80,0x07,0xFF,0x80,0x07,0xE0,0x00,0x07,0xE0,0x00,0x1F,0xE0,0x00,0x1F,0x80,
0x00,0x1F,0x80,0x00,0x1F,0x80,0x00,0x1F,0xFF,0xE0,0x1F,0xFF,0xF0,0x1F,0xFF,0xF8,
0x1F,0x81,0xFC,0x1F,0x80,0xFC,0x1F,0x80,0xFC,0x1F,0x80,0xFC,0x1F,0x80,0xFC,0x1F,
0x80,0xFC,0x1F,0x80,0xFC,0x0F,0xFF,0xF8,0x07,0xFF,0xF0,0x03,0xFF,0xE0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
uchar code tabn7[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xFF,0xFC,0x1F,
0xFF,0xFC,0x1F,0xFF,0xFC,0x1F,0x80,0xFC,0x1F,0x80,0xFC,0x1F,0x80,0xFC,0x00,0x01,
0xFC,0x00,0x03,0xFC,0x00,0x07,0xF0,0x00,0x0F,0xE0,0x00,0x1F,0xC0,0x00,0x3F,0x80,
0x00,0x7F,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,
0x7E,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,0x7E,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
uchar code tabn8[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFF,0xE0,0x0F,
0xFF,0xF0,0x3F,0xFF,0xFC,0x3F,0x81,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x00,
0xFC,0x3F,0x00,0xFC,0x3F,0x81,0xFC,0x3F,0xFF,0xFC,0x0F,0xFF,0xF0,0x0F,0xFF,0xF0,
0x3F,0x81,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,
0x00,0xFC,0x3F,0x81,0xFC,0x3F,0xFF,0xFC,0x0F,0xFF,0xF0,0x07,0xFF,0xE0,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabn9[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xFF,0xE0,0x0F,
0xFF,0xF0,0x3F,0xFF,0xF8,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0x00,
0xFC,0x3F,0x00,0xFC,0x3F,0x00,0xFC,0x3F,0xFF,0xFC,0x0F,0xFF,0xFC,0x0F,0xFF,0xFC,
0x00,0x01,0xFC,0x00,0x00,0xFC,0x00,0x00,0xFC,0x00,0x00,0xFC,0x00,0x01,0xFC,0x00,
0x07,0xF8,0x00,0x07,0xE0,0x0F,0xFF,0xE0,0x0F,0xFF,0x80,0x0F,0xFF,0x80,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

uchar code tabd[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x7E,0x7E,0x7E,0x7E,0x7E,0x7E,0x00,0x00,0x00,0x00,0x00,0x00
};


/*------初始化子程序------------------------*/
void config(void)
{
//看門狗禁止
	WDTCN=0x07;
	WDTCN=0xDE;
	WDTCN=0xAD; 
//I/O口配置
	XBR0=0x14;			//配置TX0,RX0,CEX0,CEX1
	XBR1=0x00;
	XBR2=0x40;
	P0MDOUT=0x00;
	P1MDOUT=0x00;
	P2MDOUT=0x00;
	P3MDOUT=0x00;
//使用內(nèi)部晶振16MHZ	
	OSCICN=0x17;
//定時器配置,T0定時方式1用做鍵盤掃描,T1定時方式1用于頻率測量,定時1S
	TMOD=0x11;
//定時器T0		
	TL0=0xc5;	//ff				
	TH0=0x67;	//ef
//12路ADC0配置
	ADC0CF=0x00;			//SAR時鐘=系統(tǒng)時鐘,內(nèi)部增益為1
	ADC0CN=0x90;			//ADC允許,數(shù)據(jù)右對齊
//DAC0配置
	DAC0CN=0x80;			//DAC0允許,輸出更新發(fā)生在寫DAC0H時,數(shù)據(jù)格式靠右對齊
//DAC1配置
	DAC1CN=0x80;			//DAC0允許,輸出更新發(fā)生在寫DAC0H時,數(shù)據(jù)格式靠右對齊
//PCA配置
	PCA0CN=0x40;			//允許PCA
	//PCA0MD=0x08;			//用系統(tǒng)時鐘,禁止PCA中斷
	PCA0MD=0x09;			//用系統(tǒng)時鐘,允許PCA中斷
	PCA0CPM0=0xC2;			//允許16PWM,允許比較器功能,匹配禁止,PWM允許,禁止CFFn中斷
	//PCA0CPM0=0xCB;			//允許16PWM,允許比較器功能,匹配允許,PWM允許,允許CFFn中斷
	PCA0CPM1=0xC2;			//允許16PWM,允許比較器功能,匹配禁止,PWM允許,禁止CFFn中斷
	//PCA0CPM1=0xCB;			//允許16PWM,允許比較器功能,匹配允許,PWM允許,允許CFFn中斷
	PCA0L=0x00;
	PCA0H=0x00;
	//PCA0CPL0=0xff;
	//PCA0CPH0=0xff;
	//PCA0CPL1=0xff;
	//PCA0CPH1=0xff;
//電壓基準(zhǔn)配置
	REF0CN=0x03;			//使用內(nèi)部基準(zhǔn)
//中斷優(yōu)先級配置
	PT0=1;
//中斷允許配置
	EIE1|=0x08;				//總體允許PCA0中斷
	//開定時器T0中斷計時
	TR0=1;
	ET0=1;
	//開定時器T1中斷
	//ET1=1;
	EA=1;		
}
/*------------------LCD初始化-----------------*/
void init_lcd (void)
{
  rst=1;
  psb=1;
  wr_lcd (comm,0x30);  /*30---基本指令動作*/   
  wr_lcd (comm,0x01);  /*清屏,地址指針指向00H*/
  wr_lcd (comm,0x06);  /*光標(biāo)的移動方向*/
  wr_lcd (comm,0x0c);  /*開顯示,關(guān)游標(biāo)*/
}
/*---------------顯示漢字或字符----------------*/
void chn_disp (uchar code *chn)
{
  uchar i,j;
  wr_lcd (comm,0x30);
  wr_lcd (comm,0x80);
  for (j=0;j<4;j++)
  {
    for (i=0;i<16;i++)
    wr_lcd (dat,chn[j*16+i]);
  }
}
/*---------------顯示上面漢字或字符----------------*/
void chns_disp (uchar code *chn)
{
  uchar i,j;
  i=0;
  j=0;
  wr_lcd (comm,0x30);
  wr_lcd (comm,0x80);
  for (i=0;i<16;i++)
  wr_lcd (dat,chn[i]);
	wr_lcd (comm,0x90);	
	 for (i=0;i<16;i++)
  		wr_lcd (dat,chn[16+i]);
}
/*---------------清除圖形----------------*/
void clrp_disp (void)
{
  uchar i,j;
  for(j=0;j<32;j++)
  {
    for(i=0;i<8;i++)
    {
      wr_lcd (comm,0x34);
      wr_lcd (comm,y+j);
      wr_lcd (comm,x1+i);
      wr_lcd (comm,0x30);
      wr_lcd (dat,0x00);
      wr_lcd (dat,0x00);
    }
  }
  for(j=32;j<64;j++)
  {
    for(i=0;i<8;i++)
    {
      wr_lcd (comm,0x34);
      wr_lcd (comm,y+j-32);
      wr_lcd (comm,x2+i);
      wr_lcd (comm,0x30);
      wr_lcd (dat,0x00);
      wr_lcd (dat,0x00);
    }
  }
  //wr_lcd (comm,0x36);
}
/*--------------清DDRAM------------------*/
void clrram (void)
{
  wr_lcd (comm,0x30);
  wr_lcd (comm,0x01);
}
/*---------------顯示光條----------------*/
//當(dāng)data1=0xff,data2=0xff時,在x0,y0處反白顯示16xl*yl.		//80 90 88 98
															//80 90 80 90
void con_disp (uchar data1,uchar data2,uchar x0,uchar y0,uchar xl,uchar yl)
{
  uchar i,j;
  for(j=0;j<yl;j++)
  {
    for(i=0;i<xl;i++)
    {
      wr_lcd (comm,0x34);
      wr_lcd (comm,y0+j);
      wr_lcd (comm,x0+i);
      wr_lcd (comm,0x30);
      wr_lcd (dat,data1);
      wr_lcd (dat,data2);
    }
  }
  wr_lcd (comm,0x36);
}
/*-------------------液晶接口子程序---------*/
void wr_zb(uchar lcd_x,uchar lcd_y)		//寫座標(biāo)
{
	wr_lcd(comm,0x36);
	wr_lcd(comm,lcd_y);
	wr_lcd(comm,lcd_x);
}
void wr_lcd (uchar dat_comm,uchar content)
{
  chk_busy ();
  if(dat_comm)
   {
    rs=1;   //data
    rw=0;   //write
   }
  else 
   {
    rs=0;   //command
    rw=0;   //write
   }
  P3=content;   //output data or comm
  e=1;
  delay(1);
  e=0;
}

void chk_busy (void)
{
  P3=0xff;
  rs=0;
  rw=1;
  e =1;
  while(busy==1);
  e =0;
}

void delay (uint us)   //delay time
{
  while(us--);
}
void delay1 (uint ms)
{
  uint i,j;
  for(i=0;i<ms;i++)
  for(j=0;j<15;j++)
  delay(1);
}

/*---------------初始化顯示截面------------------------*/
void init_disp(void)
{
	clrp_disp();
	chn_disp (tabme);
	con_disp (0xff,0xff,0x80,0x80,8,16);	//顯示光條
	bl=0;
}
/*---------------按鍵掃描------------------------*/
void kscan(void)						
{				
	if (kmark==0)
	{					//KEY1 功能鍵	
		p17=1;
		if(p17==0)
		{	
			k1t=1;
			goto keyl;
		}
		else
		{
			if(k1t==1)
			{
				k1t=0;
				k1=1;
			}
			else
			{
				goto keyl;
			}
		}
	}
	if(kmark==1)		//KEY2 加鍵
	{
		p20=1;
		if (p20==0)
		{
			k2=1;
			goto keyl;
		}
		else
		{
			key2r=0;
			k2=0;
			incount=16;
			k2count=0;
			instd=16;
			topsi=0;
			goto keyl;
		}
	}
	if(kmark==2)		//KEY3 確定鍵
	{
		p21=1;
		if(p21==0)
		{
			k3t=1;
			goto keyl;
		}
		else
		{
			if(k3t==1)
			{
				k3t=0;
				k3=1;
				goto keyl;
			}
			else
			{
				goto keyl;
			}
		}
	}
	if(kmark==3)		//KEY4 減鍵
	{
		p22=1;
		if (p22==0)
		{
			k4=1;
			goto keyl;
		}
		else if(k4==0)
		{
			key4r=0;
			k4=0;
			decount=0x1F;
			k4count=0x00;
			destd=0x1F;
			topsd=0;
			goto keyl;
		}
		else 
		{
			goto keyl;
		}
	}
keyl:	kmark+=1;
		if (kmark==4)
		{
			kmark=0;
		}				
}
/*----------------KEY1功能鍵響應(yīng)子程序-----------------------*/
void key1(void)
{
	clrp_disp();
	if (meda==0&&mepw==0)
	{
		menu=0;
		fun1=0;
		fun2=0;
		fun3=0;
		fun4=0;
		chn_disp (tabme);
		fcount+=1;
		if (fcount==5)
		{
			fcount=0;
		}
		switch(fcount)
		{
			case 0:con_disp (0xff,0xff,0x80,0x80,8,16);break;	//第一行顯示光條
			case 1:con_disp (0xff,0xff,0x90,0x90,8,16);break;	//第二行顯示光條
			case 2:con_disp (0xff,0xff,0x88,0x80,8,16);break;	//第三行顯示光條
			case 3:con_disp (0xff,0xff,0x98,0x90,8,16);break;	//第四行顯示光條
			case 4:												//菜單換頁,第四行顯示光條
			{
				chn_disp (tabmes);
				con_disp (0xff,0xff,0x98,0x90,8,16);
				break;	
			}
		}
	}
	if (meda==1)
	{
		meda=0;
		fun2=0;
		chn_disp(tab1);
		f2count+=1;
		if (f2count==2)
		{
			f2count=0;
		}
		switch(f2count)
		{
			case 0:con_disp (0xff,0xff,0x80,0x80,8,16);break;	//第一行顯示光條
			case 1:con_disp (0xff,0xff,0x90,0x90,8,16);break;	//第二行顯示光條
		}
	}
	if (mepw==1)
	{
		mepw=0;
		fun3=0;
		chn_disp(tab4);
		f3count+=1;
		if (f3count==2)
		{
			f3count=0;
		}
		switch(f3count)
		{
			case 0:con_disp (0xff,0xff,0x80,0x80,8,16);break;	//第一行顯示光條
			case 1:con_disp (0xff,0xff,0x90,0x90,8,16);break;	//第二行顯示光條
		}
	}
}
/*----------------KEY3確定鍵響應(yīng)子程序-----------------------*/	
void key3(void)	
{

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品乱码久久久久久 | 精品久久一二三区| 亚洲一区中文日韩| 99v久久综合狠狠综合久久| 欧美成人乱码一区二区三区| 亚洲图片一区二区| 欧美无砖砖区免费| 椎名由奈av一区二区三区| 国产白丝精品91爽爽久久| 久久中文字幕电影| 国产在线麻豆精品观看| 久久日韩精品一区二区五区| 久久国产三级精品| 2021久久国产精品不只是精品| 精品影院一区二区久久久| 欧美撒尿777hd撒尿| 亚洲最新视频在线观看| 欧美性做爰猛烈叫床潮| 一区二区三区不卡视频在线观看| 欧美三级三级三级| 日一区二区三区| 日韩午夜激情电影| 狠狠狠色丁香婷婷综合激情| 日韩欧美一级二级三级久久久| 免费在线观看不卡| 久久日一线二线三线suv| 东方aⅴ免费观看久久av| 国产精品国产三级国产三级人妇 | 麻豆精品一区二区综合av| 在线播放一区二区三区| 日本成人在线不卡视频| 精品国产一区二区三区四区四| 国内一区二区在线| 欧美激情艳妇裸体舞| av电影在线观看不卡| 亚洲视频一区在线观看| 欧美高清性hdvideosex| 国产一区二区免费看| 中文字幕一区在线观看| 欧美三区在线视频| 麻豆精品在线视频| 最新国产の精品合集bt伙计| 欧美视频一区二区| 国产精一品亚洲二区在线视频| 久久亚洲欧美国产精品乐播| 成人精品电影在线观看| 亚洲综合一二三区| 亚洲精品一区二区三区香蕉| 成人一区二区三区在线观看| 亚洲国产美国国产综合一区二区| 欧美大白屁股肥臀xxxxxx| 99九九99九九九视频精品| 五月天丁香久久| 欧美一区二区精品在线| 97久久超碰国产精品| 午夜精品久久久久久久久| 久久久久久一二三区| 色呦呦一区二区三区| 久久电影国产免费久久电影| 一区二区日韩av| 精品伦理精品一区| 99久久精品99国产精品| 麻豆精品一区二区av白丝在线| 中文字幕在线观看不卡| 欧美一区二区三区在线| 99久久精品免费看| 激情综合色播五月| 天天av天天翘天天综合网| 国产精品国产自产拍高清av| 日韩午夜在线影院| 欧美老年两性高潮| 色诱视频网站一区| 99久久综合国产精品| 精品一区免费av| 日韩国产精品久久久久久亚洲| 一区二区三区小说| 亚洲欧美在线aaa| 中文字幕乱码日本亚洲一区二区 | 日日骚欧美日韩| 亚洲欧美在线视频观看| 欧美国产一区视频在线观看| 精品国产伦一区二区三区观看体验 | 国产精品福利一区| 国产夜色精品一区二区av| 欧美一区二区视频在线观看2020| 在线观看中文字幕不卡| 91丨porny丨首页| 不卡的av网站| 波多野结衣亚洲| 91网址在线看| eeuss鲁片一区二区三区在线看| 韩国v欧美v日本v亚洲v| 国产资源精品在线观看| 激情综合五月天| 国内精品伊人久久久久av一坑| 日本大胆欧美人术艺术动态| 日韩高清不卡一区二区三区| 亚洲主播在线播放| 青青草97国产精品免费观看 | av一区二区久久| www.亚洲色图| 日本高清成人免费播放| 欧美在线999| 欧美美女一区二区| 欧美精品久久一区二区三区| 欧美日韩精品综合在线| 欧美一区二区久久| 久久综合狠狠综合久久激情| 国产日韩视频一区二区三区| 国产精品伦一区二区三级视频| 欧美韩日一区二区三区四区| 中文字幕一区二区三| 亚洲自拍欧美精品| 日韩电影在线一区二区| 麻豆精品国产91久久久久久| 国产麻豆精品95视频| av福利精品导航| 欧美视频一区二| 国产天堂亚洲国产碰碰| 亚洲丝袜制服诱惑| 首页欧美精品中文字幕| 精品一区二区三区在线观看国产| 风间由美一区二区三区在线观看 | 亚洲444eee在线观看| 日日夜夜免费精品视频| 国产一区二区不卡| 日本伦理一区二区| 91精品一区二区三区在线观看| 精品奇米国产一区二区三区| 亚洲激情五月婷婷| 黑人巨大精品欧美一区| 色综合亚洲欧洲| 欧美一卡二卡在线| 自拍偷自拍亚洲精品播放| 午夜精品一区二区三区电影天堂| 午夜精品久久久久久久久 | 蜜臀av亚洲一区中文字幕| 国产成人免费视| 欧美午夜理伦三级在线观看| 精品国产一区二区三区不卡 | 久久久精品tv| 亚洲第一成人在线| 蜜桃一区二区三区在线观看| www.亚洲色图| 国产精品久久久久一区二区三区 | 欧美一级二级三级蜜桃| 中文子幕无线码一区tr| 日本特黄久久久高潮| 91亚洲精品一区二区乱码| 日韩女优毛片在线| 亚洲精品免费在线播放| 激情综合五月天| 欧美巨大另类极品videosbest| 国产精品麻豆一区二区| 麻豆成人久久精品二区三区红| 99国产精品国产精品久久| 精品国产三级a在线观看| 午夜精品久久久久久久| 成人av综合在线| 欧美国产日本韩| 久草热8精品视频在线观看| 欧美日韩三级在线| 亚洲人成网站在线| 大白屁股一区二区视频| 精品国产露脸精彩对白| 亚洲高清一区二区三区| 99国产一区二区三精品乱码| 26uuu国产在线精品一区二区| 日本午夜一本久久久综合| 日本高清免费不卡视频| 成人欧美一区二区三区白人| 国产精品亚洲午夜一区二区三区| 91精品国产色综合久久| 亚洲欧美在线aaa| 99国产精品久| 中文字幕亚洲电影| 国产麻豆视频精品| 日本一区二区视频在线| 国产精品中文字幕一区二区三区| 日韩三级电影网址| 免费观看一级欧美片| 91精品国产一区二区| 日本在线不卡视频| 欧美区在线观看| 首页国产欧美久久| 91精品国产综合久久久久| 五月天网站亚洲| 欧美一区二区三区在线看| 麻豆久久一区二区| 日韩三级视频在线看| 精品在线你懂的| 久久久久久久久久久99999| 国产精品综合二区| 国产精品网站在线观看| 91天堂素人约啪| 亚洲精品视频一区二区| 欧美色精品天天在线观看视频| 石原莉奈在线亚洲二区| 日韩欧美一区二区久久婷婷| 国产一区二区三区在线观看免费|