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

正文內(nèi)容

多功能計(jì)算器的設(shè)計(jì)畢業(yè)設(shè)計(jì)(論文)-資料下載頁(yè)

2025-08-18 14:17本頁(yè)面

【導(dǎo)讀】選用了AT89C52單片機(jī),采用TC1602液晶顯示器,輸入按鍵為4×4矩陣鍵盤(pán),通過(guò)軟硬。件相結(jié)合,來(lái)實(shí)現(xiàn)整數(shù)的“加”、“減”、“乘”、“除”運(yùn)算。在計(jì)算器基本功能順利完成的。本計(jì)算器系統(tǒng)簡(jiǎn)單,實(shí)用性強(qiáng),成本低,使用維護(hù)方便,軟件功能強(qiáng),運(yùn)行穩(wěn)定

  

【正文】 Word(0,0x80+0x08)。 LCDTestWord(1,(sec/16)+0x30)。 LCDTestWord(1,sec%16+0x30)。 } void display_name(void) //顯示笑臉 { write_(0x80+0x4a)。 write_date(0x5e)。 write_date(0x5f)。 write_date(0x5e)。 } void UpDate(void) //顯示時(shí)間函數(shù) 南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(jì) (論文) 33 { display_hour()。 display_min()。 display_sec()。 } void SetTime(unsigned char count) //設(shè)置時(shí)間子函數(shù) { unsigned char address,item。 unsigned char max,mini。 write_(0x80+0x40)。 if(count==3) { write_date(0x73)。address=0x81。 max=59。mini=0。} if(count==2) {write_date(0x6d)。address=0x83。 max=59。mini=0。} if(count==1) {write_date(0x68)。address=0x85。 max=23。mini=0。} item=read_ds1302(address)。 //讀取 DS1302 某地址上的數(shù)值賦給 item item=(item/16)*10+item%16。 if(pluskey==0) //PlusKey 加 item++。 //數(shù)加 1 if(reducekey==0) //ReduceKey 減 item。 //數(shù)減 1 if(itemmax) item=mini。 //查看數(shù)值有效范圍 if(itemmini) item=max。 write_ds1302(0x8e,0x00)。 item=(item/10)*16+item%10。 write_ds1302(address1,item)。 //將調(diào)整好的 item值寫(xiě)入 DS1302 UpDate()。 } void Key(void) //設(shè)置時(shí)間函數(shù) { if (setkey==0) // 設(shè)置時(shí)間 { delay(20)。 //按鍵消抖 if(setkey==0amp。amp。w==0) //當(dāng)是正常狀態(tài)時(shí)就進(jìn)入調(diào)時(shí)狀態(tài) { w=1。 //進(jìn)入調(diào)時(shí) SetTime(next)。 //調(diào)整 } if(setkey==0amp。amp。w==1) //當(dāng)是調(diào)時(shí)狀態(tài),本鍵用于調(diào)整下一項(xiàng) { next++。 if(next3) {next= 0。} SetTime(next)。 //調(diào)整 附錄 34 } while(setkey==0)。 //等待鍵松開(kāi) } if(surekey==0) // 當(dāng)在調(diào)時(shí)狀態(tài)時(shí)就退出調(diào)時(shí) { delay(20)。 //按鍵消抖 if(surekey==0amp。amp。w==1) { w=0。 next=0。 write_(0x80+0x40)。 write_date(0x20)。 } while(surekey==0)。 //等待鍵松開(kāi) } if (pluskey==0) //加調(diào)整 { delay(20)。 //按鍵消抖 if(pluskey==0amp。amp。w==1) { SetTime(next)。 //調(diào)整 } while(pluskey==0)。 //等待鍵松開(kāi) } if (reducekey==0) //減調(diào)整 { delay(20)。 //按鍵消抖 if(reducekey==0amp。amp。w==1) { SetTime(next)。 //調(diào)整 } while(reducekey==0)。 //等待鍵松開(kāi) } } void error() //報(bào)錯(cuò)函數(shù) { write_(0x80+0x4f)。 for(k=0。k5。k++) write_date(err[k])。 a=0。b=0。flag=0。fuhao=0。 } void keyscan() //鍵盤(pán)掃描函數(shù)(包含運(yùn)算模塊程序) 南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(jì) (論文) 35 {P1=0xfe。 //掃描第 0 行 if(P1!=0xfe) { delay(20)。 //消抖 if(P1!=0xfe) { temp=P1amp。0xf0。 switch(temp) { case 0xe0:num=0。 break。 case 0xd0:num=1。 break。 case 0xb0:num=2。 break。 case 0x70:num=3。 break。 } } while(P1!=0xfe)。 if(num==0||num==1||num==2||num==3)//如果按下的是 39。039。,39。139。,39。239?;?39。339。 { if(j!=0) { write_(0x01)。 j=0。 } if(flag==0)//沒(méi)有按過(guò)符號(hào)鍵 { a=a*10+table[num]。 } else //如果按過(guò)符號(hào)鍵 { b=b*10+table[num]。 } } i=table1[num]。 write_date(0x30+i)。 } P1=0xfd。 //掃描第 1 行 if(P1!=0xfd) { delay(20)。 if(P1!=0xfd) { temp=P1amp。0xf0。 switch(temp) { case 0xe0:num=4。 break。 case 0xd0:num=5。 break。 case 0xb0:num=6。 break。 case 0x70:num=7。 break。 } } 附錄 36 while(P1!=0xfd)。 if(num==4||num==5||num==6||num==7)//如果按下的是 39。439。,39。539。,39。639。或 39。739。 { if(j!=0) {write_(0x01)。 j=0。 } if(flag==0)//沒(méi)有按過(guò)符號(hào)鍵 { a=a*10+table[num]。 } else//如果按過(guò)符號(hào)鍵 { b=b*10+table[num]。 } } i=table1[num]。 write_date(0x30+i)。 } P1=0xfb。 //掃描第 3 行 if(P1!=0xfb) { delay(20)。 if(P1!=0xfb) { temp=P1amp。0xf0。 switch(temp) { case 0xe0:num=8。 break。 case 0xd0:num=9。 break。 case 0xb0:num=10。 break。 case 0x70:num=11。 break。 } } while(P1!=0xfb)。 if(num==8||num==9)//如果按下的是 39。839。,39。939。 { if(j!=0) { write_(0x01)。 j=0。 } if(flag==0) //沒(méi)有按過(guò)符號(hào)鍵 { a=a*10+table[num]。 } else //如果按過(guò)符號(hào)鍵 { b=b*10+table[num]。 } } else if(num==10) //表示按下的是 39。加號(hào)鍵 39。 南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(jì) (論文) 37 { flag=1。 fuhao=1。 } else if(num==11)//表示按下的是 39。減號(hào)鍵 39。 { flag=1。 fuhao=2。 } i=table1[num]。 write_date(0x30+i)。 } P1=0xf7。 //掃描第 4 行 if(P1!=0xf7) { delay(20)。 if(P1!=0xf7) { temp=P1amp。0xf0。 switch(temp) { case 0xe0:num=12。 break。 case 0xd0:num=13。 break。 case 0xb0:num=14。 break。 case 0x70:num=15。 break。 } } while(P1!=0xf7)。 switch(num) { case 12:{ write_date(0x30+table1[num])。flag=1。fuhao=3。 }//表示按下的是 39。乘號(hào)鍵 39。 break。 case 13:{ write_date(0x30+table1[num])。flag=1。fuhao=4。 } //表示按下的是 39。除號(hào)鍵 39。 break。 case 14:{ j=1。 if(fuhao==1) //進(jìn)行加法運(yùn)算; { write_(0x80+0x4f)。//光標(biāo)前進(jìn)至第二行最后一個(gè)顯示處 write_(0x04)。 //設(shè)置從后住前寫(xiě)數(shù)據(jù),每寫(xiě)完一個(gè)數(shù)據(jù),光標(biāo)后退一格 if(((a0amp。amp。ad)amp。amp。bda)) { error()。 break。} // 加法溢出錯(cuò)誤 c=a+b。 if(c==0) write_date(0x30)。 if(c0) c=c。 while(c!=0) { write_date(0x30+c%10)。 c=c/10。 } if(a+b0) write_date(0x2d)。 write_(0x80+0x40)。 附錄 38 a=a+b。b=0。flag=0。fuhao=0。 } else if(fuhao==2) //進(jìn)行減法運(yùn)算 {write_(0x80+0x4f)。 write_(0x04)。 if(((a0amp。amp。ae)amp。amp。bae)) { error()。 break。} //減法溢出錯(cuò)誤 if(ab0) c=ab。 else c=ba。 if(c==0) write_date(0x30)。 while(c!=0) {write_date(0x30+
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1