国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于AT89S52的多功能電子萬(wàn)年歷

發(fā)布時(shí)間:2015-10-30 11:10    發(fā)布者:designapp
關(guān)鍵詞: AT89S52 , 電子萬(wàn)年歷
  引言
  隨著生活節(jié)奏的日益加快,人們的時(shí)間觀也越來(lái)越重,同時(shí)對(duì)電子鐘表、日歷的需求也隨之提高。因此,研究實(shí)用電子時(shí)鐘及其擴(kuò)展應(yīng)用,有著非,F(xiàn)實(shí)的意義,具有很大的實(shí)用價(jià)值。
  本系統(tǒng)程序由主程序、中斷服務(wù)函數(shù)和多個(gè)子函數(shù)構(gòu)成。主函數(shù)主要完成各子函數(shù)和中斷函數(shù)的初始化。定時(shí)中斷函數(shù)主要完成時(shí)鐘芯片的定時(shí)掃描及鍵盤掃描。時(shí)鐘芯片的讀寫函數(shù)主要是將時(shí)間、日歷信息讀出來(lái),并把要修改具體值寫入時(shí)鐘芯片內(nèi)部。
  系統(tǒng)的硬件設(shè)計(jì)與電路原理
  電路設(shè)計(jì)框圖
  系統(tǒng)硬件概述
  本電路是由AT89S52單片機(jī)為控制核心,具有在線編程功能、低功耗、能在3V的超低壓工作。時(shí)鐘電路由DS1302提供,它是一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路,它可以對(duì)年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),工作電壓為2.5V~5.5V。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或RAM數(shù)據(jù)。DS1302內(nèi)部有一個(gè)31×8的用于臨時(shí)性存放數(shù)據(jù)的RAM寄存器。可產(chǎn)生年、月、日、周日、時(shí)、分、秒,具有使用壽命長(zhǎng)、精度高和低功耗等特點(diǎn),同時(shí)具有掉電自動(dòng)保存功能。
  主控制模塊
  單片機(jī)主控制模塊的設(shè)計(jì)
  AT89S52單片機(jī)為40引腳雙列直插芯片,有四個(gè)I/O口P0,P1,P2,P3,MCS-51單片機(jī)共有4個(gè)8位的I/O口(P0、P1、P2、P3),每一條I/O線都能獨(dú)立地作輸出或輸入。
  時(shí)鐘電路模塊
  時(shí)鐘電路模塊的設(shè)計(jì)
  DS1302的引腳排列如圖3所示,其中Vcc1為后備電源,Vcc2為主電源。在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc1+0.2V時(shí),Vcc2給DS1302供電;當(dāng)Vcc2小于Vcc1時(shí),DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768KHz晶振。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。
  


  時(shí)鐘電路模塊工作原理
  DS1302在每次進(jìn)行讀、寫程序前都必須初始化,先把SCLK端置“0”,接著把RST端置“1”,最后才給予SCLK脈沖;讀/寫時(shí)序如圖4所示。表1為DS1302的控制字,此控制字的位7必須置1,若為0則不能對(duì)DS1302進(jìn)行讀寫數(shù)據(jù)。對(duì)于位6,若對(duì)程序進(jìn)行讀/寫時(shí)RAM=1,對(duì)時(shí)間進(jìn)行讀/寫時(shí),CK=0。位1至位5指操作單元的地址。位0是讀/寫操作位,進(jìn)行讀操作時(shí),該位為1;該位為0則表示進(jìn)行的是寫操作。控制字節(jié)總是從最低位開始輸入/輸出的。表2為DS1302的日歷、時(shí)間寄存器內(nèi)容:“CH”是時(shí)鐘暫停標(biāo)志位,當(dāng)該位為1時(shí),時(shí)鐘振蕩器停止,DS1302處于低功耗狀態(tài);當(dāng)該位為0時(shí),時(shí)鐘開始運(yùn)行!癢P”是寫保護(hù)位,在任何的對(duì)時(shí)鐘和RAM的寫操作之前,WP必須為0。當(dāng)“WP”為1時(shí),寫保護(hù)位防止對(duì)任一寄存器的寫操作。
  DS1302的控制字節(jié)
  DS1302的控制字如表1所示?刂谱止(jié)的高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,位6如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始輸出。
  數(shù)據(jù)輸入輸出(I/O)
  在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0位到高位7。如圖4所示。


  DS1302的寄存器
  DS1302有12個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時(shí)間寄存器及其控制字見表2。
  此外,DS1302還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個(gè)RAM單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個(gè)字節(jié),命令控制字為FEH(寫)、FFH(讀)。
  時(shí)鐘模塊實(shí)現(xiàn)功能
  該模塊為系統(tǒng)提供精準(zhǔn)的秒、分、時(shí)、日、月、年等實(shí)時(shí)時(shí)間信息,星期則由編程計(jì)算得到。
  溫度采集模塊
  溫度采集模塊設(shè)計(jì)
  如圖5所示。采用數(shù)字式溫度傳感器DS18B20,它具有測(cè)量精度高,電路連接簡(jiǎn)單特點(diǎn),此類傳感器僅需要一條數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,使用P1.7與DS18B20的I/O口連接加一個(gè)上拉電阻,Vcc1接電源,Vcc2接地。
  DS18B20的測(cè)溫原理
  低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入,當(dāng)計(jì)數(shù)門打開時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將-55℃所對(duì)應(yīng)的基數(shù)分別置入減法計(jì)數(shù)器1和溫度寄存器中,減法計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55℃所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器1的預(yù)置值減到0時(shí)溫度寄存器的值將加1,減法計(jì)數(shù)器1的預(yù)置將重新被裝入,減法計(jì)數(shù)器1重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測(cè)溫度值。
  


  顯示模塊的設(shè)計(jì)
  本次設(shè)計(jì)采用的是LED動(dòng)態(tài)顯示方式,由于PROTEUS內(nèi)沒有LED,故用LCD代替LED進(jìn)行仿真,與主控制芯片AT89C52相連。如圖6所示。
  系統(tǒng)的軟件設(shè)計(jì)
  


  主程序流程框圖
  Keil C與Proteus的聯(lián)調(diào)與測(cè)試結(jié)果
  Proteus7.6是目前最好的模擬單片機(jī)外圍器件的工具,可以仿真51系列、AVR、PIC等常用的MCU及其外圍電路(如LCD,RAM,ROM,鍵盤,馬達(dá),LED,AD/DA,部分SPI器件,部分IIC器件等),使用Proteus7.6和Keil C可以像使用仿真器一樣調(diào)試程序。
  Proteus的工作過程
  運(yùn)行Proteus的ISIS程序后,進(jìn)入該仿真軟件的主界面如圖8所示。在工作前,要設(shè)置view菜單下的捕捉對(duì)齊和system下的顏色、圖形界面大小等項(xiàng)目。通過工具欄中的p(從庫(kù)中選擇元件命令)命令,在pick devices窗口中選擇電路所需的元件,放置元件并調(diào)整其相對(duì)位置、元件參數(shù)設(shè)置、元器件間連線、編寫程序;在source菜單的Define code generation tools菜單命令下,選擇程序編譯的工具、路徑、擴(kuò)展名等項(xiàng)目;在source菜單的Add/remove source files命令下,加入單片機(jī)硬件電路的對(duì)應(yīng)程序;通過debug菜單的相應(yīng)命令仿真程序和電路的運(yùn)行情況。
  


  圖8 Proteus的啟動(dòng)界面
  Proteus軟件所提供的調(diào)試手段
  Proteus提供了比較豐富的測(cè)試信號(hào)用于電路的測(cè)試。這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。對(duì)于單片機(jī)硬件電路和軟件的調(diào)試,Proteus提供了兩種方法:一種是系統(tǒng)總體執(zhí)行效果,一種是對(duì)軟件的分步調(diào)試以看具體的執(zhí)行情況。
  軟件和硬件結(jié)合的應(yīng)用系統(tǒng)
  軟件和硬件的結(jié)合,就是一個(gè)單片機(jī)的應(yīng)用系統(tǒng)了。在這一階段,硬件電路的設(shè)計(jì)已經(jīng)不是最為關(guān)鍵的了,而軟件系統(tǒng)的設(shè)計(jì)、調(diào)試和運(yùn)行才是實(shí)驗(yàn)的主要內(nèi)容。因此可以以建議性的意見給出具體的硬件電路,并提出該電路所需要完成的具體工作,進(jìn)行軟件的設(shè)計(jì)和調(diào)試。
  Keil C的介紹
  keil C的運(yùn)行界面
  運(yùn)行Keil C后的運(yùn)行界面如圖9所示。
  


  圖9 keil C的運(yùn)行界面
  Keil C與proteus聯(lián)調(diào)測(cè)試
  1、安裝keil與proteus7.6;
  2、打開proteus,畫出相應(yīng)電路。在proteus的tools菜單中選中use remote debug monitor;
  3、在keil中編寫MCU的程序;
  4、進(jìn)入keil的project菜單option for target '工程名'。在DEBUG選項(xiàng)中右欄上部的下拉菜選中Proteus VSM Monitor-51 Driver;
  5、在keil中進(jìn)行debug,同時(shí)在proteus中查看直觀的結(jié)果,LCD顯示;
  6、把keil里的文件編譯后輸出hex的文件,在proteus中把單片機(jī)的加載程序文件換成keil中的hex文件,然后運(yùn)行。
  運(yùn)行結(jié)果
  結(jié)果顯示
  由圖1整體電路框圖可知,LED顯示結(jié)果,如圖10所示。
  


  圖10 結(jié)果顯示
  調(diào)節(jié)顯示
  日期和時(shí)間的修改由4個(gè)按鍵構(gòu)成。鍵P0為調(diào)節(jié)2^0,模式切換鍵(向左移)向左移;鍵P2^1,加法按鈕;鍵P2^2,減法按鈕;鍵P2^3,立刻跳出調(diào)整模式按鈕。
  按動(dòng)PO時(shí)秒閃爍進(jìn)入調(diào)節(jié)系統(tǒng),如圖11所示。
  按動(dòng)P2^0向左移,對(duì)分進(jìn)行調(diào)節(jié),如圖12所示。
  按動(dòng)P2^1向左移,對(duì)時(shí)進(jìn)行加調(diào)節(jié),如圖13所示。
  


  圖14所示,是未調(diào)之前的顯示,按動(dòng)P2^2向左移,對(duì)年進(jìn)行減調(diào)節(jié),如圖15所示
  按動(dòng)P2^3向左移,退出調(diào)節(jié)恢復(fù)如圖16所示。
  


  總結(jié)
  本文設(shè)計(jì)了一個(gè)多功能的電子萬(wàn)年歷。電路是由AT89S52單片機(jī)為控制核心,與時(shí)鐘芯片DS1302、溫度芯片DS18B20、按鍵、LED顯示等模塊組成硬件系統(tǒng)。在硬件系統(tǒng)中設(shè)有3個(gè)獨(dú)立按鍵,根據(jù)使用者的需要可以隨時(shí)對(duì)時(shí)間進(jìn)行校準(zhǔn)、選擇時(shí)間、溫度顯示等,綜上所述此萬(wàn)年歷具有讀取方便、顯示直觀、功能多樣、電路簡(jiǎn)潔、成本低廉等諸多優(yōu)點(diǎn),符合電子儀器儀表的發(fā)展趨勢(shì),具有廣闊的市場(chǎng)前景。
  在整個(gè)設(shè)計(jì)過程中,充分發(fā)揮個(gè)人的主觀能動(dòng)性,自主學(xué)習(xí),學(xué)到了許多沒學(xué)到的知識(shí),增加了動(dòng)手能力的考驗(yàn),達(dá)到了預(yù)期的目的?傊,這次設(shè)計(jì)使我的能力得到了全方位的提高。
                               
               
本文地址:http://www.qingdxww.cn/thread-155160-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 為何選擇集成電平轉(zhuǎn)換?
  • 了解一下Microchip強(qiáng)大的PIC18-Q24 MCU系列
  • 基于CEC1712實(shí)現(xiàn)的處理器SPI FLASH固件安全彈性方案培訓(xùn)教程
  • 想要避免發(fā)生災(zāi)難,就用MPLAB® SiC電源仿真器!
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 免费一级毛片在线播放放视频 | 欧美日韩高清不卡免费观看 | 国产开嫩苞视频 | 亚洲xx网| 久久精品a一国产成人免费网站 | 久久6| 中文字幕美日韩在线高清 | 免费看欧美日韩一区二区三区 | 亚洲视频手机在线观看 | 韩国免费毛片在线看 | 久久国内视频 | 青草园网站在线观看 | 黄色小视频在线播放 | 国产三级在线 | 综合色久七七综合七七蜜芽 | 二区中文字幕 | 最新地址四虎www4hutv | 大乳欲妇三级一区二区三区 | 日韩欧美国产中文字幕 | 在线观看亚洲免费 | 亚洲欧美日韩国产 | 四虎在线最新地址4hu | 亚洲欧洲日韩在线 | 天天插天天插天天插 | 一级特黄特黄的大片免费 | 日韩欧美一区二区三区 | 欧美成人在线免费观看 | 好男人影视www| 99re热在线视频 | 国产91网站在线观看 | 中文字幕一区二区在线播放 | 色老头视频在线观看 | 青青草原国产在线观看 | 青青草原app | 亚洲 另类 在线 欧美 制服 | 九九热在线精品 | 欧洲精品一区二区 | 欧美国产日本精品一区二区三区 | 麻豆精品在线观看 | 婷婷在线综合 | 四虎www成人影院观看 |