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

正文內(nèi)容

d1-畢業(yè)設(shè)計正文:基于spi總線接口的數(shù)字電子萬年歷仿真設(shè)計-資料下載頁

2025-08-04 23:56本頁面
  

【正文】 //將百位數(shù)字的字符常量寫入LCD WriteData(digit[k])。 //將十位數(shù)字的字符常量寫入LCD WriteData(digit[l])。 //將個位數(shù)字的字符常量寫入LCD delaynms(50)。 //延時1ms給硬件一點反應(yīng)時間 }/*****************************************************函數(shù)功能:顯示溫度的小數(shù)數(shù)部分入口參數(shù):x***************************************************/ void display_temp2(uchar x){ WriteAddress(0x80+0x40+0x04)。 //寫顯示地址,將在第2行第11列開始顯示 WriteData(digit[x])。 //將小數(shù)部分的第一位數(shù)字字符常量寫入LCD delaynms(50)。 //延時1ms給硬件一點反應(yīng)時間}/*****************************************************函數(shù)功能:做好讀溫度的準(zhǔn)備***************************************************/ void ReadyReadTemp(void){ Init_DS18B20()。 //將DS18B20初始化 WriteOneChar(0xCC)。 // 跳過讀序號列號的操作 WriteOneChar(0x44)。 // 啟動溫度轉(zhuǎn)換 for(time=0。time100。time++) 。 //溫度轉(zhuǎn)換需要一點時間 Init_DS18B20()。 //將DS18B20初始化 WriteOneChar(0xCC)。 //跳過讀序號列號的操作 WriteOneChar(0xBE)。 //讀取溫度寄存器,前兩個分別是溫度的低位和高位 }/******************************************* 向1302寫一個字節(jié)*******************************************/void input_BYTE(uchar dat){ uchar i。 ACC=dat。 for(i=8。i0。i) { T_IO=ACC0。 T_CLK=1。 T_CLK=0。 ACC=(ACC1)。 }}/******************************************* 1302讀出一個字節(jié)*******************************************/uchar output_BYTE(){ uchar i。 for(i=8。i0。i) { ACC=(ACC1)。 ACC7=T_IO。 T_CLK=1。 T_CLK=0。 } return (ACC)。}/******************************************* 寫數(shù)據(jù)*******************************************/void write_1302(uchar add,uchar dat){ T_RST=0。 T_CLK=0。 T_RST=1。 input_BYTE(add)。 input_BYTE(dat)。 T_CLK=1。 T_RST=0。}/******************************************* 讀數(shù)據(jù)*******************************************/uchar read_1302(uchar add){ uchar inf。 T_RST=0。 T_CLK=0。 T_RST=1。 input_BYTE(add)。 inf=output_BYTE()。 T_CLK=1。 T_RST=0。 return (inf)。}void init_1302(){ write_1302(0x8e,0x00)。//關(guān)閉寫保護(hù)。// write_1302(0x90,0xaa)。//設(shè)置充電方式。 write_1302(0x80,0x00)。//秒寄存器初始化。 write_1302(0x82,0x29)。//分....... write_1302(0x84,0x08)。//時....... write_1302(0x86,0x03)。//日........ write_1302(0x88,0x06)。//月....... write_1302(0x8a,0x05)。//星期... write_1302(0x8c,0x11)。//年...... write_1302(0x8e,0x80)。//打開寫保護(hù)。 }/********************************** 鬧鐘顯示子程序**********************************/void show_naozhong(uchar x,uchar y){ uchar i,x1,x2,y1,y2。 x1=x/10。 //十位 x2=x%10。//個位 WriteAddress(0x80+0x0b)。 //顯示鬧鐘的小時部分 WriteData(table1[x1])。 WriteAddress(0x80+0x0c)。 WriteData(table1[x2])。 y1=y/10。 //十位 y2=y%10。//個位 WriteAddress(0x80+0x0e)。 //顯示鬧鐘的分鐘部分 WriteData(table1[y1])。 WriteAddress(0x80+0x0f)。 WriteData(table1[y2])。 WriteAddress(0x80+0x0d)。 //顯示小時與分鐘之間的那個冒號 WriteData(39。:39。)。 WriteAddress(0x80)。 //顯示字符串:Alarm Clock for(i=0。i11。i++) { WriteData(table[i])。 } WriteAddress(0x80+0x40)。 //顯示字符串:Today is fine! for(i=0。i14。i++) { WriteData(table3[i])。 } }void main(void) { uchar i。 uchar TL。 //儲存暫存器的溫度低位 uchar TH。 //儲存暫存器的溫度高位 uchar TN。 //儲存溫度的整數(shù)部分 uchar TD。 //儲存溫度的小數(shù)部分 LcdInitiate()。 //將液晶初始化 init_1302()。 delaynms(5)。 //延時5ms給硬件一點反應(yīng)時間 // if(Init_DS18B20()==1) // display_error()。 EA=1。//開總中斷 EX1=1。//開外部中斷1 IT1=0。//下降沿觸發(fā) WriteAddress(0x80+0x10)。 for(i=0。i6。i++) { WriteData(table4[i])。 } WriteAddress(0x80+0x50)。 for(i=0。i16。i++) { WriteData(table5[i])。 } for(i=0。i16。i++) { write_(0x18)。 delaynms(250)。 } delaynms(250)。 delaynms(250)。 delaynms(250)。 write_(0x01)。 while(1) { t_sec=read_1302(0x81)。//讀秒 。 sec1=t_secamp。0x0f。 sec2=(t_sec4)。 t_min=read_1302(0x83)。//讀分 。 min1=t_minamp。0x0f。 min2=(t_min4)。 t_hour=read_1302(0x85)。//讀小時 。 hour1=t_houramp。0x0f。 hour2=(t_hour4)。// WriteAddress(0x80+0x40+0x08)。 //顯示小時// WriteData(table1[hour2])。 // WriteAddress(0x80+0x40+0x09)。// WriteData(table1[hour1])。 t_day=read_1302(0x87)。//讀日。 day1=t_dayamp。0x0f。 day2=(t_day4)。 t_mon=read_1302(0x89)。//讀月 。 mon1=t_monamp。0x0f。 mon2=(t_mon4)。 week=read_1302(0x8b)。//讀星期 。 week1=weekamp。0x0f。 t_year=read_1302(0x8d)。//讀年 。 year1=t_yearamp。0x0f。 year2=(t_year4)。 WriteAddress(0x80+0x06)。 WriteData(39。239。)。 WriteAddress(0x80+0x07)。 WriteData(39。039。)。 WriteAddress(0x80)。 //顯示星期(0x80~0x80+0x05) for(i=0。i4。i++) { WriteData(table2[i])。 } WriteAddress(0x80+0x04)。 WriteData(table1[week1])。 WriteAddress(0x80+0x08)。//顯示年 WriteData(table1[year2])。 WriteAddress(0x80+0x09)。 WriteData(table1[year1])。 WriteAddress(0x80+0x0a)。 //顯示‘/’ WriteData(39。/39。)。 WriteAddress(0x80+0x0b)。//顯示月 WriteData(table1[mon2])。 WriteAddress(0x80+0x0c)。 WriteData(table1[mon1])。 WriteAddress(0x80+0x0d)。 //顯示‘/’ WriteData(39。/39。)。 WriteAddress(0x80+0x0e)。//顯示日 WriteData(table1[day2])。 WriteAddress(0x80+0x0f)。 WriteData(table1[day1])。 /*第一行在此顯示完畢*/ display_dot()。 //顯示溫度的小數(shù)點 display_cent()。 //顯示溫度的單位 WriteAddress(0x80+0x40+0x08)。 //顯示小時 WriteData(table1[hour2])。 WriteAddress(0x80+0x40+0x09)。 WriteData(table1[hour1])。 WriteAddress(0x80+0x40+0x0a)。 //顯示39。:39。 WriteData(39。:39。)。 WriteAddress(0x80+0x40+0x0b)。 //顯示分鐘 WriteData(table1[min2])。 WriteAddress(0x80+0x40+0x0c)。 WriteData(table1[min1])。 WriteAddress(0x80+0x40+0x0d)。 //顯示39。:39。 WriteData(39。:39。)。 WriteAddress(0x80+0x40+0x0e)。 //顯示秒 WriteData(table1[sec2])。 WriteAddress(0x80+0x40+0x0f)。 WriteData(table1[sec1])。 /*第二行在此顯示完畢*/ ReadyReadTemp()。 //讀溫度準(zhǔn)備 TL=ReadOneChar()。 //先讀的是溫度值低位 TH=ReadOneChar()。 //接著讀的是溫度值高位 TN=TH*16+TL/16。 //實際溫度值=(TH*256+TL)/16,即:TH*16+TL/16 //這樣得出的是溫度的
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1