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

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

?? jijiaqi.c

?? 關(guān)于單片機c51的課程設計
?? C
字號:
#include<absacc.h>
#include<reg51.h>
	
#define uchar unsigned char
#define uint unsigned int
#define w_c_add XBYTE[0x2070]  /* LCD寫命令字地址 */
#define w_d_add XBYTE[0x2071]  /* LCD寫數(shù)據(jù)地址 */
#define r_s_add XBYTE[0x2072]  /* LCD讀狀態(tài)字地址 */ 
#define r_d_add XBYTE[0x2073]  /* LCD讀數(shù)據(jù)地址 */
#define COM XBYTE[0x2021]      /*8279命令狀態(tài)口地址*/
#define DAT XBYTE[0x2020]      /*8279數(shù)據(jù)口地址*/

void dispzfs(uchar ajj,uchar t1,uchar t2);
void dispzf(uchar akk,uchar s);
void displcd(uchar add,uint x);
void lcd_busy(void) ;

uchar code num[10]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39};
         /*LCD字符表  0    1    2    3    4    5    6    7    8    9   */
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x80,0x7c};
      /* LED字型表   0     1    2   3    4    5    6    7    8    9    .   確定 */
uchar zj[]={"總價:  "};
uchar sj[]={"時間:   "};
uchar sd[]={"速度:   "};
uchar dj[]={"單價:   "};

uchar bdata status;	        /* 可位尋址片內(nèi)數(shù)據(jù)存儲器,允許位與字節(jié)混合訪問 */
sbit busy=status^7;
sbit clflag=ACC^6;          /*建立清除標志*/
uchar bdata count,count1;
uint shu1,shu2,time,sudu,min; 
uchar jian[]={ 0,0,0,0};
uchar ds1,ds2,money,danjia;
uchar key1,key2,key3,key4;
//////////////////////////////*一毫秒延時*//////////////////////////////////
void delay(uchar x)
{  		
     uchar j;
     while(x--)
     {
       for(j=0;j<125;j++)
     	   {;}
     }
}
////////////////////////////////*8279初始化*////////////////////////////////
void set8279()
{
  COM=0xd1;          /* 總的清除命令        */
  do {ACC=COM;}
  while(clflag==1); /* 讀狀態(tài)字,等待清除結(jié)束*/
  COM=0x00;         /* 8字符顯示左入口      */
  COM=0x23;         /* 12分頻              */
}
////////////////////////////*判斷FIFO鍵按下函數(shù)*/////////////////////////////
uchar deky(void)
{ 
  uchar k;
  k=COM;
  return(k&0x0f);            /*有鍵按下*/
}
////////////////////////////////*取鍵值函數(shù)*//////////////////////////////////
uchar keyin(void)
{ 
  uchar i;
  while(deky()==0);          /*無鍵按下等待*/
  COM=0x40;                  /*讀FIFO RAM命令*/
  i=DAT;
  i=i&0x3f;                  /*取鍵值低6位*/
  return(i);                 /*返回鍵值*/
}
//////////////////////////////////*鍵盤顯示函數(shù)*///////////////////////////////
void disp(uchar j,uchar x)          
{	 
	 COM=0x80+j;
	 DAT=table[x];
}
//////////////////////////////////*按鍵設定單價*///////////////////////////////
void keyscan(void)
{ 
  COM=0xd1;                  /* 總的清除命令 */
  do {ACC=COM;}
  while(clflag==1);          /* 讀狀態(tài)字,等待清除結(jié)束 */
  COM=0x00;                  /* 8字符顯示左入口 */
  COM=0x23;                  /* 12分頻 */
  for(;;)
  {  
  	 key1=keyin();           /*有鍵按下,取鍵值*/
  	 if(key1==0x0b)          /*判斷是否為確認鍵,是即跳出*/
     {break;}
     disp(0,key1);           /*在0x80處顯示鍵值*/
     
     key2=keyin();           /*有鍵按下,取鍵值*/
     if(key2==0x0b)          /*判斷是否為確認鍵,是即跳出*/
     {break;}
     disp(1,key2);           /*在0x81處顯示鍵值*/
     
     key3=keyin();           /*有鍵按下,取鍵值*/
     if(key3==0x0b)          /*判斷是否為確認鍵,是即跳出*/
     {break;}
     disp(2,key3);           /*在0x82處顯示鍵值*/
     
     key4=keyin();           /*有鍵按下,取鍵值*/
     if(key4==0x0b)          /*判斷是否為確認鍵,是即跳出*/
     {break;}
     disp(3,key4);           /*在0x83處顯示鍵值*/
   }
     return;
}
/////////////////////////////////*LCD忙狀態(tài)檢測函數(shù) *///////////////////////////	
void lcd_busy(void)   /*LCD忙狀態(tài)檢測函數(shù) */
{
	do 
	{
  	  status=r_s_add;  /* 讀狀態(tài)字地址的第7位 */
	}	
	while(busy);
}
//////////////////////////////////////*LCD初始化*///////////////////////////////
void setlcd(void)
{
	lcd_busy();
	w_c_add=0x30;   /* 功能設置:8位數(shù)據(jù) */
	lcd_busy();     
	w_c_add=0x0C;   /* 顯示狀態(tài):整體顯示,游標位置無效*/
	lcd_busy();
	w_c_add=0x01;   /* 清除顯示:將DDRAM填滿“20H”,并且設定DDRAM的地址計數(shù)器到“00”*/
	lcd_busy();
	w_c_add=0x02;   /* 地址歸位:設定DDRAM的地址計數(shù)器到“00”,將游標移到開頭原點位置 */
}	
////////////////////////////////////*速度轉(zhuǎn)換與顯示*/////////////////////////////
void displcd(uchar add,uint x)
{	
	uchar ds3,ds4,ds5;           /*定義速度值*/
	lcd_busy();
	w_c_add=add;                 /*送顯示地址*/
	lcd_busy();
	ds3=x/100%10;                /*數(shù)值轉(zhuǎn)換*/
	ds4=x/10%10;
	ds5=x%10;
    w_d_add=num[ds3];            /*速度顯示*/
		lcd_busy();
	w_d_add=num[ds4];
		lcd_busy();
	w_d_add=num[ds5];  
	dispzf(0x95,0x4d);               /*速度單位顯示*/
	dispzf(0x96,0x2f);
	dispzf(0x97,0x6d);
 }
///////////////////////////////*LCD行顯示*//////////////////////////////////
void displcd1(uchar add,uchar *p)
{
	int q;
    lcd_busy();
	w_c_add=add;                   /* 送命令 */
	for(q=0;q<4;q++)               /*循環(huán)顯示*/
	{
		lcd_busy();
    	w_d_add=p[2*q];	
		w_d_add=p[2*q+1]; 
	}
}
//////////////////////////////////*LCD顯示單價*///////////////////////////////
void dispdanjia(void)
{
	lcd_busy();
    w_c_add=0x83;              /*送顯示起始地址*/
    lcd_busy();
    w_d_add=num[key1];		   /*在":"后顯示單價整數(shù)位*/
    lcd_busy();
    w_d_add=0x2e;              /*顯示小數(shù)點*/
    lcd_busy();
    w_d_add=num[key3];         /*寫單價小數(shù)位*/
    lcd_busy();
    dispzfs(0x85,0xa3,0xa4);   /*顯示單位*/
    dispzfs(0x86,0xa3,0xaf);
    dispzfs(0x87,0xa3,0xcd);
}
///////////////////////////*定時/計數(shù)器初始化*/////////////////////////////////
void init(void)           
{
	time=0;                    /*顯示時間初始值為0*/
	money=7;                   /*顯示總價初始值為7*/
	count=0;
	count1=0;
	set8279();                 /*8279初始化*/
	setlcd();                  /*LCD初始化*/
	TMOD=0x50;                 /*設置定時/計數(shù)器工作方式*/
	EA=1;                      /*開中斷*/
	ET0=1;
	ET1=1;
	TR0=1;                     /*啟動定時器*/
	TR1=1;                     /*啟動計數(shù)*/
	TH1=0x00;                  /*計數(shù)器賦初值*/
	TL1=0x00;
	EX0=1;                     /*開外部中斷INT0*/
	IT0=1;                     /*設置外部中斷INT0觸發(fā)方式*/
	PX0=1;                     /*設置外部中斷INT0為高優(yōu)先級*/
	TH0=(65536-50000)/256;     /*定時器賦初值定時50ms*/
 	TL0=(65536-50000)%256;
}
///////////////////////* T0中斷服務函數(shù)完成1s定時*////////////////////////////
void T0_srv (void) interrupt 1 using 1 
{  
   TH0=(65536-50000)/256;      /*定時50ms賦初值*/
   TL0=(65536-50000)%256;
   count++;                    /*50ms到,標志+1*/
   if(count==20)               /*1秒到*/
     { 
       count1++;               /*秒計數(shù)*/
       time++;
       TR1=0;                  /*停止計數(shù)*/
       count=0;
       ds1=TH1;                /*由T1讀取速度*/
       ds2=TL1;
       TH1=0x00;               /*T1重新計數(shù)*/
	   TL1=0x00;
       TR1=1;                  /*啟動計數(shù)*/
       shu1=ds1*256+ds2;       /*速度值轉(zhuǎn)化*/
       shu2=shu1*24/60;        /*將速度轉(zhuǎn)化為一個合適值*/
       sudu=shu2/40;
       if(count1==60)
       {
        	count1=0;
        	if(shu2<40)        /*當速度<40時,按速度為40計價*/
        	money=money+1*danjia; 
        	money=money+sudu*danjia;      /*總價*/
    	}
     }
}
///////////////////////////////////////*單字符顯示程序*//////////////////////////////////
void dispzf(uchar akk,uchar s)
{
	lcd_busy();
    w_c_add=akk;               /*送顯示地址*/
    lcd_busy();
    w_d_add=s;	               /*送顯示值*/
}
/////////////////////////////////////*雙字符顯示程序*///////////////////////////////////
void dispzfs(uchar ajj,uchar t1,uchar t2)
{
	lcd_busy();
	w_c_add=ajj;               /*送顯示地址*/
    lcd_busy();
    w_d_add=t1;                /*送顯示值*/
    lcd_busy();
    w_d_add=t2;
}
////////////////////////////////*主函數(shù)*/////////////////////////////////////////
void main(void)
{ 	
	init();                               /*初始化程序*/
	setlcd();                             /*LCD初始化*/
   	keyscan();                            /*按鍵設定單價*/
  	danjia=key1+key3*0.1;
	while(1)                              
		{
			displcd1(0x80,&dj[0]);           /*單價顯示*/
			dispdanjia();
			
			displcd1(0x90,&sd[0]);           /*速度顯示*/
			displcd(0x93,shu2);              
			delay(10);                       
			min=time/60;                       /*以分計時*/
			
			displcd1(0x88,&sj[0]);           /*時間顯示*/
			displcd(0x8b,min);
			dispzf(0x8d,0x20);
			dispzf(0x8e,0x6d);
			delay(10);
			
			displcd1(0x98,&zj[0]);           /*總價顯示*/
			displcd(0x9b,money);
			dispzfs(0x9d,0xa3,0xa4);
			delay(10);
		}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品1区二区.| 日韩三级伦理片妻子的秘密按摩| 欧美精品丝袜久久久中文字幕| 久久老女人爱爱| 午夜不卡av在线| 91在线看国产| 久久精品网站免费观看| 肉色丝袜一区二区| 91精彩视频在线| 国产欧美一区二区精品性色超碰 | 欧美色图一区二区三区| 国产偷国产偷精品高清尤物| 全国精品久久少妇| 色88888久久久久久影院野外| 国产午夜亚洲精品理论片色戒| 日本成人在线不卡视频| 日本高清不卡在线观看| 国产精品麻豆久久久| 国产一区二区精品久久99| 欧美日韩国产成人在线91| 亚洲情趣在线观看| 色综合久久久久久久久| 国产精品久久看| 岛国av在线一区| 久久久www成人免费毛片麻豆| 青青草精品视频| 6080亚洲精品一区二区| 亚洲成人你懂的| 欧美亚洲高清一区| 亚洲成人动漫在线免费观看| 欧美亚洲日本国产| 三级欧美在线一区| 日韩一区二区三| 精品一区二区三区影院在线午夜| 宅男噜噜噜66一区二区66| 日本欧美大码aⅴ在线播放| 欧美精品日韩一本| 美女看a上一区| 久久综合中文字幕| 成人性生交大片| 亚洲特黄一级片| 在线亚洲一区观看| 亚洲成人在线免费| 日韩欧美中文字幕制服| 国产精品18久久久久久vr| 国产精品素人一区二区| 91欧美一区二区| 亚洲综合清纯丝袜自拍| 日韩一区二区三区在线视频| 国产精品18久久久久久久久| 亚洲欧洲av另类| 欧美人狂配大交3d怪物一区| 蜜臀久久99精品久久久画质超高清| 日韩欧美电影一区| 风间由美一区二区三区在线观看| 亚洲欧洲综合另类| 日韩视频免费观看高清完整版在线观看 | 欧美高清你懂得| 久久99国内精品| 中文字幕一区二区不卡| 欧美日韩国产首页| 国产一区91精品张津瑜| 亚洲精品水蜜桃| 精品入口麻豆88视频| 成人av网址在线观看| 日韩不卡一区二区三区| 国产精品欧美久久久久一区二区| 欧美丰满一区二区免费视频 | 色94色欧美sute亚洲线路一ni| 日韩精品欧美精品| 亚洲欧洲av另类| 欧美大片在线观看一区| 色综合视频在线观看| 精彩视频一区二区| 午夜影院久久久| 中文字幕一区二区三区av| 日韩欧美一级二级| 在线视频中文字幕一区二区| 国产一区二区剧情av在线| 亚洲国产一区二区三区| 日本一区免费视频| 欧美一区二区三级| 日本道在线观看一区二区| 国产在线日韩欧美| 手机精品视频在线观看| 亚洲裸体xxx| 欧美国产一区视频在线观看| 欧美一区二区啪啪| 欧美午夜寂寞影院| 97aⅴ精品视频一二三区| 国产乱国产乱300精品| 视频一区二区三区入口| 一区二区三区四区不卡在线| 国产精品免费免费| 日本一区二区综合亚洲| 欧美精品一区二区久久婷婷| 欧美日韩在线免费视频| 一本大道av伊人久久综合| 成人午夜精品一区二区三区| 激情综合五月天| 精品综合久久久久久8888| 亚洲电影一区二区三区| 亚洲国产裸拍裸体视频在线观看乱了 | 色av一区二区| 99国产麻豆精品| 99久久精品国产一区| 国产v综合v亚洲欧| 风间由美性色一区二区三区| 国产成人精品免费在线| 国产很黄免费观看久久| 国产福利精品一区| 国产精品亚洲视频| 国产91精品露脸国语对白| 国产大陆亚洲精品国产| 丰满放荡岳乱妇91ww| 从欧美一区二区三区| av不卡在线观看| 色诱视频网站一区| 欧美亚洲国产一区二区三区va| 欧美午夜精品免费| 91精品国产一区二区| 日韩精品一区二区三区在线| 337p日本欧洲亚洲大胆色噜噜| 欧美精品一区二区三区蜜臀| 中文字幕第一区二区| 亚洲免费观看高清| 日韩精品1区2区3区| 日本不卡视频在线观看| 国产一区二区三区国产| 不卡av电影在线播放| 91福利视频久久久久| 91精品国产高清一区二区三区| 日韩欧美美女一区二区三区| 久久久久久久久岛国免费| 国产精品久久久久久户外露出| 亚洲精品国久久99热| 免费观看久久久4p| 成人性生交大片免费看中文网站| 91欧美激情一区二区三区成人| 欧美精品日韩一区| 国产人妖乱国产精品人妖| 一区二区三区在线免费观看| 喷水一区二区三区| 97精品国产露脸对白| 欧美精品 国产精品| 国产精品毛片久久久久久久| 亚洲成人免费在线观看| 国产精品自在在线| 在线免费观看不卡av| 久久亚洲春色中文字幕久久久| 中文字幕一区二区三区av| 美日韩一级片在线观看| 不卡av在线网| 欧美成人精品高清在线播放| 亚洲人成伊人成综合网小说| 美女尤物国产一区| 色综合一个色综合亚洲| 精品国产精品一区二区夜夜嗨| 亚洲欧美日韩成人高清在线一区| 久久精品噜噜噜成人88aⅴ| 91一区二区在线观看| 精品久久国产字幕高潮| 一区二区久久久久久| 成人小视频免费在线观看| 欧美一区二区三区视频在线观看| 亚洲色欲色欲www在线观看| 麻豆精品国产传媒mv男同| 欧美日韩中文一区| 亚洲欧美综合色| 成人一区在线观看| 亚洲精品一区二区三区福利| 视频一区二区中文字幕| 欧美在线不卡视频| 亚洲天堂成人在线观看| 风间由美性色一区二区三区| 日韩美女视频在线| 日韩专区在线视频| 欧美性大战久久久| 亚洲九九爱视频| 99re成人在线| 日韩一区欧美小说| caoporn国产一区二区| 久久夜色精品一区| 久国产精品韩国三级视频| 在线成人av网站| 亚洲国产精品久久人人爱| 色94色欧美sute亚洲线路一久| 中文字幕中文在线不卡住| 国产成人免费在线观看不卡| 久久人人超碰精品| 国产一区二区三区最好精华液| 91麻豆精品国产91久久久资源速度 | 国产精品二三区| 国产a区久久久| 国产精品卡一卡二| 色综合久久久久久久久久久| 亚洲蜜臀av乱码久久精品| 91天堂素人约啪| 亚洲女爱视频在线| 欧美无砖专区一中文字|