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

正文內容

基于51單片機電子鬧鐘或萬年歷的設計課程設計精-資料下載頁

2024-11-17 21:42本頁面

【導讀】時間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人忘記當前。忘記了要做的事情,當事情不是很重要的時候,這種遺忘無傷大雅。但是,一旦重要事情,一時的耽誤可能釀成大禍。例如,許多火災都是由于人。們一時忘記了關閉煤氣或是忘記充電時間等造成的。而鐘表的數字化給人們生。產生活帶來了極大的方便。數字鐘是通過數字電路實現時,分,秒數字顯示的計時。由于數字集成電路的發(fā)展和石英晶體振蕩器的廣泛應用,使得數。設備、甚至各種定時電氣的自動啟用等。因此,研究數字鐘及擴大其應用,有著非?,F實的意義。本論文主要研究基于單片機的萬年歷設計。當程序執(zhí)行后,LCD顯示即時。時間、年月日、星期。設置4個操作鍵:K1,時間調整鍵;K2,上調鍵;K3,

  

【正文】 void DisplayHour(unsigned char x) { unsigned char i,j。 //j,k 十位和個位 i=x/10。//取十位 j=x%10。//取個位 WriteAddress(0x43)。 //寫顯示地址 ,將在第 2 行第 4 列開始顯示 WriteData(digit[i])。 //將百位數字的字符常量寫入 LCD WriteData(digit[j])。 //將十位數字的字符常量寫入 LCD delaynms(50)。 //延時 1ms 給硬件一點反應時間 } /***************************************************** 函數功能:顯示日 入口參數: x ***************************************************/ void DisplayDay(unsigned char x) { unsigned char i,j。 //j,k 十位和個位 i=x/10。//取十位 j=x%10。//取個位 WriteAddress(0x0c)。 //寫顯示地址 ,將在第 1 行第 13 列開始顯示 WriteData(digit[i])。 //將十位數字的字符常量寫入 LCD WriteData(digit[j])。 //將個位數字的字符 常量寫入 LCD delaynms(50)。 //延時 1ms 給硬件一點反應時間 } /***************************************************** 函數功能:顯示月 入口參數: x ***************************************************/ void DisplayMonth(unsigned char x) { unsigned char i,j。 //j,k 分別儲存十位和個 位 i=x/10。//取十位 j=x%10。//取個位 WriteAddress(0x09)。 //寫顯示地址 ,將在第 1 行第 10 列開始顯示 WriteData(digit[i])。 //將十位位數字的字符常量寫入 LCD WriteData(digit[j])。 //將個位數字的字符常量寫入 LCD delaynms(50)。 //延時 1ms 給硬件一點反應時間 } /***************************************************** 函數功能:顯示年 入口參數: x ***************************************************/ void DisplayYear(unsigned char x) { 武漢理工大學《單片機原理與應用課程設計》 30 unsigned char i,j。 //j,k 分別儲存十位和個位 i=x/10。//取十位 j=x%10。//取個位 WriteAddress(0x06)。 //寫顯示地址 ,將在第 1 行第 7 列開始顯示 WriteData(digit[i])。 //將十位位數字的字符常量寫入 LCD WriteData(digit[j])。 //將個位數字的字符常量寫入 LCD delaynms(50)。 //延時 1ms 給硬件一點反應時間 } /*******************************顯示時間 *************/ void showTime(){ unsigned char second,minute,hour,day,month,year。 //分別儲存苗、分、小時,日,月 ,年 unsigned char ReadValue。 //儲存從 1302 讀取的數據 WriteAddress(0x01)。 //寫 Date 的顯示地址 ,將在第 1 行第 2 列開始顯示 WriteData(39。D39。)。 //將字符常量寫入 LCD WriteData(39。A39。)。 //將字符常量寫入 LCD WriteData(39。T39。)。 //將字符常量寫入 LCD WriteData(39。E39。)。 //將字符常量寫入 LCD WriteData(39。:39。)。 //將字符常量寫入 LCD WriteAddress(0x08)。 //寫年月分隔符的顯示地址, 顯示在第 1 行第 9 列 WriteData(39。39。)。 //將字符常量寫入 LCD WriteAddress(0x0b)。 //寫月日分隔符的顯示地址, 顯示在第 1 行第 12 列 WriteData(39。39。)。 //將字符常量寫入 LCD WriteAddress(0x45)。 //寫小時與分鐘分隔符的顯示地址, 顯示在 第 2 行第 6 列 WriteData(39。:39。)。 //將字符常量寫入 LCD WriteAddress(0x48)。 //寫分鐘與秒分隔符的顯示地址, 顯示在第 2 行第 9 列 WriteData(39。:39。)。 //將字符常量寫入 LCD ReadValue = ReadSet1302(0x81)。 //從秒寄存器讀數據 second=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。//將讀出數據轉化 DisplaySecond(second)。 //顯示秒 ReadValue = ReadSet1302(0x83)。 //從分寄存器讀 minute=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 DisplayMinute(minute)。 //顯示分 ReadValue = ReadSet1302(0x85)。 //從時寄存器讀 hour=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 DisplayHour(hour)。 //顯示小時 ReadValue = ReadSet1302(0x87)。 //從日寄存器讀 day=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 DisplayDay(day)。 //顯示日 ReadValue = ReadSet1302(0x89)。 //從月寄存器讀 month=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 DisplayMonth(month)。 //顯示月 ReadValue = ReadSet1302(0x8d)。 //從年寄存器讀 year=((ReadValueamp。0xf0)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 DisplayYear(year)。 //顯示年 } /******************功能設置按鍵 ******************************/ void adjustTime(){ unsigned char ReadValue。 武漢理工大學《單片機原理與應用課程設計》 31 // if(K1==0) // { delaynms(10)。//延時 10ms,用于消抖 if(K1==0) { delaynms(10)。 while(!K1)。 while(settime){ /* switch(settime) { case 0: WriteInstruction(0x0c)。 showTime()。 break。 case 1: WriteAddress(0x07)。 WriteInstruction(0xff)。 break。 case 2: WriteAddress(0x0a)。 WriteInstruction(0xff)。 break。 case 3: WriteAddress(0x0d)。 WriteInstruction(0xff)。 break。 case 4: WriteAddress(0x44)。 WriteInstruction(0xff)。 break。 case 5: WriteAddress(0x47)。 WriteInstruction(0xff)。 break。 case 6: WriteAddress(0x4b)。 WriteInstruction(0xff)。 break。 }*/ //********************上調鍵 ******************** if(K2==0) { delaynms(10)。 if(K2==0) { delaynms(10)。 while(!K2)。 ReadValue = ReadSet1302(0x8d)。 //從年寄存器讀 nian=((ReadValueamp。0xf0)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 ReadValue = ReadSet1302(0x89)。 //從月寄存器讀 yue=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 ReadValue = ReadSet1302(0x87)。 //從日寄存器讀 tian=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 ReadValue = ReadSet1302(0x85)。 //從時寄存器讀 shi=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 ReadValue = ReadSet1302(0x83)。 //從分寄存器讀 武漢理工大學《單片機原理與應用課程設計》 32 fen=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。 //將讀出數據轉化 ReadValue = ReadSet1302(0x81)。 //從秒寄存器讀數據 miao=((ReadValueamp。0x70)4)*10 + (ReadValueamp。0x0F)。//將讀出數據轉化 switch(settime) { case 0: showTime()。 break。 case 1: nian++。 //顯示年 if(nian==100)nian=99。 break。 case 2: yue++。 if(yue==13)yue=1。 break。 case 3: tian++。 if(tian==32)tian=1。 break。 case 4: shi++。 if(shi==24)shi=0。 break。
點擊復制文檔內容
醫(yī)療健康相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1