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

正文內(nèi)容

電子萬年歷的設(shè)計(jì)與制作畢業(yè)論文-在線瀏覽

2024-08-07 15:08本頁面
  

【正文】 ,此時(shí)可作輸入口。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVXDPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。Flash 編程和程序校驗(yàn)期間,P2亦接收低高位地址和其他控制信號。對P3口寫入“1”時(shí),它們被內(nèi)部的上拉電阻拉高并可作為輸入端口。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。DISRT0位缺省為RESET輸出高電平打開狀態(tài)。即使不訪問外部存儲器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號,因此它可對外輸出時(shí)鐘或用于定時(shí)目的。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。當(dāng)訪問外部數(shù)據(jù)存儲器,沒有兩次有效的PSEN信號。欲使CPU僅訪問外部程序存儲器(地址為0000H—FFFFH),EA端必須保持低電平(接地)。如EA端為高電平,CPU則執(zhí)行內(nèi)部程序存儲器中的指令。XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。 AT89S52單片機(jī)與MCS51完全兼容看門狗(WDT):WDT是一種需要軟件控制的復(fù)位方式。WDT 在默認(rèn)情況下無法工作;為了激活WDT,用戶必須往WDTRST 寄存器(地址:0A6H)中依次寫入01EH 和0E1H。WDT計(jì)時(shí)周期依賴于外部時(shí)鐘頻率。當(dāng)WDT溢出,它將驅(qū)動RSR引腳輸出一個(gè)高電平。AT89S52系列單片機(jī)的串行通信口可以工作于同步和異步通信方式。串行口內(nèi)的接收器采用的是雙緩沖結(jié)構(gòu),能夠在接收到的第一個(gè)字節(jié)從接收寄存器讀走之前就開始接收第二個(gè)字節(jié)(當(dāng)然,如果第二個(gè)字節(jié)接收完畢,而第一個(gè)字節(jié)仍然沒有被讀走,那將會丟掉一個(gè)字節(jié))。如果將數(shù)據(jù)寫入SBUF,數(shù)據(jù)會被送入發(fā)送寄存器準(zhǔn)備發(fā)送。因此,CPU對SBUF的讀寫,實(shí)際上是分別訪問2個(gè)不同的寄存器。振蕩電路:AT89S52系列單片機(jī)的內(nèi)部振蕩器,由一個(gè)單極反相器組成。可以利用它內(nèi)部的振蕩器產(chǎn)生時(shí)鐘,只要XTAL1和XTAL2引腳上一個(gè)晶體及電容組成的并聯(lián)諧振電路,便構(gòu)成一個(gè)完整的振蕩信號發(fā)生器,此方式稱為內(nèi)部方式。在組成一個(gè)單片機(jī)應(yīng)用系統(tǒng)時(shí),多數(shù)采用這種方式,這種方式結(jié)構(gòu)緊湊,成本低廉,可靠性高。定時(shí)/計(jì)數(shù)器:AT89S52單片機(jī)內(nèi)含有2個(gè)16位的定時(shí)器/計(jì)數(shù)器。為了實(shí)現(xiàn)定時(shí)和計(jì)數(shù)功能,定時(shí)器中含有3種基本的寄存器:控制寄存器、方式寄存器和定時(shí)器/計(jì)數(shù)器。RAM:高于7FH內(nèi)部數(shù)據(jù)存儲器的地址是8位的,也就是說其地址空間只有256字節(jié),但內(nèi)部RAM的尋址方式實(shí)際上可提供384字節(jié)。這樣,雖然高128字節(jié)區(qū)分與專用寄器 ,即特殊功能寄存器區(qū)的地址是重合的,但實(shí)際上它們是分開的。SFR:SFR是具有特殊功能的所有寄存器的集合,共含有22個(gè)不同寄存器,它們的地址分配在80H~FFH中。如對這些單元進(jìn)行讀操作,得到的是一些隨機(jī)數(shù),而寫入則無效,所以在編程時(shí)不應(yīng)該將數(shù)據(jù)寫入這些未確定的地址單元中,特殊功能寄存器主要有累加器ACC、B寄存器、程序狀態(tài)字寄存器PSW、堆棧指針SP、數(shù)據(jù)指針DPTR、I/O端口、串行口數(shù)據(jù)緩沖器SBUF、定時(shí)器寄存器、捕捉寄存器、控制寄存器。IE寄存器用于允許或禁止中斷;IP寄存器用于確定中斷源的優(yōu)先級別;優(yōu)先級結(jié)構(gòu)用于執(zhí)行中斷源的優(yōu)先排序;有關(guān)邏輯門用于輸入中斷請求信號。它通過串行方式與單片機(jī)進(jìn)行數(shù)據(jù)傳送,能夠向單片機(jī)提供包括秒、分、時(shí)、日、月、年等在內(nèi)的實(shí)時(shí)時(shí)間信息,并可對月末日期、閏年天數(shù)自動進(jìn)行調(diào)整;它還擁有用于主電源和備份電源的雙電源引腳,在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。DS1302時(shí)鐘芯片內(nèi)主要包括移位寄存器、控制邏輯電路、振蕩器。其工作過程可概括為:首先系統(tǒng)RST引腳驅(qū)動至高電平,然后在SCLK時(shí)鐘脈沖的作用下,通過I/O引腳向DS1302輸入地址/命令字節(jié),隨后再在SCLK時(shí)鐘脈沖的配合下,從I/O引腳寫入或讀出相應(yīng)的數(shù)據(jù)字節(jié)。VCC1在單電源與電池供電的系統(tǒng)中提供低電源并提供低功率的電池備份。DS1302由VCC1或VCC2 兩者中較大者供電。當(dāng)VCC2小于VCC1時(shí),DS1302由VCC1供電。表1為DS1302的控制字,此控制字的位7必須置1,若為0則不能對DS1302進(jìn)行讀寫數(shù)據(jù)。位1至位5指操作單元的地址??刂谱止?jié)總是從最低位開始輸入/輸出的?!癢P”是寫保護(hù)位,在任何的對時(shí)鐘和RAM的寫操作之前,“WP”必須為0。DS132的控制字:??刂谱止?jié)總是從最低位開始輸出。同樣,在緊跟8位的控制指令字后的下一個(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0位到高位7。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 溫度芯片DS18B20接口設(shè)計(jì)與性能分析 DS18B20性能簡介DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等元件相比,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過簡單的編程實(shí)現(xiàn)912位的數(shù)字值讀數(shù)方式。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。其性能特點(diǎn)可歸納如下:1獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;2測溫范圍在55℃到125℃,℃;3采用了3線制與單片機(jī)相連,減少了外部硬件電路;4零待機(jī)功耗;5可通過數(shù)據(jù)線供電,;6用戶可定義的非易失性溫度報(bào)警設(shè)置;7報(bào)警搜索命令識別并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件; 8負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會因發(fā)熱燒毀,只是不能正常工作。 。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測溫度。LSB位置/清除增加計(jì)數(shù)器1斜率累加器計(jì)數(shù)比較器溫度寄存器減到0預(yù)置計(jì)數(shù)器2減到0停止預(yù)置低溫度系數(shù)晶振高溫度系數(shù)晶振 DS18B20測溫原理 DS18B20接口電路設(shè)計(jì),該系統(tǒng)中采用數(shù)字式溫度傳感器DS18B20,具有測量精度高,電路連接簡單特點(diǎn),此類傳感器僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,Vcc接電源,GND接地。 按鍵模塊設(shè)計(jì)本系統(tǒng)用到了5個(gè)按鍵,其中一個(gè)用作系統(tǒng)手動復(fù)位,另外4個(gè)采用獨(dú)立按鍵,該種接法查詢簡單,程序處理簡單,可節(jié)省CPU資源,、。SET 鍵:按下SET鍵進(jìn)入時(shí)間校準(zhǔn)狀態(tài),按一下進(jìn)入秒調(diào)整,兩下分調(diào)整,依此類推可進(jìn)行各年月日,時(shí)分秒以及星期的校準(zhǔn);UP鍵:當(dāng)SET鍵按下時(shí),UP進(jìn)行SET選定項(xiàng)(如:小時(shí))的加操作。 復(fù)位電路的設(shè)計(jì)當(dāng)AT89S52單片機(jī)的復(fù)位引腳RST(全稱RESET)出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就完成了復(fù)位操作。因此要求單片機(jī)復(fù)位后能脫離復(fù)位狀態(tài)。在實(shí)際應(yīng)用系統(tǒng)中,考慮到電源的穩(wěn)定時(shí)間,參數(shù)漂移,晶振穩(wěn)定時(shí)間以及復(fù)位的可靠性等因素,必須有足夠的余量根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位、手動復(fù)位。AT89S52單片機(jī)的上電復(fù)位POR(Power On Reset)實(shí)質(zhì)上就是上電延時(shí)復(fù)位,也就是在上電延時(shí)期間把單片機(jī)鎖定在復(fù)位狀態(tài)上。 復(fù)位電路把單片機(jī)鎖定在復(fù)位狀態(tài)上并且維持一個(gè)延時(shí)(記作TRST),以便給予電源電壓從上升到穩(wěn)定的一個(gè)等待時(shí)間;在電源電壓穩(wěn)定之后,再插入一個(gè)延時(shí),給予時(shí)鐘振蕩器從起振到穩(wěn)定的一個(gè)等待時(shí)間;在單片機(jī)開始進(jìn)入運(yùn)行狀態(tài)之前, 還要至少推遲2個(gè)機(jī)器周期的延時(shí)。當(dāng)單片機(jī)已在運(yùn)行之中時(shí),按下復(fù)位鍵也能使RST持續(xù)一段時(shí)間的高電平,從而實(shí)現(xiàn)上電且開關(guān)復(fù)位的操作。 復(fù)位電路第4章 系統(tǒng)的軟件設(shè)計(jì) 概述 電子萬年歷的功能是在程序控制下實(shí)現(xiàn)的。這樣有利于程序修改和調(diào)試,增強(qiáng)了程序的可移植性。程序開始運(yùn)行后首先要進(jìn)行初始化,把單片機(jī)的各引腳的狀態(tài)按程序里面的初始化命令進(jìn)行初始化,初始化完成后運(yùn)行溫度測量程序,讀取出溫度傳感器測量出來的溫度,然后運(yùn)行公歷計(jì)算程序,得到公歷的時(shí)間、日期信息,再運(yùn)行按鍵掃描程序,檢測有無按鍵按下,如果沒有按鍵按下則直接調(diào)用節(jié)日計(jì)算程序,根據(jù)得到的公歷日期信息計(jì)算出節(jié)日,如果有按鍵按下則更新按鍵修改后的變量后送給節(jié)日計(jì)算程序,由節(jié)日計(jì)算程序根據(jù)修改后的變量計(jì)算出對應(yīng)的節(jié)假日,計(jì)算完成后運(yùn)行顯示程序,顯示程序?qū)⒌玫降臏囟葦?shù)據(jù)、公歷信息、節(jié)假日信息送給對應(yīng)的數(shù)碼管讓其顯示。讀取寫程序設(shè)計(jì)如下:sbit clk = P1^3。 //數(shù)據(jù)線sbit rst = P1^5。 //寫地址uchar code read_add[] ={0x81,0x83,0x85,0x87,0x89,0x8d,0x8b}。 uchar miao,fen,shi,ri,yue,week,nian。uchar fen1=0x11,shi1=0。/*************寫一個(gè)數(shù)據(jù)到對應(yīng)的地址里***************/void write_ds1302(uchar add,uchar dat){ rst = 1。i8。 //時(shí)鐘線拿低開始寫數(shù)據(jù) io = add amp。 add = 1。 //時(shí)鐘線拿高 } for(i=0。i++) {clk = 0。 0x01。 //把數(shù)據(jù)右移一位 clk = 1。 //復(fù)位線合低 clk = 0。}uchar read_ds1302(uchar add){ uchar value,i。 //把復(fù)位線拿高 for(i=0。i++) { //低位在前 clk = 0。 0x01。 //把地址右移一位 clk = 1。i8。 //時(shí)鐘線拿低開始讀數(shù)據(jù) value = 1。 clk = 1。 //復(fù)位線合低 clk = 0。 return value。 //讀秒 fen = read_ds1302(read_add[1])。 //讀時(shí) ri = read_ds1302(read_add[3])。 //讀月 nian = read_ds1302(read_add[5])。 //讀星期 Conversion(0,nian,yue,ri)。 n_yue = month_moon 。}void write_time(){ write_ds1302(0x8e,0x00)。 //寫秒 write_ds1302(write_add[1],fen)。 //寫時(shí) write_ds1302(write_add[3],ri)。 //寫月 write_ds1302(write_add[5],nian)。 //寫年 write_ds1302(0x8e,0x80)。 //地址是從第二位開始的 add amp。 //把最低位清零 是寫的命令 add |= 0xc0。 write_ds1302(add,dat)。}uchar read_ds1302ram(uchar add){ add = 1。 //把最高位置1 是讀命令 add |= 0xc0。 }void init_ds1302(){ uchar i。 //第一次讀寫數(shù)據(jù)時(shí)要把IO品拿低 clk = 0。i = read_ds1302ram(30)。 write_ds1302ram(30,i)。 //打開寫保護(hù) for(i=0。i++) write_ds1302(write_add[i],init_ds[i])。 //關(guān)寫保護(hù) }}DS1302與微處理器進(jìn)行數(shù)據(jù)交換時(shí),首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)最高位MSB(D7)必須為邏輯 1,如果D7=0,則禁止寫DS1302,即寫保護(hù);D6=0,指定時(shí)鐘數(shù)據(jù),D6=1,指定RAM數(shù)據(jù);D5~D1指定輸入或輸出的特定寄存器;最低位LSB(D0)為邏輯0,指定寫操作(輸入),D0=1,指定讀操作(輸出) 。在這3種操作中,只有寫操作是單向的,初始化操作和讀操作都是雙向的。 DQ = 0。 // 保持 480us DQ = 1。 // 等待回復(fù) presence = DQ。 // 等待結(jié)束信號 return(presence)。 byte value = 0。i0。 DQ = 0。 delay(1)。 delay(6)。}//向 1WIRE 總線上寫一個(gè)字節(jié)void write_byte(char val){ byte i。 i0。 // DQ = valamp。 delay(5)。 val=val/2。} 總結(jié)與展望一、總結(jié)在整個(gè)設(shè)計(jì)過程中學(xué)到了許多沒學(xué)到的知識,在電路焊接時(shí)雖然沒什么大問題,但從中也知道了焊接在整個(gè)作品中的重要性,電路工程量大,不能心急,一個(gè)個(gè)慢慢來不能急于求成。對電路的設(shè)計(jì)、布局要先有一個(gè)好的構(gòu)思,才顯得電路板美觀、大方。在此次設(shè)計(jì)中,知道了做事要有一顆平常的心,不要想著走捷徑,一步一腳印。在本次設(shè)計(jì)中學(xué)到了很多很多東西,這是最重要的。二、今后研究方向在整個(gè)設(shè)計(jì)過程中,硬件方面主要設(shè)計(jì)了AT89S52單片機(jī)的最小系統(tǒng)、DS1302接口電路、DS18B20接口電路、鬧鐘及LCD顯示;軟件方面借助各個(gè)渠道的資料,主要設(shè)計(jì)了陽
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1