版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、畢業(yè)設計論文論文題目:電子時鐘學 院: 機電工程學院 專 業(yè):電氣自動化 班 級: 2009級01班 學生姓名: 學 號: 指導教師: 2011年10月 18 日目 錄 摘要 .3緒論 .5第1章 設計要求與方案論證.71.1 引言.71.2 功能要求.71.3方案論證.7第2章 系統(tǒng)硬件電路設計 .112.1 電路設計.112.2 系統(tǒng)硬件概述.152.3主要單元電路的設計.15第3章 系統(tǒng)的軟件設計.223.1程序設計.223.2程序設計流程圖.22第4章 結束語.24附錄一(電路原理圖) . 附錄二(程序清單).27摘要隨著社會、科技的發(fā)展,人類得知時間,從觀太陽、擺鐘到現(xiàn)在電子鐘,不斷
2、研究、創(chuàng)新。為了在觀測時間,能夠了解與人類密切相關的信息,比如星期、日期等,電子時鐘誕生了,它集時間、日期、星期等功能于一身,具有讀取方便、顯示直觀、功能多樣、電路簡潔等諸多優(yōu)點,符合電子儀器儀表的發(fā)展趨勢,具有廣闊的市場前景。該電子時鐘主要采用STC89C52RC單片機作為主控核心,由DS1302時鐘芯片提供時鐘、LED動態(tài)掃描顯示屏顯示。STC89C52RC單片機是由Atmel公司推出的,功耗小,電壓可選用46V電壓供電;DS1302時鐘芯片是美國DALLAS公司推出的具有涓細電流充電功能的低功耗實時時鐘芯片,它可以對年、月、日、星期、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能,而且DS
3、1302的使用壽命長,誤差小;數(shù)字顯示是采用的LED顯示屏來顯示,可以同時顯示年、月、日、星期、時、分、秒和溫度等信息。此外,該電子時鐘還具有時間校準等功能。關鍵詞:時鐘電路; 時鐘芯片DS1302;LED動態(tài)掃描; 單片機STC89C52RC;緒論 隨著人們生活水平的提高和生活節(jié)奏的加快,對時間的要求越來越高,精準數(shù)字計時的消費需求也是越來越多。二十一世紀的今天,最具代表性的計時產品就是電子時鐘,它是近代世界鐘表業(yè)界的第三次革命。第一次是擺和擺輪游絲的發(fā)明,相對穩(wěn)定的機械振蕩頻率源使鐘表的走時差從分級縮小到秒級,代表性的產品就是帶有擺或擺輪游絲的機械鐘或表。第二次革命是石英晶體振蕩器的應用,
4、發(fā)明了走時精度更高的石英電子鐘表,使鐘表的走時月差從分級縮小到秒級。第三次革命就是單片機數(shù)碼計時技術的應用,使計時產品的走時日差從分級縮小到1/600萬秒,從原有傳統(tǒng)指針計時的方式發(fā)展為人們日常更為熟悉的夜光數(shù)字顯示方式,直觀明了,并增加了全自動日期、星期的顯示功能,它更符合消費者的生活需求!因此,電子時鐘的出現(xiàn)帶來了鐘表計時業(yè)界跨躍性的進步我國生產的電子時鐘有很多種,總體上來說以研究多功能電子時鐘為主,使萬年歷除了原有的顯示時間,日期等基本功能外,還具有鬧鈴,報警等功能。商家生產的電子萬年歷更從質量,價格,實用上考慮,不斷的改進電子時鐘的設計,使其更加的具有市場。本設計為軟件,硬件相結合的一
5、組設計。在軟件設計過程中,應對硬件部分有相關了解,這樣有助于對設計題目的更深了解,有助于軟件設計?;镜囊私庖恍┲饕骷幕竟δ芎妥饔?。除了采用集成化的時鐘芯片外,還有采用MCU的方案,利用STC89系列單片微機制成電子電路,采用軟件和硬件結合的方法,控制LED數(shù)碼管輸出,分別用來顯示年、月、日、時、分、秒,其最大特點是:硬件電路簡單,安裝方便易于實現(xiàn),軟件設計獨特,可靠。STC89C52RC是由ATMEL公司推出的一種小型單片機。95年出現(xiàn)在中國市場。其主要特點為采用Flash存貯器技術,降低了制造成本,其軟件、硬件與MCS-51完全兼容,可以很快被中國廣大用戶接受。 本文介紹了基于ST
6、C89C52RC單片機設計的電子時鐘。首先我們在緒論中簡單介紹了單片機的發(fā)展與其在中低端領域中的優(yōu)勢以及課題的開發(fā)意義;接著介紹了STC89C52RC單片機的硬件結構和本畢業(yè)設計所要外擴的LED顯示及其驅動方法,并在此基礎上實現(xiàn)了時鐘基本電路的設計;然后使用單片機C語言進行時鐘程序的設計,程序采用模塊化結構,使得邏輯關系簡單明了,維護方便。 第1章 設計要求與方案論證1.1 引言 本文提出了一種基于STC89C52RC單片機的時鐘設計方案,本方案以STC89C52RC單片機作為主控核心,與時鐘芯片DS1302、按鍵、LED顯示等模塊組成硬件系統(tǒng)。在硬件系統(tǒng)中設有獨立按鍵和LED顯示器,能顯示豐
7、富的信息,根據使用者的需要可以隨時對時間進行校準、選擇時間等,綜上所述此電子時鐘具有讀取方便、顯示直觀、功能多樣、電路簡潔、成本低廉等諸多優(yōu)點,符合電子儀器儀表的發(fā)展趨勢,具有廣闊的市場前景。1.2功能要求本電子時鐘能動態(tài)顯示年、月、日、星期、小時、分鐘、秒1.3方案論證1.3.1 技術可行性 隨著國內超大規(guī)模集成電路的出現(xiàn),微處理器及其外圍芯片有了迅速的發(fā)展。集成技術的最新發(fā)展之一是將CPU和外圍芯片,如程序存儲器、數(shù)據存儲器、并行I/O口、串行I/O口、定時/計數(shù)器、中斷控制器及其他控制部件集成在一個芯片之中,制成單片計算機(Single-Chip Microcomputer)。而近年來推
8、出的一些高檔單片機還包括有許多特殊功能單元,如A/D、D/A轉換器、調制解調器、通信控制器、鎖相環(huán)、DMA、浮點運算單元、PWM控制輸出單元、PWM輸出時的死區(qū)可編程控制功能等。因此,只要外加一些擴展電路及必要的通道接口就可以構成各種計算機應用系統(tǒng),如工業(yè)流水線控制系統(tǒng)、作為家用電器的主控制器、分布式控制系統(tǒng)的終端節(jié)點或作為其主控制節(jié)點起中繼的作用、數(shù)據采集系統(tǒng)、自動測試系統(tǒng)等。單片機的出現(xiàn),并在各技術領域中得到如此迅猛的發(fā)展,與單片機構成計算機應用系統(tǒng)所形成的下述特點有關: 1、單片機構成的應用系統(tǒng)有較大的可靠性。這些可靠性的獲得除了依靠單片機芯片本身的高可靠性以及應用有最少的聯(lián)接外,還可以
9、方便地采用軟、硬件技術。2、系統(tǒng)擴展、系統(tǒng)配置較典型、規(guī)范,容易構成各種規(guī)模的應用系統(tǒng),應用系統(tǒng)有較高的軟、硬件利用系數(shù)。 3、由于構成的應用系統(tǒng)是一個計算機系統(tǒng),相當多的測、控功能由軟件實現(xiàn),故具有柔性特征,不須改變硬件系統(tǒng)就能適當?shù)馗淖兿到y(tǒng)功能。4、有優(yōu)異的性能、價格比。1.3.2 單片機的選擇方案一:采用傳統(tǒng)的STC89C52RC作為電機的控制核心。單片機算術運算功能強,軟件編程靈活、自由度大,可用軟件編程實現(xiàn)各種算法和邏輯控制,并且由于其功耗低、體積小、技術成熟和成本低等優(yōu)點,使其在各個領域應用廣泛。方案二:采用FTC10F04單片機,還帶有非易失性Flash程序存儲器。它是一種高性能
10、、低功耗的8位CMOS微處理芯片,市場應用最多。其主要特點如下:8KB Flash ROM,可以擦除1000次以上,數(shù)據保存10年。由于本系統(tǒng)對CPU運算速度要求很高,需要執(zhí)行很復雜的運算,方案一成本比較低,適合做設計,方案二運算速度高,性能好,所以兩種方案都有可取之處。選用方案一作為主方案,方案二作為備用方案。1.3.3 顯示模塊的選擇 方案一:使用液晶顯示屏顯示時間數(shù)字。 液晶顯示屏(LCD)具有輕薄短小、低耗電量、無輻射危險,平面直角顯示以及影象穩(wěn)定不閃爍等優(yōu)勢,可視面積大,畫面效果好,分辨率高,抗干擾能力強等特點。但由于液晶是以點陣的模式顯示各種符號,需要利用控制芯片創(chuàng)建字符庫,編程工
11、作量大,控制器的資源占用較多,其成本也偏高。在使用時,不能有靜電干擾,否則易燒壞液晶的顯示芯片,不易維護。方案二:使用傳統(tǒng)的LED數(shù)碼管顯示。 數(shù)碼管具有:低能耗、低損耗、低壓、壽命長、耐老化、防曬、防潮、防火、防高(低)溫,對外界環(huán)境要求低,易于維護,同時其精度比較高,稱重輕,精確可靠,操作簡單。數(shù)碼管采用BCD編碼顯示數(shù)字,程序編譯容易,資源占用較少。 根據以上的論述,采用方案二。在本系統(tǒng)中,我們采用了八段四位一體數(shù)碼管串口的動態(tài)顯示。1.3.4 鍵盤模塊的選擇在對日期和時間進行切換,對日期和時間進行調節(jié)校準過程中,系統(tǒng)需要產生激勵電流,因此需要用按鍵。 方案一:使用獨立式鍵盤。獨立式鍵盤
12、是指直接用I/O口線構成的單個按鍵電路。獨立式按鍵電路配置靈活,軟件結構簡單。 方案二:使用矩陣式鍵盤。矩陣式鍵盤是由行線和列線組成,按鍵位于行、列的交叉點上,行線、列線分別連接到按鍵開關的兩端。其特點是簡單且不增加成本,這種鍵盤適合按鍵數(shù)量較多的場合。 根據以上的論述,因本系統(tǒng)需要的按鍵不多,日期加1鍵,月數(shù)加1鍵,年數(shù)加1鍵,分數(shù)加1鍵,時數(shù)加1鍵,時間/日期切換鍵,要求簡單。所以采用方案一獨立式鍵盤。1.3.5總體方案論證與選擇按照系統(tǒng)設計功能的要求,初步確定系統(tǒng)由主控模塊、時控模塊、及顯示模塊和鍵盤接口模塊共4個模塊組成。主控芯片使用51系列STC89C52RC單片機,時鐘芯片使用美國
13、DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘DS1302。采用DS1302作為計時芯片,可以做到計時準確。更重要的是,DS1302可以在很小電流的后備電源(2.55.5V電源,再2.5V時耗電小于300nA),而且DS1302可以編程選擇多種充電電流來為后備電源進行慢速充電,可以保證后備電源基本不耗電。顯示模塊采用普通的共陽極四位一體八段LED數(shù)碼管。第二章 系統(tǒng)硬件電路設計2.2系統(tǒng)硬件概述2.2.1 主控制器STC89C52RC STC89C52RC單片機是宏晶科技推出的新一代高速、低功耗、超強抗干擾的單片機,指令代碼完全兼容傳統(tǒng)8051單片機,12時鐘、機器周期和6時鐘、
14、機器周期可以任意選擇。 主要特性如下: 增強型8051單片機,6時鐘、機器周期和12時鐘、機器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051單片機。 工作電壓:5.5V3.3V 工作頻率范圍:044MHz。 用戶應用程序空間為8K字節(jié) 片上集成512字節(jié)RAM 通用I/O口32個,復位后為:P1/P2/P3/P4是準雙向口/弱上位,P0口是漏極開路輸出,作為總線擴展用時,不用加上拉電阻,作為I/O口用時,需加上拉電阻。 ISP(在系統(tǒng)可編程)/IAP(再應用可編程),無需專用編程器,無需專用仿真器,可通過串口(RXD/P3.0,TXD/P3.1 )直接下載用戶程序,數(shù)秒即可完成一片。 具有EE
15、PROM功能 具有看門狗功能 共3個16位定時器/計數(shù)器。及定時器T0、T1、T2 外部中斷4路,下降沿中斷或低電平觸發(fā)電路,Power Down模式可由外部中斷低電平觸發(fā)中斷方式喚醒 通用異步串行口(UART),還可用定時器實現(xiàn)多個UART 工作溫度范圍:-40+85度(工業(yè)級)/075度(商業(yè)級) PDIP封裝2.2.2時鐘電路DS1302 DS1302的性能特性: 實時時鐘,可對秒、分、時、日、周、月以及帶閏年補償?shù)哪赀M行比較; 用于高速數(shù)據暫存的31*8位RAM; 最少引腳的串行I/O; 2.55.5V電壓工作范圍; 2.5V時耗小于300nA; 用于時鐘或RAM數(shù)據讀/寫的單字節(jié)或多
16、字節(jié)(脈沖方式)數(shù)據傳送方式; 簡單的三線接口; 可選的慢速充電(至Vcc1)的能力。DS1302在任何數(shù)據傳送時必須先初始化,把RST腳置為高電平,然后把8位地址和命令字裝入移位寄存器,數(shù)據在SCLK的上升沿被訪問到。在開始8個時鐘周期,把命令字節(jié)裝入移位寄存器后,另外的時鐘周期在讀操作時輸出數(shù)據,在寫操作時寫入數(shù)據。時鐘脈沖的個數(shù)在單字節(jié)方式下為8+8,在多字節(jié)方式下為8+字節(jié)數(shù),最大可達248字節(jié)數(shù)。如果在傳送過程中置RST腳為低電平,則會終止本次數(shù)據傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc2.5V之前,RST腳必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平
17、。DS1302的控制字如表所示??刂谱止?jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據寫入到DS1302中。位6如果為0,則表示存取日歷時鐘數(shù)據;為1則表示存取RAM數(shù)據。位51(A4A0)指示操作單元的地址。最低有效位(位0)如果為0,則表示藥進行寫操作;為1表示進行讀操作??刂谱止?jié)總是從最低位開始輸入/輸出。為了提高對32個地址尋址能力(地址/命令位15=邏輯1),可以把時鐘/日歷或RAM寄存器規(guī)定為多字節(jié)(burst)方式。位6規(guī)定時鐘或RAM,而位0規(guī)定讀或寫。在時鐘/日歷寄存器中的地址931或RAM寄存器中的地址31不能存儲數(shù)據。在多字節(jié)方式下,讀或寫從地址0的位0開始。
18、必須按數(shù)據傳送的次序寫最先的8個寄存器。但是,當以多字節(jié)方式寫RAM時,為了傳送數(shù)據不必寫所有的31字節(jié),不管是否謝了全部31字節(jié),所寫的每一字節(jié)都將傳送至RAM。表2.1 DS1302控制字 DS1302共有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數(shù)據位為BCD碼形式。其日歷、時間寄存器及其控制字如上表所示,其中奇數(shù)為讀操作,偶數(shù)為寫操作。時鐘暫停:秒寄存器的位7定義位時鐘暫停位。當它為1時,DS1302停止振蕩,進入低功耗的備份方式,通常在對DS1302進行寫操作時(如進入時鐘調整程序),停止振蕩。當它為0時,時鐘將開始啟動。 AM-PM/12-24小時方式:小時寄存器的位7
19、定義為12或24小時方式選擇位。它為高電平時,選擇12小時方式。在此方式下,位5為第二個10小時位(2023h)。 DS1302的晶振選用32768Hz,電容推薦值為6pF。因為振蕩頻率較低,也可以不接電容,對計時精度影響不大。2.3主要單元電路的設計2.3.1顯示電路顯示部分采用普通的共陽數(shù)碼管顯示,采用動態(tài)掃描,以減少硬件電路。年月日、時分秒、報警共需要24位數(shù)碼顯示,用8位數(shù)碼管以按鍵切換的方式來顯示。考慮到一次掃描24位數(shù)碼管顯示時會出現(xiàn)閃爍情況,故采用動態(tài)掃描,可將數(shù)碼管數(shù)量減少至8位,顯示時采用串行口輸出段碼。 2.3.2鍵盤接口鍵盤在單片機系統(tǒng)中是一個很重要的部件。為了輸入數(shù)據、
20、查詢和控制系統(tǒng)的工作狀態(tài),都要用到鍵盤,鍵盤是人工干預計算機的主要手段。鍵盤可分為編碼和非編碼鍵盤兩種。編碼鍵盤采用硬件線線路來實現(xiàn)鍵盤編碼,每按下一個鍵,鍵盤能自動生成按鍵代碼,鍵數(shù)較多,而且還具有去抖動功能。這種鍵盤使用方便,但硬件較復雜,PC機所用的鍵盤就屬于這種。非編碼鍵盤僅提供按鍵開關工作狀態(tài),其他工作由軟件完成,這種鍵盤鍵數(shù)較少,硬件簡單,一般在單片機應用系統(tǒng)中廣泛使用。此處主要介紹該類非編碼鍵盤及其與MCS51型單片機的接口。2.3.2.1按鍵開關去抖動問題按鍵開關在電路中的連接如圖所示。按鍵未按下時,A點電位為高電平5V;按鍵按下時,A點電位為低電平。A點電位就用于向CPU傳遞
21、按鍵的開關狀態(tài)。但是由于按鍵的結構為機械彈性開關,在按鍵按下和斷開時,觸點在閉合和斷開瞬間還會接觸不穩(wěn)定,引起A點電平不穩(wěn)定,如圖2-11b所示,鍵盤的抖動時間一般為510ms,抖動現(xiàn)象會引起CPU對一次鍵操作進行多次處理,從而可能產生錯誤。因此必須設法消除抖動的不良后果。圖2.3 鍵操作和鍵抖動消除抖動的不良后果的方法有硬、軟件兩種。為了節(jié)省硬件,通常在單片機系統(tǒng)中,一般不采用硬件方法消除鍵的抖動,而是用軟件消除抖動的方法。根據抖動特性,在第一次檢測到按鍵按下后,執(zhí)行一段延時510ms讓前延抖動消失后再一次檢測鍵的狀態(tài),如果仍保持閉合狀態(tài)電平,則確認真正有鍵按下。當檢測到按鍵釋放后,也要給5
22、10ms的延時,待后延抖動消失后才轉入該鍵處理程序。2.3.2.2查詢式按鍵及其接口按照鍵盤與CPU的連接方式可以分為查詢按鍵和矩陣式鍵盤。查詢式按鍵是各按鍵相互獨立,每個按鍵占用一根I/O口線,每根I/O口線上的按鍵工作狀態(tài)不會影響其他I/O口線上按鍵的工作狀態(tài)。查詢式按鍵電路配置靈活,軟件結構簡單,但每個按鍵必須占用一根I/O口線,在按鍵數(shù)量較多時,I/O口線浪費較大,且電路結構顯得繁雜。故這種形式適用于按鍵數(shù)量較少的場合。2.3.2.3矩陣式鍵盤及其接口矩陣式鍵盤又稱行列式鍵盤,有n個行線和m個列線,經限流電阻接+5V電源上,按鍵跨接在行線和列線上,nm行列結構可構成mn個按鍵,組成一個
23、鍵盤。與獨立式按鍵相比,mn個按鍵只占用m+n根I/O口線,因此適用于按鍵較多的場合。當無鍵閉合時,相應的I/O之間開路。當有鍵閉合時,與閉合鍵相連接的兩條I/O口線之間短路。判斷有無鍵按下的方法是:第一步,置列線相關I/O口為輸入態(tài),從行線相對應的I/O口輸出低電平,讀入列線數(shù)據,若某一列線為低電平,則該列線上有鍵閉合。第二步,置行線相關I/O口輸出低電平,讀入列線數(shù)據,若某一列線為低電平,則該列線上有鍵閉合。綜合一二兩步的結果,可確定按鍵編號。但是鍵閉合一次只能進行一次鍵功能操作,因此須等待近按鍵釋放后,再進行鍵功能操作,否則按一次鍵,有可能會連續(xù)多次進行同樣的鍵操作。2.3.2.4鍵盤掃
24、描控制方式在單片機應用系統(tǒng)中,對鍵盤的處理工作僅是CPU工作內容的一部分,CPU還要進行數(shù)據處理、顯示和其他輸入輸出操作,因此鍵盤處理工作既不能占用CPU太多時間,又需要CPU對鍵盤操作及時作出響應。CPU對鍵盤處理控制的工作方式有以下幾種:1. 程序控制掃描方式程序控制掃描方式是在CPU工作空余,調用鍵盤掃描子程序,響應鍵輸入信號要求。2. 定時控制掃描方式定時控制掃描方式是利用定時/計數(shù)器每隔一段時間產生定時中斷,CPU響應中斷后對鍵盤進行掃描,并在有鍵閉合時轉入該鍵的功能子程序。3. 中斷控制掃描方式中斷控制掃描方式是利用外部中斷源,響應輸入信號。當無按鍵按下時,CPU執(zhí)行正常工作程序。
25、當有按鍵按下時,CPU立即產生中斷。在中斷服務子程序中掃描鍵盤,判斷是哪一個鍵被按下,然后執(zhí)行該鍵的功能子程序。這種控制方式克服了前兩種控制方式可能產生的空掃描和不能及時響應鍵輸入的缺點,既能及時處理鍵輸入,又能提高CPU運行效率,但要占用一個寶貴的中斷資源。圖即工作于中斷方式的矩陣式鍵盤接口電路。在初始化時P1.4P1.7置輸出0,P1.0P1.3置為輸入態(tài),P1.0P1.3分別接至與門各輸入端。當有鍵閉合時=0,CPU中斷后,在中斷服務子程序中,再完成鍵識別和鍵功能處理。 圖2.4 工作于中斷方式的矩陣式鍵盤接口電路2.3.3時鐘電路2.3.3.1 DS1302工作方式簡介及數(shù)據操作原理D
26、S1302可以對年、月、日、星期、時、分、秒進行計時, 且具有閏年補償功能, 工作電壓寬達2.55.5V。采用三線接口與CPU進行同步通信, 并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據。DS1302內部有一個33x8的用于臨時性存放數(shù)據的RAM寄存器。DS1302是的DS1202升級產品, 與DS1202兼容, 但增加了主電源/后背電源雙電源引腳, 同時提供了對后背電源進行涓細電流充電的能力。DS1302時鐘芯片包括實時時鐘/日歷和31字節(jié)的靜態(tài)RAM。它經過一個簡單的串行接口與微處理器通信。實時時鐘/日歷提供秒、分、時、日、周、月和年等信息。對于小于31天的月和月末的日期自動進行
27、調整,還包括閏年校正的功能。時鐘的運行可以采用24時或帶AM/PM的12小時格式。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多字節(jié)的時鐘信號或RAM數(shù)據。DS1302有主電源/后備電源雙電源引腳:Vcc1在單電源與電池供電的系統(tǒng)中提供低電源,并提供低功率的電磁備份;Vcc1在雙電池系統(tǒng)中提供主電源。在這種運行方式中,Vcc1里連接到后備電源,以便在沒有主電源的情況下能保存時間信息以及數(shù)據。DS1302由Vcc1或Vcc2中較打大者供電。當Vcc2(Vcc1+0.2V)時,Vcc2給DS1302供電;當Vcc2Vcc1時,DS1302由Vcc1供電。 圖2.5 DS1302DS1
28、302在任何數(shù)據傳送時必須先初始化,把RST腳置為高電平,然后把8位地址和命令字裝入移位寄存器,數(shù)據在SCLK的上升沿被訪問到。在開始8個時鐘周期,把命令字節(jié)裝入移位寄存器后,另外的時鐘周期在讀操作時輸出數(shù)據,在寫操作時寫入數(shù)據。時鐘脈沖的個數(shù)在單字節(jié)方式下為8+8,在多字節(jié)方式下為8+字節(jié)數(shù),最大可達248字節(jié)數(shù)。如果在傳送過程中置RST腳為低電平,則會終止本次數(shù)據傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc2.5V之前,RST腳必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。DS1302的控制字如圖所示。控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能
29、把數(shù)據寫入到DS1302中。位6如果為0,則表示存取日歷時鐘數(shù)據;為1則表示存取RAM數(shù)據。位51(A4A0)指示操作單元的地址。最低有效位(位0)如果為0,則表示藥進行寫操作;為1表示進行讀操作??刂谱止?jié)總是從最低位開始輸入/輸出。為了提高對32個地址尋址能力(地址/命令位15=邏輯1),可以把時鐘/日歷或RAM寄存器規(guī)定為多字節(jié)(burst)方式。位6規(guī)定時鐘或RAM,而位0規(guī)定讀或寫。在時鐘/日歷寄存器中的地址931或RAM寄存器中的地址31不能存儲數(shù)據。在多字節(jié)方式下,讀或寫從地址0的位0開始。必須按數(shù)據傳送的次序寫最先的8個寄存器。但是,當以多字節(jié)方式寫RAM時,為了傳送數(shù)據不必寫所
30、有的31字節(jié),不管是否謝了全部31字節(jié),所寫的每一字節(jié)都將傳送至RAM。DS1302共有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數(shù)據位為BCD碼形式。其日歷、時間寄存器及其控制字如下表所示,其中奇數(shù)為讀操作,偶數(shù)為寫操作。表2.3 DS1302控制字 時鐘暫停:秒寄存器的位7定義位時鐘暫停位。當它為1時,DS1302停止振蕩,進入低功耗的備份方式,通常在對DS1302進行寫操作時(如進入時鐘調整程序),停止振蕩。當它為0時,時鐘將開始啟動。 AM-PM/12-24小時方式:小時寄存器的位7定義為12或24小時方式選擇位。它為高電平時,選擇12小時方式。在此方式下,位5為第二個10
31、小時位(2023h)。 DS1302的晶振選用32768Hz,電容推薦值為6pF。因為振蕩頻率較低,也可以不接電容,對計時精度影響不大。第3章 系統(tǒng)的軟件設計(3.1 程序設計)電子時鐘的程序主要包括3個方面的內容:一是DS1302從單片機中讀取數(shù)據進行計數(shù),二是利用按鍵進行時間的調整,三是單片機中讀取DS1302中的數(shù)據驅動LED數(shù)碼管顯示時間。STC89C52RC單片機主要I/O口的分配:P10、P11、P12分別接時鐘芯片的SCLK、I/O、RST引腳,P13、P14、P15、P16接四個獨立按鍵。主程序流程圖時間調整程序流程圖第4章 結束語2010年3月,我開始了我的畢業(yè)論文工作,時至
32、今日,論文基本完成。從最初的茫然,到慢慢的進入狀態(tài),再到對思路逐漸的清晰,整個寫作過程難以用語言來表達。歷經了一個多月的奮戰(zhàn),緊張而又充實的畢業(yè)設計終于落下了帷幕。回想這段日子的經歷和感受,我感慨萬千,在這次畢業(yè)設計的過程中,我擁有了無數(shù)難忘的回憶和收獲。當我終于完成了所有打字、繪圖、排版、校對的任務后整個人都很累,但同時看著電腦熒屏上的畢業(yè)設計稿件我的心里是甜的,我覺得這一切都值了。這次畢業(yè)論文的制作過程是我的一次再學習,再提高的過程。在論文中我充分地運用了大學期間所學到的知識。我不會忘記這難忘的幾個月的時間。畢業(yè)論文的制作給了我難忘的回憶。在我徜徉書海查找資料的日子里,面對無數(shù)書本的羅列,
33、最難忘的是每次找到資料時的激動和興奮;親手用protel 99設計電路圖的時間里,記憶最深的是每一步小小思路實現(xiàn)時那幸福的心情;為了論文我曾趕稿到深夜,但看著親手打出的一字一句,心里滿滿的只有喜悅毫無疲憊。這段旅程看似荊棘密布,實則蘊藏著無盡的寶藏。我從資料的收集中,掌握了很多單片機及其接口應用的知識,讓我對我所學過的知識有所鞏固和提高,并且讓我對當今單片機的最新發(fā)展技術有所了解。在整個過程中,我學到了新知識,增長了見識。在今后的日子里,我仍然要不斷地充實自己,爭取在所學領域有所作為。腳踏實地,認真嚴謹,實事求是的學習態(tài)度,不怕困難、堅持不懈、吃苦耐勞的精神是我在這次設計中最大的收益。我想這是
34、一次意志的磨練,是對我實際能力的一次提升,也會對我未來的學習和工作有很大的幫助。在這次畢業(yè)設計中也使我們的同學關系更進一步了,同學之間互相幫助,有什么不懂的大家在一起商量,聽聽不同的看法對我們更好的理解知識,所以在這里非常感謝幫助我的同學。在此更要感謝我的指導老師和專業(yè)老師,是你們的細心指導和關懷,使我能夠順利的完成畢業(yè)論文。在此我要向司老師致以最衷心的感謝和敬意。程序/main.c/#include#define uint unsigned int#includeds1302.h#includekey.h#includebell.hsbit k4=P13;char k=0;char shi,
35、fen,miao,nian,yue,ri;char baojingshi=0x00,baojingfen=0x06,baojingmiao=0x00;void sjdisplay();void rqdisplay();void baojingdisplay();void delay(uint ms);void display(char shu,char wei);char table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;void main() ds1302_write(0
36、x80,0x55);ds1302_write(0x82,0x45);ds1302_write(0x84,0x00); ds1302_write(0x8c,0x11);ds1302_write(0x88,0x10);ds1302_write(0x86,0x07); while(1) if(k4=0) delay(5); if(k4=0) while(k4=0); k+; if(k=3) k=0; if(k=0)sjdisplay(); if(k=1) rqdisplay(); if(k=2) baojingdisplay(); if(shi=baojingshi)&(fen=baojingfen
37、)&(miao=baojingmiao)didi(10);key();void sjdisplay() shi=ds1302_read(0x85);/hourfen=ds1302_read(0x83);/minitesmiao=ds1302_read(0x81);/seconddisplay(shi4)&0x07,0);display(shi&0x0f,1);display(fen4)&0x07,3);display(fen&0x0f,4);display(miao4)&0x07,6);display(miao&0x0f,7);void rqdisplay() nian=ds1302_read
38、(0x8d);/nian yue=ds1302_read(0x89);/yue ri=ds1302_read(0x87);/ri display(nian4)&0x07,0); display(nian&0x0f,1); display(yue4)&0x07,3); display(yue&0x0f,4); display(ri4)&0x07,6);/0000 0111 display(ri&0x0f,7);void baojingdisplay() display(baojingshi4)&0x07,0); display(baojingshi&0x0f,1); display(baojin
39、gfen4)&0x07,3); display(baojingfen&0x0f,4); display(baojingmiao4)&0x07,6); display(baojingmiao&0x0f,7);void delay(uint ms)uint i,j;for(i=ms;i0;i-)for(j=124;j0;j-);void display(char shu,char wei)P0=tableshu;P2=(1wei);delay(3);P2=0xff;/main.c/ / Ds1302.c/#include#define uchar unsigned char#define uint
40、 unsigned intsbit rst=P12;sbit dat=P11;sbit clk=P10;void ds1302_write(char comm,char dat1)char temp,t;rst=0;clk=0;rst=1;temp=comm;for(t=0;t1);clk=0;temp=dat1;for(t=0;t1;clk=0;rst=0;uchar ds1302_read(char comm)char temp,t;rst=0;clk=0;rst=1;temp=comm;for(t=0;t1;clk=0;temp=0;/00000000 for(t=0;t1;if(dat
41、=1)temp=temp|0x80;else temp=temp&0x7f;clk=1;clk=0;rst=0;return temp;/Ds1302.c/Key.c/#include#define char signed char#define uint unsigned intsbit mode=P14;sbit add=P15;sbit sub=P16;char mod=0;extern void delay(uint ms);extern char shi,fen,nian,yue,ri;extern char baojingshi,baojingfen;extern char ds1
42、302_read(char);extern void ds1302_write(char,char);void key()shi=ds1302_read(0x85);fen=ds1302_read(0x83);if(mode=0)delay(5);if(mode=0)while(mode=0);mod+;if(mod=8)mod=0;if(add=0)delay(5);if(add=0)while(add=0);if(mod=1)shi=(shi4)&0x03)*10+(shi&0x0f)+1;if(shi=24)shi=0;ds1302_write(0x84,(shi/10)4)&0x07)*10+(fen&0x0f)+1;if(fen=60)fen=0;ds1302_write(0x82,(fen/10)4)&0x0f)*10+(nian&0x0f)+1;if(nian=99)nian=1;ds1302_write(0x8c,(nian/10)4)&0x01)*10+(yue&0x0f)+1;if(yue=13)yue=1;ds
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年中國PS日用品市場調查研究報告
- 2024年愛婦寧項目可行性研究報告
- 青海柴達木職業(yè)技術學院《高級網站開發(fā)技術》2023-2024學年第一學期期末試卷
- 青海柴達木職業(yè)技術學院《大數(shù)據信息安全》2023-2024學年第一學期期末試卷
- 青島職業(yè)技術學院《金融工程導論》2023-2024學年第一學期期末試卷
- STEM教育與職業(yè)教育的結合點研究
- 青島農業(yè)大學《激光雷達技術原理與應用》2023-2024學年第一學期期末試卷
- 高效能團隊建設的匯報解析
- 個人職業(yè)生涯規(guī)劃與職業(yè)發(fā)展
- 智能物流系統(tǒng)建設與優(yōu)化方案
- 蘇科版初中八年級上冊數(shù)學:62 一次函數(shù)課件
- 軟件項目監(jiān)理通用表
- 20格乘20行紅格作文紙
- 廣告制作投標書范本
- 建筑物照明系統(tǒng)照度測試記錄
- 高二班會 完整版課件PPT
- 奶茶店加盟合同協(xié)議書范本通用版
- 信達資產管理公司最全資料介紹筆試面經
- 金蝶K3 WISE平臺介紹
- 部編人教版八年級上冊初中歷史 第20課 正面戰(zhàn)場的抗戰(zhàn) 同步練習(作業(yè)設計)
- 抗菌藥物的分類及抗菌特點理解
評論
0/150
提交評論