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

正文內(nèi)容

電子萬年歷的設(shè)計(jì)畢業(yè)論文一稿(留存版)

2025-08-11 15:20上一頁面

下一頁面
  

【正文】 序流程圖 溫度計(jì)算子程序 此段程序主要功能是將 RAM 中的讀取值進(jìn)行 BCD 碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定。陽歷顯示流程圖如下圖 8所示。位 0 是讀、寫操作位,進(jìn)行讀操作時(shí),該位為“1”;進(jìn)行寫操作時(shí),該位為“0”。上電運(yùn)行時(shí),在 VCC 大于等于 之前,RST 必須保持低電平。3 系統(tǒng)的硬件設(shè)計(jì)與實(shí)現(xiàn) 硬件電路設(shè)計(jì)框圖AT89C52主控制模 塊LED 數(shù)碼管動(dòng)態(tài)掃描顯示模塊DS1302 時(shí)鐘模塊鍵盤控制模塊溫度采集模塊圖 1 硬件電路設(shè)計(jì)框圖 系統(tǒng)硬件概述本電路以 AT89C52 單片機(jī)為控制核心,具有在線編程功能,低功耗,能在 3V 的超低壓下工作;時(shí)鐘電路由 DS1302 提供,它是一種高性能、高精度、低功耗、帶 RAM 的實(shí)時(shí)時(shí)鐘電路,可以對(duì)年、月、日、星期、時(shí)、分、秒進(jìn)行計(jì)時(shí),并具有閏年補(bǔ)償功能,工作電壓為,采用三線接口與 CPU 進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或 RAM 數(shù)據(jù),同時(shí)具有掉電自動(dòng)保存功能;溫度采集電路由 DS18B20 構(gòu)成;顯示部分由液晶顯示器 LCD1602構(gòu)成。綜合考慮,選擇采用 AT89C52 芯片作為主控制芯片。本設(shè)計(jì)的主控模塊使用 AT89C5時(shí)鐘電路使用時(shí)鐘芯片 DS130顯示模塊使用液晶顯示器 LCD160溫度檢測(cè)使用 DS18B20 溫度傳感器、鍵盤接口電路使用普通按鍵接上拉電阻完成;軟件利用 C 語言編程實(shí)現(xiàn)單片機(jī)程序控制。為此我設(shè)計(jì)了這種基于 52 單片機(jī)的電子萬年歷。此設(shè)計(jì)方案需用 A/D 轉(zhuǎn)換電路,增加硬件成本而且熱敏電阻的感溫特性曲線并不是嚴(yán)格線性的,會(huì)產(chǎn)生較大的測(cè)量誤差。X1 和 X2 為振蕩源,外接 晶振。表 2 為 DS1302 的日歷、時(shí)間寄存器內(nèi)容。DS1302 與 RAM 相關(guān)的寄存器分為兩類:一類是單個(gè) RAM 單元,共 31 個(gè),每個(gè)單元組態(tài)為一個(gè)8 位的字節(jié),其命令控制字為 COHFDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的 RAM 寄存器,此方式下可一次性讀寫所有的 RAM 的 31 個(gè)字節(jié),命令控制字為 FEH(寫)、FFH(讀)。程序流程圖如上圖 11 所示。經(jīng)檢查無誤之后,對(duì)程序進(jìn)行編譯、連接、運(yùn)行,生成.hex 文件。至此,整個(gè)系統(tǒng)軟件、硬件的編寫、制作與調(diào)試結(jié)束,各項(xiàng)指標(biāo)和目的全部實(shí)現(xiàn),本設(shè)計(jì)任務(wù)基本完成。這次畢業(yè)論文能夠得以順利完成,并非我一人之功勞,是所有指導(dǎo)過我的老師和幫助過我的同學(xué)對(duì)我的教誨、幫助和鼓勵(lì)的結(jié)果,我要在這里對(duì)他們表示深深的謝意。sbit ACC7 = ACC^7。sbit LcdEn =P2^7。//注意順序LcdEn=1。\039。 for(i=8。 DS1302_RST = 1。TimeSecond = ((ReadValueamp。TimeWeek = ((ReadValueamp。039。039。039。 TimeTimeString[1] = 39。 TimeTimeString[7] = TimeSecond%10 + 39。Write1302(0x82,0x00)。i0。 }}/**************讀取 ds18b20 當(dāng)前溫度************/void ReadTemp(void){unsigned char a=0。 }void temp_to_str() //溫度數(shù)據(jù)轉(zhuǎn)換成液晶字符顯示{ TempBuffer[0]=temp_value/10+39。 for(。while(wireless_1==1)。 //小時(shí)數(shù)加 1 up_flag=1。 if(temp0x12) temp=1。 break。 case 5: temp=Read1302(DS1302_DAY)。 } while(Down==0)。 //掃描跳出按鈕 Upkey()。 if(temp0x60) temp=0。 //寫入允許 Write1302(0x84,temp)。 //禁止寫入 up_flag=0。 Downkey()。 outkey()。 case 2:do //count=2,調(diào)整分 { hide_sec=0。 Write1302(0x8e,0x80)。 //年數(shù)減 1 down_flag=1。 //讀取星期數(shù)temp=temp1。 switch(count) {case 1: temp=Read1302(DS1302_SECOND)。 break。 if(temp0x59) //超過 59 分,清零 temp=0。0x7f)。i++)for(j=0。 //讀取溫度值低位b=ReadOneChar()。0x01。 //稍做延時(shí)后 如果 x=0 則初始化成功 x=1 則初始化失敗 delay_18B20(20)。 //以下寫入初始化時(shí)間 日期:09/01/: 4. 時(shí)間: 00:00:00Write1302(0x88,0x01)。 }TimeTimeString[5] = 39。 TimeTimeString[1] = TimeHour%10 + 39。 39。/39。239。TimeDay = ((ReadValueamp。 DS1302_RST = 0。 DS1302_CLK = 0。}SYSTEMTIME。 //清屏LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE)。LcdRw=0。 //液晶顯示程序/***********1602 液晶顯示部分子程序****************///Port Definitions**********************************************************sbit LcdRs =P2^5。sbit wireless_2 = P3^1。測(cè)試[M].武漢:華中科技大學(xué)出版[8] C 語言程序設(shè)計(jì)實(shí)訓(xùn) 100 例[M].北京:電子工業(yè)出版[9][M].西安:西安電子科技大學(xué)出版社.2022[10][M].北京:致謝經(jīng)過了幾個(gè)月的設(shè)計(jì)制作與調(diào)試,終于順利完成畢業(yè)設(shè)計(jì)的所有要求,將電子萬年歷制作出來。亮度不夠問題可以通過調(diào)節(jié)滑動(dòng)變阻器來解決。Keil 提供了包括 C 編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。圖 9 時(shí)間調(diào)整程序流程圖 溫度數(shù)據(jù)采集與顯示程序設(shè)計(jì) 此程序主要包括基本功能實(shí)現(xiàn)程序、讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、溫度計(jì)算子程序、顯示數(shù)據(jù)刷新子程序。WP 是寫保護(hù)位,在任何對(duì)時(shí)鐘和 RAM 的寫操作之前,WP 必須為“0”。此外,VEE 接一個(gè) 10K 的滑動(dòng)變阻器,這樣就可以對(duì)液晶顯示器的亮度進(jìn)行調(diào)節(jié)。 時(shí)鐘電路模塊的設(shè)計(jì) 圖 3 DS1302 引腳連線圖圖 3 表示出 DS1302 的引腳排列,其中 VCC1 為后備電源,VCC2 為主電源。采用此方案雖然可以減少芯片的使用,節(jié)約成本,但是實(shí)現(xiàn)的時(shí)間誤差較大,所以不采用此方案。電子萬年歷是一種應(yīng)用非常廣泛的日常計(jì)時(shí)工具,數(shù)字顯示的日歷鐘已經(jīng)越來越流行,特別是適合在家庭居室、辦公室、大廳、會(huì)議室、車站和廣場(chǎng)等使用。 temperature sensor??傮w可以考慮。圖 2 AT89C52 主控制系統(tǒng)AT89C52 單片機(jī)為 40 引腳雙列直插芯片,有四個(gè) 8 位 I/O 口PPP3 和 P4,每一條 I/O 線都能獨(dú)立地作為輸出或輸入。此類傳感器僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,使用 與 DS18B20 的 I/O 口連接,加上一個(gè)上拉電阻,VCC 接電源,GND 接地。如下圖 6 所示。利用定時(shí)器計(jì)時(shí),當(dāng)達(dá)到 50ms 溢出時(shí),就送給該位熄滅符,在下一次溢出時(shí),再送正常顯示的值,不斷交替,直到調(diào)整該位結(jié)束。圖 14 顯示數(shù)據(jù)刷新子程序流程圖5 系統(tǒng)仿真與調(diào)試 系統(tǒng)仿真本設(shè)計(jì)使用的仿真軟件為 PROTEUS 軟件和 Keil C51 軟件。然后通電,觀察硬件運(yùn)行情況。因此,此種電子萬年歷的生產(chǎn)和發(fā)展是非常有必要的,它具有非常廣闊的市場(chǎng)空間與發(fā)展前景,有著很大的現(xiàn)實(shí)意義。 //實(shí)時(shí)時(shí)鐘數(shù)據(jù)線引腳 sbit DS1302_RST = P1^5。uchar temp_value。return DBPort。 //8 位數(shù)據(jù)端口,2 行顯示,5*7 點(diǎn)陣LCD_Write(LCD_COMMAND,0x38)。unsigned char Year。 i) { ACC = ACC 1。 DS1302InputByte(ucAddr|0x01)。0x70)4)*10 + (ReadValueamp。0x70)4)*10 + (ReadValueamp。 TimeDateString[3] = 39。 TimeDateString[9] = TimeDay%10 + 39。 ,判斷結(jié)束字符}void TimeToStr(SYSTEMTIME *Time) //將時(shí),分,秒數(shù)據(jù)轉(zhuǎn)換成液晶顯示字符放到數(shù)組 TimeString[]。 39。if(Secondamp。 //精確延時(shí) 大于 480us DQ = 1。 i0。 //跳過讀序號(hào)列號(hào)的操作WriteOneChar(0xBE)。}void Delay1ms(unsigned int count){unsigned int i,j。Second=Read1302(DS1302_SECOND)。 case 2: temp=Read1302(DS1302_MINUTE)。 //讀取日數(shù) temp=temp+1。 while(wireless_2==1)。 if(temp==1) temp=0x23。 break。 if(flag==0) //關(guān)閉時(shí)鐘,停止計(jì)時(shí) { Write1302(0x8e,0x00)。 show_time()。 }while(count==3)。 case 4:do //count=4,調(diào)整星期 { hide_hour=0。 if(hide_week3) hide_week=0。 down_flag=0。 //寫入新的分?jǐn)?shù) Write1302(0x8e,0x80)。 //寫入允許 Write1302(0x80,temp|0x80)。if(Set==0||wireless_4==1) { mdelay(8)。 if(temp==0) temp=31。 //分?jǐn)?shù)減 1 down_flag=1。 //讀取年數(shù) temp=temp+1。 case 4: temp=Read1302(DS1302_WEEK)。 switch(count) {case 1: temp=Read1302(DS1302_SECOND)。i62。039。Init_DS18B20()。 DQ = 1。 //禁止寫入}}/***********ds18b20 子程序*************************//***********ds18b20 延遲子函數(shù)(晶振 12MHz )*******/ void delay_18B20(unsigned int i){while(i)。 39。:39。 } week_value[1] = 39。 TimeDateString[6] = 39。} else { TimeDateString[0] = 39。ReadValue = Read1302(DS1302_MONTH)。ReadValue = Read1302(DS1302_MINUTE)。 // 寫 1Byte 數(shù)據(jù) DS1302_CLK = 1。 //相當(dāng)于匯編中的 RRC DS1302_CLK = 1。}}/***********DS1302 時(shí)鐘部分子程序******************/typedef struct __SYSTE
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1