基于單片機的多用途定時器設(shè)計_第1頁
基于單片機的多用途定時器設(shè)計_第2頁
基于單片機的多用途定時器設(shè)計_第3頁
基于單片機的多用途定時器設(shè)計_第4頁
基于單片機的多用途定時器設(shè)計_第5頁
已閱讀5頁,還剩78頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

PAGEIV基于單片機的多用途定時器設(shè)計摘要伴隨著當(dāng)今社會單片機技術(shù)的發(fā)展,數(shù)字控制在工業(yè)生產(chǎn)中的廣泛應(yīng)用。計算機控制中經(jīng)常需要定時數(shù)據(jù)的讀取、信號輸出和屏幕刷新,特別是在控制系統(tǒng)和高精度數(shù)據(jù)采集系統(tǒng)中,這就需要精確的定時操作。本文分析了AT89C51單片機農(nóng)業(yè)大棚定時灌溉系統(tǒng)的硬件方面的設(shè)計和結(jié)構(gòu)。主要運行方法是用串行時鐘日歷芯片DS1302記錄農(nóng)業(yè)大棚定時灌溉系統(tǒng)的時間還有日歷,硬件系統(tǒng)主要包括最小系統(tǒng)模塊、時鐘模塊、溫度模塊、顯示模塊、按鍵模塊、鬧鐘模塊等,農(nóng)業(yè)大棚定時灌溉系統(tǒng)在顯示方面采用12864A液晶,能清楚的在LED顯示屏上顯示出年、月、日、周日、時、分、秒,還有調(diào)準(zhǔn)時間的準(zhǔn)確度的功能,并且能夠顯示當(dāng)日的溫度情況。本系統(tǒng)使用簡單方便,成本低,顯示直觀,在廣闊的市場具有非常很好的前景市場。關(guān)鍵詞:定時器;溫度計;液晶顯示;灌溉系統(tǒng)

ABSTRACTWiththedevelopmentofmicrocontrollertechnologyintoday'ssociety,digitalcontroliswidelyusedinindustrialproduction.Timingdatareading,signaloutput,andscreenrefreshareoftenrequiredincomputercontrol,especiallyincontrolsystemanddataacquisitionsystemwithhighprecision,whichrequiresprecisetimingoperation.ThispaperanalysesthehardwaredesignandstructureoftheagriculturalgreenhousetimingirrigationsystembasedonAT89C51single-chipcomputer.ThemainoperationmethodistorecordthetimeandcalendaroftimingirrigationsysteminagriculturalgreenhousewithserialclockcalendarchipDS1302.Thehardwaresystemmainlyincludesminimumsystemmodule,clockmodule,temperaturemodule,displaymodule,keymodule,alarmclockmodule,etc.Thetimingirrigationsysteminagriculturalgreenhouseuses12864ALCDindisplay,whichcanclearlydisplaytheyearontheLEDdisplayscreen.Month,day,Sunday,hour,minute,second,aswellastheaccuracyofthetimeadjustmentfunction,andcandisplaythetemperatureoftheday.Thesystemissimpleandconvenienttouse,lowcost,intuitivedisplay,andhasverygoodprospectsinthebroadmarket.Keywords:timer;thermometer;liquidcrystaldisplay;irrigationsystem

目錄摘要 IABSTRACT II第一章緒論 11.1課題研究的背景 11.2課題的研究目的與意義 11.3國內(nèi)外研究現(xiàn)狀分析 21.4課題解決的主要內(nèi)容 3第二章系統(tǒng)的方案設(shè)計與論證 42.1硬件系統(tǒng)設(shè)計方案 42.1.1單片機的選擇與論證 42.1.2時鐘模塊設(shè)計與論證 52.1.3溫度采集模塊設(shè)計與論證 52.1.4顯示模塊模塊設(shè)計與論證 52.2軟件系統(tǒng)設(shè)計方案 6第三章系統(tǒng)硬件的設(shè)計 73.1單片機模塊設(shè)計 73.2時鐘模塊設(shè)計 73.2.1DS1302性能簡介 73.2.2DS1302接口電路設(shè)計 83.3溫度模塊設(shè)計 83.3.1DS18B20性能簡介 83.3.2DS18B20接口電路設(shè)計 93.4顯示模塊設(shè)計 103.5按鍵模塊設(shè)計 103.6鬧鐘模塊設(shè)計 113.7系統(tǒng)功能實現(xiàn) 12第四章系統(tǒng)軟件設(shè)計和實現(xiàn) 144.1系統(tǒng)初始化 144.2顯示模塊 154.3按鍵掃描模塊 164.4溫度控制模塊 164.5時間數(shù)據(jù)采集模塊 174.6鬧鐘模塊 19第五章系統(tǒng)測試 205.1系統(tǒng)測試環(huán)境 205.2系統(tǒng)測試過程與結(jié)果 20第六章總結(jié)和展望 226.1總結(jié) 226.2展望 23參考文獻 24致謝 25附錄1元件清單 26附錄2源代碼 28PAGE20第一章緒論1.1課題研究的背景農(nóng)業(yè)大棚的日常工作是防潮、防腐、防霉。為了保證日常工作的順利進行,必須加強對農(nóng)業(yè)大棚的溫濕度監(jiān)測。傳統(tǒng)的方法是采用濕度計、濕度計和人工檢測雙金屬測量儀等檢測設(shè)備,不滿足農(nóng)業(yè)大棚通風(fēng)、除濕、降溫的溫濕度要求。這種人工檢測方法費時、費力、效率低、溫濕度誤差大、隨機性強。因此,需要一種成本低、使用方便、溫度測量準(zhǔn)確的溫濕度控制系統(tǒng)。作為農(nóng)業(yè)大棚最重要的材料之一,儲糧尤為重要。一般溫度對微生物的生長繁殖有影響。多數(shù)菌株生長繁殖的最適溫度為28°C-30°C,控制貯藏溫度可以保持良好的糧食品質(zhì),在貯藏過程中保持一定的溫度水平,達(dá)到安全貯藏的目的。是一種安全、經(jīng)濟、綠色的先進種植技術(shù)。它已成為科學(xué)種植技術(shù)發(fā)展的新方向。作為本系統(tǒng)采用的單片機技術(shù),已經(jīng)普及到我們的生活、工作、科研各個領(lǐng)域,已經(jīng)成為一個比較成熟的技術(shù)?,F(xiàn)在的電子定時器在世界各國是非常的普遍的,幾乎每個人身上都有,原來的計時器非常的少在古代的時候古人是用太陽的位子來計算時間的,隨著時代的不斷發(fā)展緊接著用的是擺鐘,現(xiàn)在的定時器設(shè)計各種各種的,有大的還有小的,有操作簡單的有操作復(fù)雜的,價格有便宜的有貴的,現(xiàn)在定時器應(yīng)用很廣泛,現(xiàn)在人類普遍應(yīng)用到手表,現(xiàn)在每個人幾乎都帶一個手表,現(xiàn)在的手機都有定時器,沒有電子定時器人類就不能按準(zhǔn)確的時間完成重要的事情,不同的地方對定時器的準(zhǔn)確度不同,比如一個公司就定時器的準(zhǔn)確度是非常高的,因為一個公司每一分每一秒都是在運作的,一分鐘不運作對公司的影響是非常的大的,所以一個公司的經(jīng)濟實力很在意很多的細(xì)節(jié),然面對時間的要求也是密不可少的,還有學(xué)校的家用的定時器也是非常的普遍的,原來定時器的功能就是簡單的計算時間的,然而現(xiàn)在的定時器功能是非常的多的,現(xiàn)在的定時器有著鬧鐘的功能,這個功能起著非常大的作用,有些人因為某些原因耽誤了重要的事情,然而鬧鐘這個功能就能有效的提醒你,然而鬧鐘功能主要的作用是鬧醒正在熟睡的人,起著一個喚醒的作用,有的電子定時器有著溫度顯示的功能,這個功能一般的定時器不會擁有,因為要有這個功能就要對定時器進行一些改進,需要的費用大,所以一些定時器生產(chǎn)的開發(fā)商不會讓定時器帶有溫度這個功能。還有些定時器有計算你一天所行駛的步數(shù)的作用,這個起著一個監(jiān)督人的運動量的動作,對那些需要健身的朋友是一個非常好的功能,可以計算出你一天步行所消耗的卡路里。1.2課題的研究目的與意義中國是一個人口大國,科學(xué)種植是一個戰(zhàn)略性的事件,保護人民的食品供應(yīng)和國家經(jīng)濟迫不及待。目前,在糧食農(nóng)業(yè)大棚溫度和濕度的檢測,基本上是人工檢測,勞動強度大,復(fù)雜的檢測報警不及時,和糧食面積,顆粒分散,艙內(nèi)溫度測試點,造成工作量大,效率低,檢測周期長,容易泄漏檢測、高損傷率測量裝置。測試精度難以保證,造成種植損失現(xiàn)象時有發(fā)生,所以每年在糧食儲存成本過高,并設(shè)計和開發(fā)了糧食溫濕度自動檢測系統(tǒng)是迫在眉睫的優(yōu)良性能,從而促進社會的發(fā)展,產(chǎn)生良好的經(jīng)濟價值的發(fā)揮重要的作用。在當(dāng)今社會是一個電子數(shù)字發(fā)展的高速年代,單片機在這個高速發(fā)展的數(shù)字年代是不一個密不可少的重要成員。電子定時器在當(dāng)今時代是必不可少的,所以人類不斷的在完善和改進它,在許多場合都需要運用到它,比如:訓(xùn)練場、公共場所、機關(guān)、學(xué)校、部隊、教學(xué)地方都需要它的存在,電子定時器存在于人類世界的每一個角落。所以說電子定時器的開發(fā)是國家之所需,社會之所需,人民之所需。在這個高速發(fā)展的世界,時間觀念對于人們來說是非常的重要,正由于這些東西不斷的促使電子定時器不斷發(fā)展和飛速提升。1.3國內(nèi)外研究現(xiàn)狀分析我國集成電路設(shè)計作為一種獨立的產(chǎn)業(yè)形態(tài),始于上世紀(jì)90年代,至今主要形成了以下四大發(fā)展區(qū)域:以京津為中心的京津地區(qū),包括遼寧、河北等周邊地區(qū)。是2018年集成電路設(shè)計產(chǎn)業(yè)發(fā)展最早的地區(qū)之一。2018年,全區(qū)共有集成電路設(shè)計企事業(yè)單位2200多家:以廣州、深圳、珠海為中心的珠三角地區(qū)是全國一體化的區(qū)域。該地區(qū)發(fā)展最快的地區(qū)之一是集成電路設(shè)計產(chǎn)業(yè)與整個系統(tǒng)制造商的融合,如國淼電子和深圳先科、ESCO和TCL、中興集成電路和中興通訊,因此該地區(qū)的設(shè)計企業(yè)初步實現(xiàn)了真正的工業(yè)化。該地區(qū)起步晚,但中國的人才培養(yǎng)基地。集成電路設(shè)計是基于半導(dǎo)體材料的電子電路創(chuàng)新活動。1948年,三位美國科學(xué)家弗雷寧等人在貝爾實驗室發(fā)明了晶體三極管,開創(chuàng)了電子電路技術(shù)發(fā)展的新紀(jì)元。自1962年單芯片四門sman集成電路誕生以來,集成電路技術(shù)得到了迅速發(fā)展。在20世紀(jì)60年代末和70年代初,英特爾成功地開發(fā)了微處理器芯片。微處理器豐富的指令系統(tǒng)滿足了應(yīng)用電子系統(tǒng)的不同要求,推動了集成電路技術(shù)的發(fā)展到一個新的階段。上世紀(jì)80年代,通沽集成電路產(chǎn)品制造成本持續(xù)下降,設(shè)計自動化技術(shù)和工具迅速發(fā)展,促使系統(tǒng)設(shè)計工程師設(shè)計自己的專用電路,以彌補“不足或過多”的不足。標(biāo)準(zhǔn)集成電路或通用集成電路產(chǎn)品的功能,從而推廣專用集成電路。道路開發(fā)。20世紀(jì)80年代末90年代初,以otp(一次性程序)為代表的用戶白色編程集成電路應(yīng)運而生。在這個階段,硬件是通用的,軟件是專用的。在國內(nèi)定時器是無處不在的,一般定時器用在計時方面,有了定時器的準(zhǔn)確的計時工具給人們帶來很多的方便。定時器應(yīng)用到很多方面,在報警和鬧鈴的方面都應(yīng)用到定時器準(zhǔn)確的計時功能,還有定時器,微波爐,自動通電器,這些都應(yīng)用到電子定時器。因為定時器準(zhǔn)確的計時了年月日分秒的信息,人們常用在計時方面,電子萬年設(shè)計可大可小,按人們需求來設(shè)計,一般人們用的定時器簡單方便,易于攜帶,而且價格便宜,很適合廣大的消費者。隨著時代的發(fā)展電子定時器的不斷的跟新,現(xiàn)在定時器的功能不斷完善,有的定時器的佩戴也看出了一個人的身份,現(xiàn)在的手表的價格有貴的有便宜,貴的手表可買一套房子,所以定時器有廣闊的發(fā)展前景。從以上角度可分析出來電子定時器在電子時代有廣闊的發(fā)展市場,它的發(fā)展不管可以推動國內(nèi)經(jīng)濟的發(fā)展,還可以推動世界的發(fā)展,給人類進步帶來了巨大的動力。1.4課題解決的主要內(nèi)容此次論文只要內(nèi)容是電子定時器在單片機方面的重要應(yīng)用,此次課題只要研究以下幾點:(1)芯片的選取是對定時器是非常重要的,在選取方面應(yīng)需要優(yōu)先考慮使用簡單方便、使用性、單片存儲的大小、抗斷電、低消耗。(2)根據(jù)選用的電子定時器芯片設(shè)計外圍電路和單片機的接口電路。(3)在硬件的選取和設(shè)計方面,讓人操作過程中簡單方便,容易完成,讓人在看電路方面一目了然。(4)根據(jù)硬件電路圖,在開發(fā)板上完成器件的焊接。(5)根據(jù)設(shè)計的硬件電路,編寫控制AT89C51芯片的單片機程序。(6)通過編程、編譯、調(diào)試,把程序下載到單片機上運行,并實現(xiàn)本設(shè)計的功能。

第二章系統(tǒng)的方案設(shè)計與論證單片機電子定時器的制作有多種方法,可供選擇的器件和運用的技術(shù)也有很多種。所以,該系統(tǒng)以滿足系統(tǒng)應(yīng)充分考慮系統(tǒng)環(huán)境的前提下進行操作的整體設(shè)計,選擇的結(jié)構(gòu)應(yīng)實現(xiàn)的,使用的設(shè)備,旨在適當(dāng)?shù)脑O(shè)置,使用簡單,方便,性能穩(wěn)定,功耗低,價格低廉。2.1硬件系統(tǒng)設(shè)計方案系統(tǒng)的設(shè)計要求由六個模塊初步確定:電源模塊、時鐘模塊、顯示模塊、鍵盤接口模塊、溫度測量模塊和報警模塊。電路系統(tǒng)框圖如圖1所示。圖2.1硬件電路框圖2.1.1單片機的選擇與論證(1)方案一:在使用芯片方面用芯片為硬件的重要器件,使用了FlashROM,所需要的內(nèi)部存儲空間有4KBROM,可以在超低的電壓工作,它可以在3V電壓下工作。單片機可與mcs-51系列兼容。其中許多在電路設(shè)計的在線編程過程中沒有編程,其中ISP是不可用的,當(dāng)在對電路調(diào)試過程中,要對程序許多的錯誤方面進行修改在這個過程中還要不斷增添一些新的功能都需要將次燒入程序中,在這個過程中不需要多次拔插芯片,由此這樣不會對芯片造成損壞。(2)方案二:在使用芯片方面用用AT89C51芯片為硬件的重要器件,使用了FlashROM,可在3V電壓工作運行,在兼容方面能完美的與MCS-51系列單片機完美兼容,在存儲方面該芯片存儲大小8KBROM。同時還應(yīng)該具備AT89C51的功能,在編程的過程中需要可擦除技術(shù),這個技術(shù)在編程過程中是非常需要的。在電路調(diào)試過程中,要對程序許多的錯誤方面進行修改在這個過程中還要不斷增添一些新的功能都需要將次燒入程序中,在整個過程中不需要多次拔插芯片,所以這樣不會對芯片造成損壞。在AT89C51內(nèi)部系統(tǒng)當(dāng)中含有8KBROM存儲芯片而且還支持ISP在線編程,所以采用AT89C51當(dāng)作主控芯片。2.1.2時鐘模塊設(shè)計與論證方案一:利用單片機內(nèi)部的信號定時器提供秒,通過編出的程序?qū)崿F(xiàn)年,月,日,星期,時,分,秒的數(shù)據(jù)。當(dāng)使用這種方案減少使用的芯片,節(jié)約成本,但實施時間錯誤。方案二:采用DS1302時鐘芯片的時鐘,DS1302時鐘芯片是一款高性能的芯片,可自動秒,分鐘,小時,日,周,月,年和計數(shù)閏年補償,精度高,內(nèi)存位作為臨時數(shù)據(jù)存儲區(qū),2.5V5.5V的工作電壓范圍,當(dāng)功耗小于300nA2.5V。在這兩種方案當(dāng)中,高時鐘芯片DS1302計數(shù)時間精度,而且第二種芯片更巧妙的運用到對閏年補償,因此采用方案二更好些。2.1.3溫度采集模塊設(shè)計與論證方案一:溫度傳感器(如熱敏電阻或AD590),然后通過AD轉(zhuǎn)換器,以獲得比標(biāo)準(zhǔn)的數(shù)字信號的準(zhǔn)確性,但價格昂貴,電路是比較復(fù)雜的。方案二:數(shù)字溫度傳感器ds18b20,可直接讀取被測溫度,并可根據(jù)實際要求通過簡單編程實現(xiàn)9-12位的讀數(shù),但精度不高,最大誤差為2。因為隨著溫度的DS18B20芯片,單總線訪問,降低成本,降低了生產(chǎn)難度,可以節(jié)省MCU資源,所以采用方案二的。2.1.4顯示模塊模塊設(shè)計與論證方案一:在顯示模塊運用了靜態(tài)的顯示方法,在制作方面靜態(tài)顯示模塊的硬件制作過程是非常的復(fù)雜,在這個過程中功的消耗是非常的大,在制作的過程中要多個移位寄存器在整個過程中不占用端口,制作過程中只用兩根串口線輸出。方案二:采用動態(tài)顯示方法,動態(tài)顯示模塊的硬件制作簡單,段掃描和位掃描各占用一個端口,總需占用單片機14個端口,采用間斷掃描法功耗小、硬件成本低及整個硬件系統(tǒng)體積相對減小。方案三:在制作過程中使用了LCD的方法,在制作硬件的過程中可簡單的與單片機接口,可顯示出許多信息,運行過程中消耗的功率小,成本很低。,在硬件方面LCM12864可顯示32個字符,LCD村子的缺點是亮度不夠。比較以上三種方案:方案一硬件復(fù)雜體積大、功耗大;方案二硬件簡單、功耗?。环桨溉布唵?,顯示內(nèi)容多,功耗小,成本低等。此次系統(tǒng)設(shè)計需要運行過程中所消耗的功小,所需要的體積小,所需要的成本低,顯示屏顯示的數(shù)據(jù)清楚等要求,通過對這三種方案的對比,選擇第三種方案較合適在硬件方面選擇了AT89C51作為主控芯片,DS1302時鐘芯片,LCM12864x顯示模塊,數(shù)字溫度傳感器DS18B20。在硬件方面選擇了AT89C51作為主控芯片,DS1302時鐘芯片,LCM12864x顯示模塊,數(shù)字溫度傳感器DS18B20系統(tǒng)的功能往往決定了系統(tǒng)的成本結(jié)構(gòu)、性能和功耗。很多人認(rèn)為3874LS164串行接口到外部顯示LEDRespack-8電源的AT89C51單片機決定了AT89C51單片機、DS1302的時鐘芯片。啟用電子日歷功能。2.2軟件系統(tǒng)設(shè)計方案系統(tǒng)主要用于日歷算法設(shè)計,主要包括溫度測量、按鍵掃描輸入等軟件部分。在程序的第一次運行初始化后,根據(jù)初始化命令初始化內(nèi)部程序中微控制器的管腳。運行程序后,初始化溫度測量,溫度傳感器讀取測量溫度。然后運行日歷計算程序,獲取日歷的時間和日期信息,完成計算。掃描程序鍵,檢查按鈕是否按下,如果沒有直接調(diào)用按鈕按下節(jié)日計算程序,則根據(jù)獲得的日歷信息計算假日。如果更新按鈕是節(jié)日計劃的關(guān)鍵變量,則在修改相應(yīng)變量后,按下節(jié)日計算的修改計算程序。運行顯示程序計算完成后,程序?qū)@示從溫度數(shù)據(jù)中獲取的日歷信息、與節(jié)假日對應(yīng)的信息,然后進行數(shù)字顯示。軟件框圖如下所示:圖2.2軟件框圖

第三章系統(tǒng)硬件的設(shè)計3.1單片機模塊設(shè)計AT89C51采用高密度非易失性存儲器技術(shù)在ATMEL公司生產(chǎn)。它的產(chǎn)品說明和引腳與工業(yè)80C51完全兼容。它具有以下標(biāo)準(zhǔn)功能:32位I/O端口、6矢量二級中斷結(jié)構(gòu)、2個數(shù)據(jù)指針、256字節(jié)RAM、看門狗定時器、3個16位定時器/計數(shù)器、8K字節(jié)閃存、6矢量二級中斷結(jié)構(gòu)、片上晶體振蕩器和時鐘電路,全雙工串行端口。AT89C51的引腳如下圖所示:圖3.1AT89C51的引腳圖3.2時鐘模塊設(shè)計3.2.1DS1302性能簡介時鐘有兩層含義:一是保證系統(tǒng)正常工作的參考振蕩定時信號,主要由晶體振蕩器和外圍電路組成。晶振頻率的大小決定了單片機系統(tǒng)的速度;二是指系統(tǒng)的標(biāo)準(zhǔn)定時時鐘,即定時時間,它通常有兩種實現(xiàn)方法:一是用軟件實現(xiàn),即用單片機內(nèi)部的可編程定時/計數(shù)器來實現(xiàn),但誤差很大,主要用在對時間精度要求不高的場合;二是用專門的時鐘芯片實現(xiàn)。因此,其與單片機之間的數(shù)據(jù)傳送是十分容易實現(xiàn)的,DS1302的引腳排列及內(nèi)部結(jié)構(gòu)圖如圖2:DS1302引腳說明X1,X232.768kHz晶振引腳GND:地線RST:復(fù)位端I/O:數(shù)據(jù)輸入/輸出端口SCLK:串行時鐘端口VCC1:慢速充電引腳VCC2:電源引腳圖3.2DS1302引腳3.2.2DS1302接口電路設(shè)計1時鐘芯片DS1302的接口電路及工作原理:圖3.3DS1302與MCU接口電路圖3.3為DS1302的接口電路,其中Vcc1為后備電源,Vcc2為主電源。VCC1在單電源與電池供電的系統(tǒng)中提供低電源并提供低功率的電池備份。DS1302由VCC1或VCC2兩者中較大者供電。當(dāng)VCC2大于VCC1+0.2V時,VCC2給DS1302供電。當(dāng)VCC2小于VCC1時,DS1302由VCC1供電。3.3溫度模塊設(shè)計3.3.1DS18B20性能簡介1.DS18B20的主要特性其性能特征可以概括如下:(1)獨特的單線接口只需要一個通信端口引腳;(2)溫度范圍-55℃至125℃,最高0.0625℃的分辨率;(3)線和連接到微控制器,從而減少了外部硬件電路;(4)零待機功耗;(5)通過3.0V-5.5V的數(shù)據(jù)線電源電壓范圍;非易失性溫度報警設(shè)置6用戶可定義;(6)負(fù)電壓特性,電源極性反轉(zhuǎn),體溫表不會燃燒,但不起作用。2.DS18B20原理其DS18B20主要作用是來延遲時間讀寫時間,溫度測量原理,接收DS1820相同的平均溫度值,因為從減小到750ms之間閃不同分辨率和不同,還有溫度轉(zhuǎn)換這方面。假如輸入脈沖計數(shù)器2計數(shù)器1,溫度產(chǎn)生的信號是-55℃對應(yīng)名冊依據(jù)預(yù)定值。所產(chǎn)生的計數(shù)器1的脈沖信號算由振蕩器產(chǎn)生的脈沖,依此類推可知道到針對2的計數(shù)到零,可知溫度可以預(yù)防累積值寄存器當(dāng)測量時候的溫度的寄存器數(shù)值的溫度。圖4斜率累加器補償和非線性溫度校正,對預(yù)置1校正輸出值。圖3.5DS18B20測溫原理3.3.2DS18B20接口電路設(shè)計由4.6圖所示可知,此系統(tǒng)中使用數(shù)字式溫度傳感器DS18B20,其優(yōu)點有測量精度高,它的電路連接簡單特點。這一類型傳感器只需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,可用P3.7與DS18B20的DQ口連接、Vcc接電源、GND接地方法。圖3.6溫度傳感器DS18B20接口電路3.4顯示模塊設(shè)計1.LCM12864的接口信號說明如表3.1:表3.1LCM12864的接口信號編號引腳符號功能說明編號引腳符號功能說明1VSS電源地9D2DATAI/O2VDD電源正極10D3DATAI/O3VL液晶顯示偏壓信號11D4DATAI/O4RS數(shù)據(jù)/命令選擇端(H/L)12D5DATAI/O5R/W讀/寫選擇端(H/L)13D6DATAI/O6E使能信號14D7DATAI/O7D0DATAI/O15BLA背光正極8D1DATAI/O16BLK背光負(fù)極2.基本操作時序如下:(1)讀狀態(tài):RS=L,RW=H,E=H(2)寫指令:RS=L,RW=L,D0~D7=指令碼,E=高脈沖(3)讀數(shù)據(jù):RS=H,RW=H,E=H(4)寫數(shù)據(jù):RS=H,RW=L,D0~D7=數(shù)據(jù),E=高脈沖3.5按鍵模塊設(shè)計此系統(tǒng)要用到了5個按鍵進行,一個按鍵可用于系統(tǒng)手動復(fù)位,其他的四個采用了獨立的按鍵,這一種的接法查詢非常簡單,程序處理過程中是非常的簡單,在這過程中省了CPU資源很多,由此可以看出按鍵電路如圖3.7所示,這4個獨立按鍵分別和AT89C51的P3.0、P3.1、P3.2、P3.3接口相連成的。圖3.7按鍵電路對以上4個按鍵作簡要說明:S4——SET鍵,S3——UP鍵,S2——DOWN鍵,S5——OUT/STOP鍵。SET鍵:按下SET鍵進入時間校準(zhǔn)狀態(tài),按一下進入秒調(diào)整,兩下分調(diào)整,依此類推可進行各年月日,時分秒以及星期的校準(zhǔn);UP鍵:當(dāng)SET鍵按下時,UP進行SET選定項(如:小時)的加操作;DOWN鍵:當(dāng)SET鍵按下時,DOWN進行SET選定項(如:小時)的減操作;OUT鍵:當(dāng)OUT鍵按下時,此鍵功能為退出校準(zhǔn)功能,進入下一模式,顯示溫度值和上下限的溫度值。3.6鬧鐘模塊設(shè)計圖3.8蜂鳴器電路蜂鳴器的介紹:蜂鳴器主要應(yīng)用在電子器件方面,一般主要的作用就是播放器的發(fā)聲器件,沒有它的作用,所有播放器的硬件就不能發(fā)聲,它就相當(dāng)于一個小型的音響,他還作用到計算機方面,比如筆記本一般都自帶蜂鳴器,然而臺式的電腦上面一般都沒有,可以通過購買音響就可以放出聲音,然而音響主要的結(jié)構(gòu)就是蜂鳴器。報警器也是通過蜂鳴器的功能而制作的,通過蜂鳴器所放出的聲音,提醒有著防盜的作用,然而顯示出蜂鳴器對人類的重要性,許多的大公司都是通過用報警器來進行防盜的,銀行對蜂鳴器的需求是非常的大的。還有音樂播放器對蜂鳴器的需求是非常大的,因為有了蜂鳴器播放設(shè)備才能放出動聽的歌曲,讓人類在緊張的時候聽著歌,放松緊張的神經(jīng)。蜂鳴器主要的分類有兩類,只要的分類為電壓式蜂鳴器和電磁式蜂鳴器。蜂鳴器在電路中是有很多的圖形的符號,對于有些很大的電路圖,電路里面的東西復(fù)雜又多樣,有時你想找到對應(yīng)的電路圖形是非常的困難的,所以想清楚簡單快速的認(rèn)出蜂鳴器就要知道蜂鳴器在電路中的字母表達(dá)式,蜂鳴器在電路的表達(dá)字母是“H”或者“HA”’,這樣可以很快的找到蜂鳴器,讓你對煩躁的電路圖沒有那么厭倦。3.7系統(tǒng)功能實現(xiàn)當(dāng)按下P3.3鍵時,系統(tǒng)進入另一模式,可以通過按鍵來設(shè)置溫度上下限,當(dāng)溫度超過溫度上限或低于溫度下限,此時液晶會顯示越限標(biāo)志,如果想要退出該模式就在按一下P3.3即可。系統(tǒng)原理圖如圖4.5:圖3.9系統(tǒng)原理圖

第四章系統(tǒng)軟件設(shè)計和實現(xiàn)本次設(shè)計的軟件部分主要選擇C語言進行設(shè)計,C語言以模塊化進行編寫具有閱讀性強,易于編寫、適用性高等特點。電子日歷功能以C語言程序控制的方式來實現(xiàn)的。此次系統(tǒng)的軟件設(shè)計和硬件設(shè)計是相互結(jié)合在一起的,通過所需要的功能分成不同的程序模塊還有設(shè)計,編程還有不斷的調(diào)試,直到最后連接在主程序模塊上面。這有利于修改和調(diào)試程序,增強了程序的可移植性。4.1系統(tǒng)初始化該系統(tǒng)主要用于日歷算法方案設(shè)計,該方案設(shè)計主要包括溫度測量,按鍵掃描輸入等軟件的一部分。在程序啟動第一運行進行初始化后,根據(jù)初始化命令初始化內(nèi)部的程序的微控制器的各引腳的狀態(tài),運行程序后初始化完成溫度測量,溫度傳感器讀取的測得的溫度,然后運行公歷計算程序,獲得日歷時間,日期信息,然后運行該程序鍵掃描,檢測按鈕是否按下,如果沒有直接調(diào)用按鈕被按下節(jié)日計算程序,根據(jù)獲得的公歷信息計算假期,如果更新按鈕是關(guān)鍵變量的節(jié)日計劃,根據(jù)相應(yīng)的變量修改后的假期計算的節(jié)日計算程序的修改后的計算后按運行顯示程序的計算完成后,程序?qū)@示溫度數(shù)據(jù)獲得的日歷信息、節(jié)假日所對應(yīng)于的信息然后通過數(shù)字進行顯示。主程序流程圖:圖4.1主程序流程圖4.2顯示模塊LDC的驅(qū)動包括初始化操作、寫指令、寫數(shù)據(jù)、顯示模塊的設(shè)定等操作。圖4.2LDC的驅(qū)動流程圖LCM12864有以下幾個基本時序:1.讀狀態(tài):RS=L,RW=H,E=H:2.寫指令:RS=L,RW=L,DO~D7指令碼,E=高脈沖3.讀數(shù)據(jù):RS=H,RW=H.E=H;4.寫數(shù)據(jù):RS=H,RW=L,DO~D7=數(shù)據(jù),E=高脈沖;4.3按鍵掃描模塊本設(shè)計中按鍵采用查詢法識別按鍵,程序簡單,本系統(tǒng)中含有四個調(diào)整按鍵,分別命名為SET、UP、DOWN、SET1。在主函數(shù)里面查詢SET、SET1P兩個按鍵是否按鍵是否按下,UP、DOWN、SET1。在主函數(shù)里面查詢SET、SE1P的按鍵是否按下,UP、DOWN鍵的功能由SET和SET1鍵激活。這樣設(shè)計可減少CPU的工作量,下面簡單介紹本設(shè)計中鍵盤掃描程序。4.4溫度控制模塊在這3種操作中,只有寫操作是單向的,初始化操作和讀操作都是雙向的。溫度采集模塊流程圖如下圖所示:圖4.3溫度采集模塊流程圖具體程序設(shè)計如下:byteow_reset(void){bytepresence;DQ=0;//拉低總線delay(29);//保持480usDQ=1;//釋放總線delay(3);//等待回復(fù)presence=DQ;//讀取信號delay(25);//等待結(jié)束信號return(presence);//返回0:正常1:不存在}//從1-wire總線上讀取一個字節(jié)4.5時間數(shù)據(jù)采集模塊串行的DS1302時鐘芯片的期中主要包括了控制邏輯、移位寄存器、實時時鐘、振蕩器以及內(nèi)、外部RAM。要是任意的數(shù)據(jù)傳送初始化,就應(yīng)把RST置為高電平,而且還應(yīng)該給移位寄存器裝入8位的提供地址和命名信息。數(shù)據(jù)應(yīng)該串行輸入在脈沖信號的上升沿不管是發(fā)生“讀”周期還是“寫”周期,也不管是傳送的方式是單個字節(jié)的傳送或是多字節(jié)的傳送。開始時候的8位指定的四十個字節(jié)中的那一個將被其訪問。在初始八個時鐘周期之后就把命令字裝入到移位的寄存器,之外的時鐘正在讀操作時的輸出/輸入的數(shù)據(jù),時鐘脈沖的數(shù)量在單個字節(jié)方式下應(yīng)該8加8,其在多個字節(jié)的方式下最大可以能夠達(dá)到248的數(shù)。時間流程圖如下圖所示:圖4.4時間流程圖4.6鬧鐘模塊這部分的實現(xiàn)是采用E2PROM存儲器來存儲鬧鐘信息,因為它具有掉電仍能保存數(shù)據(jù)的特征。所以本設(shè)計中吧鬧鐘信息寫先寫入AT24C02存儲中,然后在程序中讀出數(shù)據(jù)與當(dāng)前時間進行比較,如果相等則發(fā)出鬧鐘警告。如果要對鬧鐘值進行修改,可通過幾個按鍵進行,系統(tǒng)能根據(jù)用戶的設(shè)定自動更新鬧鐘信息。鬧鐘程序的流程圖如下圖所示。圖4.5鬧鐘程序的流程圖

第五章系統(tǒng)測試5.1系統(tǒng)測試環(huán)境proteus實驗室電子公司開發(fā)的eda工具軟件由isis和ares兩部分組成。isis是一種方便的電子系統(tǒng)仿真平臺軟件。ares是一個高級的布線編輯軟件。它集成了先進的原理接線圖、混合模式spice電路仿真、pcb設(shè)計和自動布線。建立一個完整的公司。本文用PROTEUS仿真軟件對電子定時器的硬件電路設(shè)計。5.2系統(tǒng)測試過程與結(jié)果在PROTEUSISIS中的最終設(shè)計圖如圖5.1所示。圖5.1系統(tǒng)仿真圖最后分別對各元器件的屬性值進行設(shè)置,單擊按鈕,進行電氣檢測,查看接線是否合理,說明硬件電路已經(jīng)順利的完成。單擊按鈕,進行對電子定時器的仿真測試,運行結(jié)果如圖5.2所示。圖5.2電路仿真測試由于使用的是匯編語言編寫的程序,如果在測量的時候測量顯示錯誤,說明程序中存在問題,這個問題只用在仿真測量的時候才能被發(fā)現(xiàn),這時可以使用PROTEUS對程序進行調(diào)試。單擊按鈕。在單擊菜單欄中的Debug,可以在最下面選擇打開內(nèi)存觀察窗口,寄存器值觀察窗口,匯編語言源代碼窗口等等。

第六章總結(jié)和展望6.1總結(jié)下在這里本此設(shè)計已經(jīng)告一段落,本設(shè)計首先對整個系統(tǒng)的硬件部分進行選型討論分析,在軟件方面中我通過電腦的網(wǎng)絡(luò)對定時器方面的資料做出許多的了解,在此次的過程中還學(xué)會了keil軟件的學(xué)習(xí),讓我學(xué)會了對程序進行分模塊化處理和設(shè)計,此次課設(shè)讓我學(xué)會設(shè)計了陽歷數(shù)據(jù)讀取程序、陽歷轉(zhuǎn)陰歷程序、溫度采集程序、鬧鈴程序以及LCD顯示程序,做出的定時器具有讀取數(shù)據(jù)顯示直觀、功能強大、電路簡潔明了、成本低等很多的優(yōu)點。非常的符合定時器的發(fā)展趨勢,在市場上有廣闊的前景。通過這次畢業(yè)設(shè)計我學(xué)習(xí)到很多知識,如在電路焊接過程當(dāng)中,我總是喜歡用較多的錫絲結(jié)果導(dǎo)致電源直接的錫絲過多互相連通,一不小心就燒傷到自己,還有的時候出現(xiàn)短路現(xiàn)象,這樣讓我心煩不想做下去,因為我是一個很不耐煩的人,焊接對于我來說剛接觸,但是如果你想要電路通暢無阻的話一定要焊接到很好,對于焊接還要給老師看畢竟這是畢業(yè)設(shè)計的一部分,想到這里我心急如焚,但是沒有人能幫你,然后我靜下來想想煩惱是解決不了一切問題的,只有自己靜下心來想出解決的辦法,才能找出問題的根本完成好焊接,然后我就打電話詢問大學(xué)時候教焊接的老師,老師細(xì)心講解焊接的過程,讓我頓時懂得了焊接了許多知識,然后通過電腦網(wǎng)絡(luò)的觀看視頻,讓我最快的速度學(xué)會了焊接,這次焊接讓我懂得了,雖然電路工程量大,但是不能心急,一個個慢慢來不能急于求成。反而達(dá)到事半功倍的效果,通過此次的焊接讓我學(xué)到許多的東西,這些東西是在學(xué)校學(xué)不來的東西,那就是毅力。在編程過程中我遇到很多的麻煩,許多編程的東西都忘記,這讓我在編程的過程中非常的苦惱,代碼敲到一半就不知道怎么編下去了,就要進行翻書,有時翻書還找不到自己想要的知識點,有時在編程的過程中一度沒有任何思路,完全不知道怎么編下去,在整個過程中寫寫停停,讓我?guī)状蜗敕艞?,在我學(xué)習(xí)的道路上從沒有碰到過這么困難的問題,我想我不能再這樣下去了,所以我鼓起勇氣打電話向同學(xué)溝通還有和老師的交流,在與他們溝通的過程中,讓我對我所想編的程序有一個總體的框架和概念,對不懂得知識在網(wǎng)上進行查找,這讓我更加有信息能編出程序出來,終于功夫不負(fù)有心人讓我編出我自己想要的程序,這時回首望來我感覺非常的欣喜對之前的苦惱和煩躁一掃而過,現(xiàn)在的我滿滿的都是成就感,雖然在整個過程中自己想放棄,到最后自己還是堅持下來了,也練就了我的耐心,做什么事都要有耐心??傊?,此次畢業(yè)設(shè)計使我的能力得到了全方位的提高,為以后的工作吸取經(jīng)驗教訓(xùn)。6.2展望對于即將的畢業(yè)的我來說未來是一片迷茫的,同時我也是對未來也是無限的憧憬,我想每個人在這個階段都有這種想法,但是我們要有一個對未來有一個好的規(guī)劃,這樣才讓你有奮斗的動力和目標(biāo),這樣讓你人生之路走得不迷茫,自己知道自己即將走那條路,然后朝著目標(biāo)前行,我想只要我為自己的目標(biāo)奮斗,我想一定會到達(dá)我想要的高度,那樣你會為自己的成功而感到開心快樂,這不僅僅不是物質(zhì)上的滿足,而是精神上的支柱,這讓你活著有著人生的價值,所以我會為我的人生目標(biāo)加油前進。

參考文獻[1]陳明熒.8051單片機課程設(shè)計實訓(xùn)教程[M].北京:清華大學(xué)出版社.2012.[2]蘇平.單片機的原理與接口技術(shù)[M].北京:電子工業(yè)出版社,2013:1-113.[3]王忠民.微型計算機原理[M].西安:西安科技大學(xué)出版社,2012:15-55.[4]何立民.單片機高級教程[M].北京:北京航空航天大學(xué)出版社,2013年[5]紀(jì)宗南.單片機外圍器件使用手冊[M].北京:北京航空航天大學(xué)出版社,2013.622-655.[6]周雪.模擬電子技術(shù)[M]西安:西安電子科技大學(xué)出版社,2012:81-95.[7]左金生.電子與模擬電子技術(shù)[M].北京:電子工業(yè)出版社,2011:105-131.[8]尹勇.單片機開發(fā)環(huán)境μVision2的開發(fā)指南[M].北京:北京航空航天大學(xué)出版社,2012:173-199.[9]馬忠梅,籍順心等.單片機的C語言應(yīng)用程序設(shè)計[M].北京航空航天大學(xué)出版社,2011年.[10]新編單片機原理與應(yīng)用(第二版).西安電子科技大學(xué)出版社,2012.2[11]張萌.單片機應(yīng)用系統(tǒng)開發(fā)綜合實例[M].北京:清華大學(xué)出版社,2012.7[12]樓然苗.單片機課程設(shè)計指導(dǎo)[M].北京:北京航空航天大學(xué)出版社,2011.7[13]朱思榮.51單片機實現(xiàn)公歷與農(nóng)歷、星期的轉(zhuǎn)換[Z].當(dāng)當(dāng)電子網(wǎng).2011.[14]李廣弟.單片機原理及應(yīng)用[M]北京航空航天大學(xué)出版社,2012年[15]王越明.電子定時器的設(shè)計[J].黑龍江科技信息,2011年[16]VergheseGC,LangH,CaseyLF.Analysisofinstabilityinelectricalmachines.IEEETransonIA,2009,22:853-864.[17]RichardBlanchard,JamesHarden.Mosfetscontrolmorepowerinthesame-sizedpackage.ElectronicDesign,1982,12:107~114

致謝在本論文即將完成之際,謹(jǐn)此向我敬愛的導(dǎo)師致以衷心的感謝和崇高的敬意!感謝學(xué)院所有老師,在學(xué)校這幾年離不開他們的幫助,他們用辛勤的汗水,用豐富的學(xué)識,用嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,用正直的人格素養(yǎng),用樸素的生活方式,感染著我,教育著我,從他們身上學(xué)到的這些優(yōu)良品格,將使我受益終身。真誠感謝我的師兄師姐及同門兄弟姐妹們,在研究生短暫的時光里,他們以自身的嚴(yán)謹(jǐn)好學(xué),勤勉的處事態(tài)度影響著我,讓我不斷自省,不斷成長。在我有時候因家里或工作上的一些事物無法及時到學(xué)校時,是他們在我最需要的時候給予了我最無私的幫助,給與了我極大的鼓勵和支持,真心感謝他們。由衷地感謝我的母校,在這里學(xué)習(xí)生活雖然只有短短的兩年時間,卻讓我深刻的感受到了優(yōu)秀特質(zhì),在這里所留下的美好記憶將會一路伴我勇敢前行。最后,衷心地感謝為評閱本論文而付出寶貴時間和辛勤勞動的各位專家和教授!

附錄1元件清單序號元件1萬用板9*152DC電源插座3蜂鳴器4自鎖開關(guān)52.2K電阻*26STC89C52單片機740腳IC座8DS1302芯片9鈕扣電池10電池座118腳IC座12LCD1602液晶顯示屏1316p單排插針1416p單排母座15DS18B20溫度傳感器1610K排阻(103)1710K電阻*31810uF電容19按鍵*42032.768mhz晶振211.5k電阻2212M晶振2330P電容*2249012三極管*225導(dǎo)線26焊錫27USB電源線或(電池盒+DC插頭)

附錄2源代碼#include<reg52.h>//#include"DS18B20_3.H"#include<string.h>#include<intrins.h>#defineuintunsignedint#defineucharunsignedchar#definewd1 //定義是否有溫度功能=0時無溫度,=1時有溫度#include"eeprom52.h"#defineyh0x80//LCD第一行的初始位置,因為LCD1602字符地址首位D7恒定為1(100000000=80)#defineer0x80+0x40//LCD第二行初始位置(因為第二行第一個字符位置地址是0x40)//液晶屏的與C51之間的引腳連接定義(顯示數(shù)據(jù)線接C51的P0口)sbiten=P2^7;sbitrw=P2^6;//如果硬件上rw接地,就不用寫這句和后面的rw=0了sbitrs=P2^5;//校時按鍵與C51的引腳連接定義sbitset=P3^0; //設(shè)置鍵sbitadd=P3^1; //加鍵sbitdec=P3^2; //減鍵sbitseeNL_NZ=P3^3; //查看農(nóng)歷/鬧鐘sbitDQ=P3^7; //sbitbuzzer=P2^0; //蜂鳴器,通過三極管8550驅(qū)動,端口低電平響sbitled=P2^4; //LCD背光開關(guān)bitled1=1;bitNZ_sdgb=1;unsignedchartemp_miao;unsignedcharbltime;//背光亮的時間//DS1302時鐘芯片與C51之間的引腳連接定義sbitIO=P1^1;sbitSCLK=P1^0;sbitRST=P1^2;chara,miao,shi,fen,ri,yue,nian,week,setn,temp;uintflag;//flag用于讀取頭文件中的溫度值,和顯示溫度值bitc_moon;charnz_shi,nz_fen,setNZn; //定義鬧鐘變量ucharshangyimiao,bsn,temp_hour; //記錄上一秒時間ucharT_NL_NZ; //計數(shù)器bittimerOn=0; //鬧鐘啟用標(biāo)志位bitbaoshi=0; //整點報時標(biāo)志位bitp_r=0; //平年/潤年=0表示平年,=1表示潤年dataucharyear_moon,month_moon,day_moon;sbitACC0=ACC^0;sbitACC7=ACC^7;/************************************************************ACC累加器=AACC.0=E0HACC.0就是ACC的第0位。Acc可以位尋址。累加器ACC是一個8位的存儲單元,是用來放數(shù)據(jù)的。但是,這個存儲單元有其特殊的地位,是單片機中一個非常關(guān)鍵的單元,很多運算都要通過ACC來進行。以后在學(xué)習(xí)指令時,常用A來表示累加器。但有一些地方例外,比如在PUSH指令中,就必須用ACC這樣的名字。一般的說法,A代表了累加器中的內(nèi)容、而ACC代表的是累加器的地址。***************************************************************//******************把數(shù)據(jù)保存到單片機內(nèi)部eeprom中******************/voidwrite_eeprom(){ SectorErase(0x2000); byte_write(0x2000,nz_shi); byte_write(0x2001,nz_fen); byte_write(0x2002,timerOn); byte_write(0x2060,a_a); }/******************把數(shù)據(jù)從單片機內(nèi)部eeprom中讀出來*****************/voidread_eeprom(){ nz_shi=byte_read(0x2000); nz_fen=byte_read(0x2001); timerOn=byte_read(0x2002); a_a=byte_read(0x2060);}/**************開機自檢eeprom初始化*****************/voidinit_eeprom(){ read_eeprom(); //先讀 if(a_a!=1) //新的單片機初始單片機內(nèi)問eeprom { nz_shi=12; nz_fen=30; timerOn=0; a_a=1; write_eeprom(); //保存數(shù)據(jù) } }//********陽歷轉(zhuǎn)換陰歷表************************************codeucharyear_code[597]={0x04,0xAe,0x53,//190100x0A,0x57,0x48,//190230x55,0x26,0xBd,//190360x0d,0x26,0x50,//190490x0d,0x95,0x44,//1905120x46,0xAA,0xB9,//1906150x05,0x6A,0x4d,//1907180x09,0xAd,0x42,//1908210x24,0xAe,0xB6,//19090x04,0xAe,0x4A,//19100x6A,0x4d,0xBe,//19110x0A,0x4d,0x52,//19120x0d,0x25,0x46,//19130x5d,0x52,0xBA,//19140x0B,0x54,0x4e,//19150x0d,0x6A,0x43,//19160x29,0x6d,0x37,//19170x09,0x5B,0x4B,//19180x74,0x9B,0xC1,//19190x04,0x97,0x54,//19200x0A,0x4B,0x48,//19210x5B,0x25,0xBC,//19220x06,0xA5,0x50,//19230x06,0xd4,0x45,//19240x4A,0xdA,0xB8,//19250x02,0xB6,0x4d,//19260x09,0x57,0x42,//19270x24,0x97,0xB7,//19280x04,0x97,0x4A,//19290x66,0x4B,0x3e,//19300x0d,0x4A,0x51,//19310x0e,0xA5,0x46,//19320x56,0xd4,0xBA,//19330x05,0xAd,0x4e,//19340x02,0xB6,0x44,//19350x39,0x37,0x38,//19360x09,0x2e,0x4B,//19370x7C,0x96,0xBf,//19380x0C,0x95,0x53,//19390x0d,0x4A,0x48,//19400x6d,0xA5,0x3B,//19410x0B,0x55,0x4f,//19420x05,0x6A,0x45,//19430x4A,0xAd,0xB9,//19440x02,0x5d,0x4d,//19450x09,0x2d,0x42,//19460x2C,0x95,0xB6,//19470x0A,0x95,0x4A,//19480x7B,0x4A,0xBd,//19490x06,0xCA,0x51,//19500x0B,0x55,0x46,//19510x55,0x5A,0xBB,//19520x04,0xdA,0x4e,//19530x0A,0x5B,0x43,//19540x35,0x2B,0xB8,//19550x05,0x2B,0x4C,//19560x8A,0x95,0x3f,//19570x0e,0x95,0x52,//19580x06,0xAA,0x48,//19590x7A,0xd5,0x3C,//19600x0A,0xB5,0x4f,//19610x04,0xB6,0x45,//19620x4A,0x57,0x39,//19630x0A,0x57,0x4d,//19640x05,0x26,0x42,//19650x3e,0x93,0x35,//19660x0d,0x95,0x49,//19670x75,0xAA,0xBe,//19680x05,0x6A,0x51,//19690x09,0x6d,0x46,//19700x54,0xAe,0xBB,//19710x04,0xAd,0x4f,//19720x0A,0x4d,0x43,//19730x4d,0x26,0xB7,//19740x0d,0x25,0x4B,//19750x8d,0x52,0xBf,//19760x0B,0x54,0x52,//19770x0B,0x6A,0x47,//19780x69,0x6d,0x3C,//19790x09,0x5B,0x50,//19800x04,0x9B,0x45,//19810x4A,0x4B,0xB9,//19820x0A,0x4B,0x4d,//19830xAB,0x25,0xC2,//19840x06,0xA5,0x54,//19850x06,0xd4,0x49,//19860x6A,0xdA,0x3d,//19870x0A,0xB6,0x51,//19880x09,0x37,0x46,//19890x54,0x97,0xBB,//19900x04,0x97,0x4f,//19910x06,0x4B,0x44,//19920x36,0xA5,0x37,//19930x0e,0xA5,0x4A,//19940x86,0xB2,0xBf,//19950x05,0xAC,0x53,//19960x0A,0xB6,0x47,//19970x59,0x36,0xBC,//19980x09,0x2e,0x50,//19992940x0C,0x96,0x45,//20002970x4d,0x4A,0xB8,//20010x0d,0x4A,0x4C,//20020x0d,0xA5,0x41,//20030x25,0xAA,0xB6,//20040x05,0x6A,0x49,//20050x7A,0xAd,0xBd,//20060x02,0x5d,0x52,//20070x09,0x2d,0x47,//20080x5C,0x95,0xBA,//20090x0A,0x95,0x4e,//20100x0B,0x4A,0x43,//20110x4B,0x55,0x37,//20120x0A,0xd5,0x4A,//20130x95,0x5A,0xBf,//20140x04,0xBA,0x53,//20150x0A,0x5B,0x48,//20160x65,0x2B,0xBC,//20170x05,0x2B,0x50,//20180x0A,0x93,0x45,//20190x47,0x4A,0xB9,//20200x06,0xAA,0x4C,//20210x0A,0xd5,0x41,//20220x24,0xdA,0xB6,//20230x04,0xB6,0x4A,//20240x69,0x57,0x3d,//20250x0A,0x4e,0x51,//20260x0d,0x26,0x46,//20270x5e,0x93,0x3A,//20280x0d,0x53,0x4d,//20290x05,0xAA,0x43,//20300x36,0xB5,0x37,//20310x09,0x6d,0x4B,//20320xB4,0xAe,0xBf,//20330x04,0xAd,0x53,//20340x0A,0x4d,0x48,//20350x6d,0x25,0xBC,//20360x0d,0x25,0x4f,//20370x0d,0x52,0x44,//20380x5d,0xAA,0x38,//20390x0B,0x5A,0x4C,//20400x05,0x6d,0x41,//20410x24,0xAd,0xB6,//20420x04,0x9B,0x4A,//20430x7A,0x4B,0xBe,//20440x0A,0x4B,0x51,//20450x0A,0xA5,0x46,//20460x5B,0x52,0xBA,//20470x06,0xd2,0x4e,//20480x0A,0xdA,0x42,//20490x35,0x5B,0x37,//20500x09,0x37,0x4B,//20510x84,0x97,0xC1,//20520x04,0x97,0x53,//20530x06,0x4B,0x48,//20540x66,0xA5,0x3C,//20550x0e,0xA5,0x4f,//20560x06,0xB2,0x44,//20570x4A,0xB6,0x38,//20580x0A,0xAe,0x4C,//20590x09,0x2e,0x42,//20600x3C,0x97,0x35,//20610x0C,0x96,0x49,//20620x7d,0x4A,0xBd,//20630x0d,0x4A,0x51,//20640x0d,0xA5,0x45,//20650x55,0xAA,0xBA,//20660x05,0x6A,0x4e,//20670x0A,0x6d,0x43,//20680x45,0x2e,0xB7,//20690x05,0x2d,0x4B,//20700x8A,0x95,0xBf,//20710x0A,0x95,0x53,//20720x0B,0x4A,0x47,//20730x6B,0x55,0x3B,//20740x0A,0xd5,0x4f,//20750x05,0x5A,0x45,//20760x4A,0x5d,0x38,//20770x0A,0x5B,0x4C,//20780x05,0x2B,0x42,//20790x3A,0x93,0xB6,//20800x06,0x93,0x49,//20810x77,0x29,0xBd,//20820x06,0xAA,0x51,//20830x0A,0xd5,0x46,//20840x54,0xdA,0xBA,//20850x04,0xB6,0x4e,//20860x0A,0x57,0x43,//20870x45,0x27,0x38,//20880x0d,0x26,0x4A,//20890x8e,0x93,0x3e,//20900x0d,0x52,0x52,//20910x0d,0xAA,0x47,//20920x66,0xB5,0x3B,//20930x05,0x6d,0x4f,//20940x04,0xAe,0x45,//20950x4A,0x4e,0xB9,//20960x0A,0x4d,0x4C,//20970x0d,0x15,0x41,//20980x2d,0x92,0xB5,//2099};///月份數(shù)據(jù)表codeucharday_code1[9]={0x0,0x1f,0x3b,0x5a,0x78,0x97,0xb5,0xd4,0xf3};codeuintday_code2[3]={0x111,0x130,0x14e};/*函數(shù)功能:輸入BCD陽歷數(shù)據(jù),輸出BCD陰歷數(shù)據(jù)(只允許1901-2099年)調(diào)用函數(shù)示例:Conversion(c_sun,year_sun,month_sun,day_sun)如:計算2004年10月16日Conversion(0,0x4,0x10,0x16);c_sun,year_sun,month_sun,day_sun均為BCD數(shù)據(jù),c_sun為世紀(jì)標(biāo)志位,c_sun=0為21世紀(jì),c_sun=1為19世紀(jì)調(diào)用函數(shù)后,原有數(shù)據(jù)不變,讀c_moon,year_moon,month_moon,day_moon得出陰歷BCD數(shù)據(jù)*/bitc_moon;//子函數(shù),用于讀取數(shù)據(jù)表中農(nóng)歷月的大月或小月,如果該月為大返回1,為小返回0bitget_moon_day(ucharmonth_p,uinttable_addr){ uchartemp10;switch(month_p){case1:{temp10=year_code[table_addr]&0x08;if(temp10==0)return(0);elsereturn(1);}case2:{temp10=year_code[table_addr]&0x04;if(temp10==0)return(0);elsereturn(1);}case3:{temp10=year_code[table_addr]&0x02;if(temp10==

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論