freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于at89s51單片機的出租車計價器控制系統(tǒng)電路設計-資料下載頁

2024-12-07 09:35本頁面

【導讀】用8段數(shù)碼顯示管,顯示行駛總里程和總金額。模擬出租車計價器設計:進行里程顯示,預設起步價和起步公里數(shù);行程按全程收費,有復位功能和啟動功能,啟動后,開始計價。我們采用單片機進行設計,可以用較少的硬。附加功能,應用前景廣闊。

  

【正文】 while((SDA==1)amp。amp。(i250)) i++。 SCL=0。 delay()。 } void init() { SDA=1。 delay()。 SCL=1。 delay()。 } uchar read_byte() // 從 EEPROM 讀到 MCU 畢業(yè)設計 第 頁 19 { uchar i,j。 for(i=0。i8。i++) { SCL=1。 j=1。 j|=SDA。 SCL=0。 } return(j)。 } void write_byte(uchar date) // 從 MCU寫到 EEPROM { uchar i,temp。 temp=date。 for(i=0。i8。i++) { temp=temp1。 SCL=0。 delay()。 SDA=CY。 delay()。 畢業(yè)設計 第 頁 20 SCL=1。 delay()。 } SCL=0。 delay()。 SDA=1。 delay()。 } void write_data(uchar addr, uchar date) // 在指定地址 addr 處寫入數(shù)據(jù) date { start()。 write_byte(0xa0)。 respons()。 write_byte(addr)。 respons()。 write_byte(date)。 respons()。 stop()。 } uchar read_data(uchar addr) // 在指定地址 addr 讀取數(shù)據(jù) { uchar date。 start()。 畢業(yè)設計 第 頁 21 write_byte(0xa0)。 respons()。 write_byte(addr)。 respons()。 start()。 write_byte(0xa1)。 respons()。 date=read_byte()。 stop()。 return date。 } void xianshi()//顯示程序子程序 { for(flag=0。flag6。flag++) { P0= xscode[flag]。//送顯示碼 P2= zxscode[flag]。// 送片選碼 delay1(2)。 P0=0。 } } void jijia()//計費子程序 { if(kk=2)//計價方案 {jkk=4。//起步價 4 元 kk=2。 } else if(kk2amp。amp。kk=35) { jkk=4+dj*(kk2)+1。 } else if(kk35amp。amp。kk900) { jkk=4+2*dj*(kk2)+1。 } 畢業(yè)設計 第 頁 22 kflag=kk/100。//路程百位 jflag=jkk/100。//路費百位 xscode[2]=codetab[kflag]。 xscode[5]=codetab[jflag]。 kflag=kk/10。//路程十位 jflag=jkk/10。//路費十位 xscode[1]=codetab[kflag]。 xscode[4]=codetab[jflag]。 kflag=kk%10。//路程個位 jflag=jkk%10。//路費個位 if(kflag==0){kflag=2。}//不足兩公里時,顯示兩公里 xscode[0]=codetab[kflag]。 xscode[3]=codetab[jflag]。 } void qingling() { for(i=0。i=5。i++)//顯示碼清零 {xscode[i]=0x3f。} } void main()//主程序 { init()。 sec=read_data(2)。 if(sec100) sec=0。 TL0=(655362)%256 。//計數(shù)值設置,記滿兩次產(chǎn)生中斷 TH0=(655362)/256 。 TMOD=0x06。 EA=1。 ET0=1。 TR0=0。//關定時器 kilo=0。 qingling()。 aa: if(key1==0)//當鍵按下去,開始計費 {TR0=1。//開計數(shù)器 0 kk=kilo。 jijia()。} if(key1==1)//當鍵松開,停止計費 { TR0=0。//停計數(shù)器 1 if(key2==0)//功能調(diào)整鍵 { delay1(10)。//延時判斷鍵是否松開 if(key2==1) {xscode[2]=codetab[djflag++]。}//當 口的按鍵按下時功能標志位加一 } 畢業(yè)設計 第 頁 23 if(key3==0amp。amp。djflag==2)//當功能鍵標志位等 1 時,改變每公里的價錢 { delay1(10)。 if(key3==1) {dj++。} xscode[1]= codetab[dj/10] 。//把價錢十位送顯示區(qū),單價不能超 100 xscode[0]=codetab[dj%10]。 } if(key4==0)//有鍵按下,清顯示,單價會初始值,單價標志位清零 { qingling()。 dj=1。 djflag=0。 } } xianshi()。//調(diào)顯示子程序 goto aa。 } void Timer0_Int() interrupt 1 using 2 // 計數(shù)器 0 中斷服務 { zdflag=zdflag+1。//中斷標志位加一 if(zdflag==2)//當中斷產(chǎn)生二次后,路程加一公里并清中斷標志位 { zdflag=0。 kilo=kilo+1。 }
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1