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

正文內(nèi)容

基于單片機(jī)的筆筒萬(wàn)年歷-文庫(kù)吧資料

2024-11-24 19:59本頁(yè)面
  

【正文】 write_1302(0x8e,0x00)。 writetime(0x06,miao)。//按鍵松開(kāi) switch(keynum) { case 1:miao++。 beep=1。 if(key2==0) { beep=0。 break。 write_1302(0x80,0x00|temp)。//重新打開(kāi)定時(shí)器 temp=(miao)/10*16+(miao)%10。//第 8 次,光 標(biāo)不閃爍 alarmflag=1。//年的位置 break。//月的位置 break。//日的位置 break。//星期的位置 break。//時(shí)的位置 break。//分的位置 break。 break。 write_1302(0x80,0x80|temp)。//設(shè)置為光標(biāo)閃爍 temp=(miao)/10*16+(miao)%10。//關(guān)閉定時(shí)器 write(h2+0x07)。 if(keynum==9) keynum=1。/*按下標(biāo)志,用于防止調(diào)節(jié)時(shí)間時(shí)鳴叫 */ while(!key1)。 beep=1。//延時(shí) if(key1==0) { beep=0。 break。739。 break。639。 break。539。 break。439。 break。339。 break。239。//括號(hào)內(nèi)寫入 1 注意是單引號(hào) break。139。//顯示 } void writeweek(uchar week)//寫星期函數(shù) { write(h1+0x0e)。//在第一行顯示 writedata(0x30+sw)。//取得個(gè) 位數(shù)字 sw=dat/10。 } //年月日顯示函數(shù) void writeday(uchar add,uchar dat)//寫入年月日函數(shù) { uchar gw,sw。//第二行顯示 writedata(0x30+sw)。//取得個(gè)位數(shù) sw=dat/10。//顯示 “C”符號(hào),為液晶字符的地址碼(考慮是否要) } //時(shí)分秒顯示函數(shù) void writetime(uchar add,uchar dat)//寫入時(shí)分秒 { uchar gw,sw。//顯示 “176。//小數(shù)點(diǎn) writedata(0x30+xw)。 //數(shù)字 +30 得到顯示碼 writedata(0x30+gw)。 write(h2+add)。 /*特別注意此處 */ sw=dat/100。 } /*下面是相關(guān)數(shù)據(jù)的顯示函數(shù) */ //溫度顯示函數(shù) void writetemp(uchar add,uint dat)//寫入溫度值函數(shù)指定位置 { uchar gw,sw,xw。 t=tt*10+。 t=t|a1。 //后讀取高位 t=b1。 //讀取溫度寄存器 a1=ReadOneChar()。 //再次初始化 WriteOneChar(0xCC)。 //跳過(guò)讀取序列號(hào)的操作 WriteOneChar(0x44)。 Init_DS18B20()。 uint t=0。 } } uint ReadTemperature(void)//讀取溫度 { uchar a1=0。 DQ=1。0x01。i) { DQ=0。 for(i=8。 } return(dat)。//給脈沖信號(hào) if(DQ) dat|=0x80。//給脈沖信號(hào) dat=1。i0。 uchar dat=0。//稍作延時(shí)后如 W=0 則初始化成功 delay2(20)。//拉高 delay2(3)。//拉 低 delay2(29)。 delay2(8)。//區(qū)分 i,用 s 表示 } void Init_DS18B20(void)//初始化 DS18b20 { uchar W=0。//年: 11 */ write_1302(0x8e,0x80)。//日: 15 write_1302(0x88,0x03)。//時(shí): 12 write_1302(0x8a,0x04)。//秒: 00 write_1302(0x82,0x00)。 write_1302(0x8e,0x00)。//返回十進(jìn)制數(shù) } void ds1302_init()//1302 時(shí)鐘芯片初始化函數(shù) { RST=0。 return(shijin=shijin*10+(bcdamp。 } uchar turnBCD(uchar bcd)//BCD 碼轉(zhuǎn)換為十進(jìn)制函數(shù) { uchar shijin。 RST=0。 temp=read_byte()。 RST=1。 RST=0。 RST=0。 write_byte(dat)。 RST=1。 } void write_1302(uchar add,uchar dat)//向時(shí)鐘芯片寫入函數(shù),指定地址,數(shù)據(jù) { RST=0。 ACC=ACC1。 SCLK=1。a0。 } } uchar read_byte()//讀一個(gè)字節(jié)函數(shù) { RST=1。 SCLK=1。a) { IO=ACC0。 for(a=8。//第一行第一個(gè)字開(kāi)始寫入 } /*和 DS1302 時(shí)鐘芯片有關(guān)的函數(shù) */ void write_byte(uchar dat)//寫一個(gè)字節(jié)函數(shù) { ACC=dat。// 延時(shí) 3 秒 //write(0x01)。//第一行顯示制作者 print2(0x40,:544063550)。//光標(biāo)右移 write(0x01)。//設(shè)置為兩行顯示, 8 位顯示 write(0x0c)。 } *str=0。) { delay(130)。 while(*str!=39。 } *str=0。) { //delay(100)。 while(*str!=39。 en=0。 rw=0。//先測(cè)忙 P1=dat。 en=0。 rw=0。 P1=。//等待不忙 en=0。 en=1。//注意是 P3 組 rs=0。y)。x) for(y=110。 for(x=z。//蜂鳴器,用于報(bào)時(shí) sbit lcdbusy=P1^7。 sbit key3=P2^3。 //按鍵 sbit key1=P2^6。/*定義 DS18b20 管腳 */ sbit ACC0=ACC^0。 sbit RST=P2^2。//測(cè)忙線 //DS1302 芯片的管腳定義 sbit IO=P2^1。 //sbit led=P2^3。 sbit en=P3^2。//定義綠色 led 燈的管腳 sbit Yled=P0^1。 data uchar year_moon,month_moon,day_moon。 uint flag。/* 作品名:筆筒式萬(wàn)年歷 為了方便焊接, P1 組作數(shù)據(jù)口 P3組為液晶的控制管腳 報(bào)時(shí):7 :00-24 :00(加燈光) 之后的只有燈光提醒 兩個(gè) led 燈在左右兩邊(紫,黃) 加入節(jié)日提醒功能和溫度提醒功能 按鍵在后面 ,背光控制鍵在側(cè)面 同時(shí)按下加減鍵初始化時(shí)間(先加后減)。 農(nóng)歷顯示(其他: Have a good day?。? 晚安:中午 早上 提示 */ include include define uint unsigned int define uchar unsigned char uchar a,miao,shi,fen,ri,yue,nian,week,keynum,temp,flagtime,ledcount,count,alarmflag,flagT/* 時(shí)間分段標(biāo)志 */,year1,month1,day1,lednum。//取溫度 bit c_moon。 define h1 0x80 //LCD 第一行的初始化位置 define h2 0x80+0x40 //LCD 第二行初始化位置 sbit Gled=P0^0。//定義黃色 led 燈的管腳 //定義 1602 相關(guān)管腳 sbit rs=P3^4。 sbit rw=P3^3。/*控制背光 :15 腳(串聯(lián) 10 歐電阻)背光源正極 */ //sbit busy=P0^7。 sbit SCLK=P2^0。 sbit DQ=P2^7。//設(shè)置累加器 sbit ACC7=ACC^7。 sbit key2=P2^4。 sbit beep=P2^5。 void delay(uint z)//延時(shí)函數(shù) { uint x,y。x0。y0。 } void testbusy()//測(cè)忙函數(shù) { P1=0xff。 rw=1。 while(lcdbusy)。 } void write(uchar )//寫入指令函數(shù) { testbusy()。 rs=0。 en=1。 } void writedata(uchar dat)//寫入數(shù)據(jù)函數(shù) { testbusy()。 rs=1。 en=1。 } void print(uchar a3,uchar *str)//寫字符串函數(shù)(沒(méi)有延時(shí)) { write(a3|0x80)。\039。//延時(shí)一下 writedata(*str++)。 } void print2(uchar a2,uchar *str)//用于頭字條的顯示延時(shí) { write(a2|0x80)。\039。//延時(shí)一下 writedata(*str++)。 } void lcdinit()//1602 初始化函數(shù) { write(0x38)。//開(kāi)顯示,不顯示光標(biāo) write(0x06)。//清零 print2(0x80,MAKE:WU HAO RONG)。//第二行顯示制作人 delay(3000)。//再次清零 //write(h1)。 RST=1。a0。 SCLK=0。 ACC=ACC1。 for(a=8。a) { ACC7=IO。 SCLK=0。 } return (ACC)。 SCLK=0。 write_byte(add)。 SCLK=1。 } uchar read_1302(uchar add)//從芯片讀出數(shù)據(jù),指定地址 { uchar temp。 SCLK=0。 write_byte(add)。 SCLK=1。 return(temp)。 shijin=bcd4。=0x0f))。 SCLK=0。//允許寫 /*write_1302(0x80,0x00)。//分: 00 write_1302(0x84,0x12)。//周: 4 write_1302(0x86,0x15)。//月: 3 write_1302(0x8c,0x11)。//打開(kāi)保護(hù) } /*以下是溫度芯片 DS18b20 的相關(guān)函數(shù) */ void delay2(uint s)//延時(shí),用于溫度程序部分 { while(s)。//注意是 w DQ=1。 DQ=0。//延時(shí)大于 480us(此處延時(shí)時(shí)間不確定,實(shí)際時(shí)修改) DQ=1。//(時(shí)間不確定) W=DQ。 } uchar ReadOneChar(void) //DS18b20 讀一個(gè)字節(jié)函數(shù) { uchar i=0。 for(i=8。i) { DQ=0。//右移一位 DQ=1。 delay2(4)。 } void WriteOneChar(uchar dat)//寫一個(gè)字節(jié)函數(shù) { uchar i=0。i0。 DQ=datamp。 delay2(5)。 dat=1。//用于合并 uchar b1=0。 float tt=0。 WriteOneChar(0xCC)。 //啟動(dòng)溫度轉(zhuǎn)換 Init_DS18B20()。 //跳過(guò)讀取序列號(hào) WriteOneChar(0xBE)。 //先讀取低位 b1=ReadOneChar()。 t=8。 tt=t*。//放大 10 倍并四舍五入 return(t)。 //個(gè)位,十位,小數(shù)位(注意得到為三位有效數(shù)) gw=dat%100/10。 xw=dat%10。 //h2 為頭文件規(guī)定的值 0x80+0x40 wr
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1