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

正文內(nèi)容

電子萬(wàn)年歷的設(shè)計(jì)與制作畢業(yè)論文(完整版)

  

【正文】 課題的研究目的與意義二十一世紀(jì)是數(shù)字化技術(shù)高速發(fā)展的時(shí)代,而單片機(jī)在數(shù)字化高速發(fā)展的時(shí)代扮演著極為重要的角色。而且在操作的設(shè)計(jì)上要力求簡(jiǎn)潔,功能上盡量齊全,顯示界面也要出色。目前,單片機(jī)技術(shù)的應(yīng)用產(chǎn)品已經(jīng)走進(jìn)了千家萬(wàn)戶?;趩纹瑱C(jī)的電子萬(wàn)年歷結(jié)合了時(shí)鐘和日歷的功能,將其二者融為一體,在顯示時(shí)間的同時(shí)還能顯示日期和年、月,它主要是通過(guò)單片機(jī)來(lái)讀取時(shí)鐘芯片的時(shí)間、日期,然后送給顯示設(shè)備顯示出來(lái)。對(duì)于數(shù)字電子萬(wàn)年歷采用直觀的數(shù)字顯示,可以同時(shí)顯示年、月、日、時(shí)、分、秒和溫度等信息,還具有時(shí)間校準(zhǔn)等功能。(5)根據(jù)設(shè)計(jì)的硬件電路,編寫控制AT89S52芯片的單片機(jī)程序。同樣具有AT89S52的功能,且具有在線編程可擦除技術(shù),當(dāng)在對(duì)電路進(jìn)行調(diào)試時(shí),由于程序的錯(cuò)誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r(shí),不需要對(duì)芯片多次拔插,所以不會(huì)對(duì)芯片造成損壞。用其2個(gè)定時(shí)器、計(jì)數(shù)器產(chǎn)生震蕩周期。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流。P3口:P3口是一組帶內(nèi)部上拉電阻的8位雙向I/O,P3的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。ALE/PROG:當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存器允許)輸出脈沖用于鎖存地址的低8位字節(jié)。需要注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。當(dāng)WDT激活后,晶振工作,WDT在每個(gè)機(jī)器周期都會(huì)增加。串行口的發(fā)送和接收操作都是通過(guò)特殊功能寄存器中的數(shù)據(jù)緩沖寄存器SBUF進(jìn)行的,但在SBUF的內(nèi)部,接收寄存器和發(fā)送寄存器在物理結(jié)構(gòu)上是完全獨(dú)立的。另一種方式由外部時(shí)鐘源提供一個(gè)時(shí)鐘信號(hào)到XTAL1端輸入,而XTAL2端浮空。的直接地址訪問(wèn)同一個(gè)存儲(chǔ)空間,高于7FH的間接地址訪問(wèn)另一個(gè)存儲(chǔ)空間。在整個(gè)中斷響應(yīng)過(guò)程中CPU所執(zhí)行的操作步驟如下:(1)完成當(dāng)前指令的操作(2)將PC內(nèi)容壓入堆棧(3)保存當(dāng)前的中斷狀態(tài)(4)阻止同級(jí)的中斷請(qǐng)求(5)將中斷程序入口地址送PC寄存器(6)執(zhí)行中斷服務(wù)程序(7)返回 時(shí)鐘芯片DS1302接口設(shè)計(jì)與性能分析 DS1302性能簡(jiǎn)介DS1302是Dallas公司生產(chǎn)的一種實(shí)時(shí)時(shí)鐘芯片。VCC2在雙電源系統(tǒng)中提供主電源,在這種運(yùn)用方式中VCC1連接到備份電源,以便在沒(méi)有主電源的情況下能保存時(shí)間信息以及數(shù)據(jù)。位0是讀/寫操作位,進(jìn)行讀操作時(shí),該位為1;進(jìn)行寫操作時(shí),該位為0。 DS1302的控制字格式1 RAM/CKA4A3A2A1A0RD/WR數(shù)據(jù)輸入輸出(I/O)在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V~,使系統(tǒng)設(shè)計(jì)更靈活、方便。其輸出用于修正計(jì)數(shù)器1的預(yù)置值。如果RST持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài),而無(wú)法執(zhí)行程序。本設(shè)計(jì)采用上電且開關(guān)復(fù)位電路,由于電容充電,使RST持續(xù)一段高電平時(shí)間。 主程序流程圖的設(shè)計(jì):開始DS1302初始化設(shè)置DS1302讀年月日星期時(shí)分秒將讀取的數(shù)據(jù)處理后送液晶屏顯示返回 主程序流程圖 程序設(shè)計(jì) DS1302讀寫程序設(shè)計(jì)本系統(tǒng)的時(shí)間讀取主要來(lái)源于單片機(jī)對(duì)DS1302的操作,在硬件上時(shí)鐘芯片DS1302與單片機(jī)的連接需要三條線,即SCLK(7)、I/O(6)、RST(5),具體連接圖見(jiàn)系統(tǒng)硬件設(shè)計(jì)原理圖。uchar i。 0x01。 dat = 1。i8。i++) { clk = 0。 //返回讀出來(lái)的數(shù)據(jù)}void read_time(){ miao = read_ds1302(read_add[0])。 //農(nóng)歷轉(zhuǎn)換 n_nian = year_moon 。 //寫日 write_ds1302(write_add[4],yue)。 //地址最高兩位為 1 write_ds1302(0x8e,0x00)。 rst = 0。i7。 // 拉低總線 delay(29)。 for (i=8。 } return(value)。 // DQ = 1。也練就了我的耐心,做什么事都要有耐心。在此畢業(yè)設(shè)計(jì)完成之際,謹(jǐn)向?qū)熀退袔椭^(guò)我的老師致以崇高的敬意和衷心的感謝。還要對(duì)所有授課老師表示深深的謝意!正是他們的教導(dǎo),才能使我的知識(shí)得以豐富,使我的視野得以拓寬,使我的自身修養(yǎng)得以提高!感謝各位到場(chǎng)老師,是你們?cè)诎倜χ谐槌鰰r(shí)間來(lái)對(duì)我的論文進(jìn)行指導(dǎo),你們的意見(jiàn)和建議將是我一生的財(cái)富!感謝所有幫助過(guò)我的人們! 附錄 總程序include //調(diào)用單片機(jī)頭文件define uchar unsigned char //無(wú)符號(hào)字符型 宏定義 變量范圍0~255define uint unsigned int //無(wú)符號(hào)整型 宏定義 變量范圍0~65535include include bit flag_200ms 。 //農(nóng)歷 陽(yáng)歷顯示標(biāo)志位uchar menu_1,menu_2。 byte_write(0x2058, a_a)。 open1 = 1。 //750usdq = 1。i++) { //寫數(shù)據(jù)是低位開始 dq = 0。i8。 uchar low。 //發(fā)出讀取暫存器命令 EA = 0。 //返回讀出的溫度 帶小數(shù)}/******************1ms 延時(shí)函數(shù)*******************/void delay_1ms(uint q){ uint i,j。 switch(week) { case 1:write_data(39。)。 write_data(39。E39。)。 case 5:write_data(39。)。 write_data(39。U39。 //顯示分 write_sfm2_ds1302(1,7,miao)。 //顯示年 write_sfm2_ds1302(2,5,n_yue)。 if(open1 == 1) //如果鬧鐘打開 { if((miao == 0) amp。 //蜂鳴器停1秒 if(clock_value 40) { clock_value = 0。 //按鍵值void key() //獨(dú)立按鍵程序{ static uchar key_new。 (key_new == 1)) { //確認(rèn)是按鍵按下 key_new = 0。 //得到按鍵值 case 0x38: key_can = 1。 } if(menu_1 == 2) //設(shè)置鬧鐘 {menu_2 = 1。 if(menu_2 7) menu_2 = 1。 } if(key_can == 4) //減 { if(shi == 0x00) shi = 0x24。 if(fen = 0x60) fen = 0。 0xf0) + 0x10。 0x0f) = 0x0a) week = (week amp。 if((nian amp。 } }if(menu_2 == 6) //設(shè)置月 { if(key_can == 3) //加 { yue+=0x01。 yue 。 0x0f) == 0x00) ri = (ri | 0x0a) 0x10。 //顯示月 write_sfm2_ds1302(2,9,ri)。 break。 //把時(shí)間寫進(jìn)去 } /***************設(shè)置鬧鐘*********************/ if(menu_1 == 2) { if(menu_2 == 1) //設(shè)置鬧鐘開關(guān) { if(key_can == 3) { open1 = 1。 if((shi1 amp。 } if(key_can == 4) //減 { if(fen1 == 0x00) fen1 = 0x5a。 //顯示鬧鐘分switch(menu_2) // 光標(biāo)顯示
。 0x0f) == 0x00) fen1 = (fen1 | 0x0a) 0x10。 shi1 。 //鬧鐘關(guān) } } if(menu_2 == 2) //設(shè)置鬧鐘時(shí) { if(key_can == 3) //加 { shi1+=0x01。 break。 break。 } }write_sfm2_ds1302(1,2,shi)。 if((ri amp。 0x0f) = 0x0a) yue = (yue amp。 0xf0) + 0x10。 if(week = 0x08) week = 1。 } if(key_can == 4) //減 { if(miao == 0x00) miao = 0x5a。 if((fen amp。 0x0f) == 0x00) shi = (shi | 0x0a) 0x10。 if(menu_2 3) menu_2 = 1。 write_string(2,0, Y 00:00 )。 //得到按鍵值 }// write_sfm2(1,0,key_can)。 0x78) {case 0x70: key_can = 4。 //按鍵值還原 P3 |= 0x78。 if(value = 10) { value = 0。 (fen == fen1) amp。 //顯示日 }} /*************定時(shí)器0初始化程序***************/void init_time0() { EA = 1。// write_sfm1(1,14,week)。 write_data(39。)。case 6:write_data(39。)。H39。 write_data(39。)。 case 2:write_data(39。)。iq。 //讀溫度低字節(jié) value = read_18b20()。 //初始化18b20 write_18b20(0xcc)。 //把總線拿低讀時(shí)間隙開始 value = 1。 0x01。 //110us q = dq。 write_eeprom()。 shi1 = byte_read(0x2001)。 //用做連加的中間變量bit key_500ms 。sbit beep = P3^7。在以后的學(xué)習(xí)生活中我會(huì)時(shí)時(shí)敦促自己更加努力,不辜負(fù)師長(zhǎng)、親人、朋友對(duì)我的期望??傊?,此次畢業(yè)設(shè)計(jì)使我的能力得到了全方位的提高,次設(shè)計(jì)的電子萬(wàn)年歷也存在的不足的地方,有待于以后的改進(jìn)。 } delay(5)。 for (i=8。i) { value=1。 // 釋放總線 delay(3)。 //把最高位值0 允許ds1302工作 write_ds1302(0x8e,0x80)。 io = 0。 write_ds1302(0x8e,0x80)。 //寫星期 write_ds1302(write_add[6],week)。 n_ri = day_moon 。 //讀分 shi = read_ds1302(read_add[2])。 if(io == 1) value |= 0x80。 //時(shí)鐘線拿低開始寫數(shù)據(jù) io = add amp。 //時(shí)鐘線拿高 } rst = 0。 //把地址右移一位 clk = 1。 //兩個(gè)鬧鐘變量的定義bit open1。 //ds1302時(shí)鐘線定義sbit io = P1^4。通常選擇C=10~30μF。而本系統(tǒng)選用的是12MHz的晶振,因此一個(gè)機(jī)器周期為1μs,那么復(fù)位脈沖寬度最小應(yīng)為2μs。 溫度傳感器DS18B20接口電路 DS18B20的工作時(shí)序復(fù)位時(shí)序圖 復(fù)位時(shí)序圖讀時(shí)序圖寫時(shí)序圖 寫時(shí)序圖工作時(shí)序總線時(shí)序 總線時(shí)序?qū)懼芷跁r(shí)序 寫周期時(shí)序起始/停止時(shí)序 起始/停止時(shí)序應(yīng)答時(shí)序 應(yīng)答時(shí)序立即地址讀時(shí)序 立即地址讀時(shí)序 LCD顯示模塊 LCM1602的特性及使用說(shuō)明: LCM1602的接口信號(hào)編號(hào)引腳符號(hào)功能說(shuō)明編號(hào)引腳符號(hào)功能
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1