版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
./目錄14253摘要 I17054Abstract II100771緒論 177081.1系統(tǒng)基本方案選擇和論證 11011.2電路設(shè)計最終方案決定 332002系統(tǒng)的硬件設(shè)計與實現(xiàn) 4281862.1電路設(shè)計框圖 4110712.2系統(tǒng)硬件概述 4130272.3主要單元電路的設(shè)計 5145043系統(tǒng)的軟件設(shè)計 15248163.1程序流程框圖 15288203.2子程序 17322894系統(tǒng)測試 18241254.1硬件測試 18105124.2軟件測試 18140315結(jié)束語 1929660參考文獻 2014090附錄:程序 2114069致 30.摘要本文借助電路仿真軟件Protues對基于AT89S51單片機的電子萬年歷的設(shè)計方法及仿真進行了全面的闡述。該電子萬年歷在硬件方面主要采用AT89C51單片機作為主控核心,由DS1302時鐘芯片提供時鐘、1602LCM點陣液晶顯示屏顯示。AT89C51單片機是由Atmel公司推出的,功耗小,電壓可選用4~6V電壓供電;DS1302時鐘芯片是美國DALLAS公司推出的具有涓細電流充電功能的低功耗實時時鐘芯片,它可以對年、月、日、星期、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能,而且DS1302的使用壽命長,誤差??;數(shù)字顯示是采用的LED液晶顯示屏來顯示,可以同時顯示年、月、日、星期、時、分、秒等信息。此外,該電子萬年歷還具有時間校準等功能。在軟件方面,主要包括日歷程序、時間調(diào)整程序,顯示程序等。所有程序編寫完成后,在Keil軟件中進行調(diào)試,確定沒有問題后,在Proteus軟件中嵌入單片機進行仿真。論文主要研究了液晶顯示器LCM及時鐘芯片DS1302,溫度傳感器DS18B20與單片機之間的硬件互聯(lián)及通信,對數(shù)種硬件連接方案進行了詳盡的比較,在軟件方面對日歷算法也進行了論述。研究結(jié)果表明,由于萬年歷的應(yīng)用相當普遍,所以其設(shè)計的核心在于硬件成本的節(jié)約軟件算法的優(yōu)化,力求做到物美價廉,才能擁有更廣闊的市場前景。關(guān)鍵詞:單片機;DS1302;DS18B20;LCM1602AbstractThispapermainlydiscussthedesignandsimulationofelectroniccalenderbasedonAT89S51withthehelpofProtues.Onthehardwareside,theelectroniccalendarusingAT89C51microcontrollerasthemaincontrolcenter,clockprovidedbytheDS1302clockchip,1602LEDdotmatrixLCDdisplay.AtmelCorporationAT89C51microcontrollerisproductedbyAtmelCorporation,lowpowerconsumption,voltagecanbeselected4V~6Vvoltagepowersupply;DS1302clockchip,launchedintheUnitedStateswithDALLASsmallcurrentchargingfunctionrealtimeclockchip,lowpowerconsumption,itcanbeyears,month,date,day,hour,minute,secondstime,alsohasaleapyearcompensationandotherfunctions,andDS1302longlife,smallerror;LEDdigitaldisplayisusedinLCDdisplaysthatcandisplayin,month,day,week,hours,minutes,secondsandotherinformation.Inaddition,theelectroniccalendarisalsoatimecalibrationfunctions.Intermsofsoftware,includingcalendarprogram,timetoadjustprocedures,displayprocedures.Allprogrammingiscomplete,theKeilsoftwaredebugging,makesurethereisnoproblem,intheProteussoftwareembeddedwithinthesimulatedMCU.ThisarticlefocusonliquidcrystalscreenLCM1602andclockchipDS1302,temperaturesensorDS18B20whichconnectedandcommunicatedwithMicrocontroller.Severalsolutionswillalsocomparedwitheachother.Onsoftwareside,calendercalculationwillbediscussedaswell.Theresultsareasfollows:aselectroniccalenderarewidelyusedinourdailylife.Itshouldbechipandconvenientsoastowinmoreprofit.Keywords:Microcontroller,DS1302;DS18B20;LCD1602..1緒論隨著社會、科技的發(fā)展,人類得知時間,從觀太陽、擺鐘到現(xiàn)在電子鐘,不斷研究、創(chuàng)新。為了在觀測時間的同時,能夠了解其它與人類密切相關(guān)的信息,比如溫度、星期、日期等,電子萬年歷誕生了,它集時間、日期、星期和溫度功能于一身,具有讀取方便、顯示直觀、功能多樣、電路簡潔等諸多優(yōu)點,符合電子儀器儀表的發(fā)展趨勢。伴隨著電子技術(shù)的迅速發(fā)展,特別是隨大規(guī)模集成電路出現(xiàn),給人類生活帶來了根本性的改變。由其是單片機技術(shù)的應(yīng)用產(chǎn)品已經(jīng)走進了千家萬戶。電子萬年歷的出現(xiàn)給人們的生活帶來的諸多方便,作為一種附加功能,現(xiàn)在越來越廣泛的被應(yīng)用于各種電子產(chǎn)品中,具有廣闊的市場前景。通過以往對工業(yè)自動化的相關(guān)課程學(xué)習(xí)和理解獨立完成制作電子萬年歷的設(shè)計。電子萬年歷作為電子類小產(chǎn)品不僅是市場上的寵兒,也是是單片機設(shè)計培訓(xùn)中一個很實用的題目。因為這個課題有很好的開放性和可發(fā)揮性,對制作者的要求比較高,不僅考察了對單片機的掌握能力更加強調(diào)了對單片機擴展的應(yīng)用。而且要求設(shè)計的電子萬年歷在操作上力求簡潔,功能上盡量齊全,顯示界面也要出色。所以,電子萬年歷制作無論從實用目的,還是從培養(yǎng)能力的角度來看都是很有價值的畢業(yè)設(shè)計課題。本電子萬年歷的設(shè)計在硬件方面主要采用AT89S51單片機作為主控核心,由DS1302時鐘芯片提供時鐘、1602LCM點陣液晶顯示屏顯示。AT89S51單片機是由Atmel公司推出的,功耗小,電壓可選用4~6V電壓供電[1];DS1302時鐘芯片是美國DALLAS公司推出的具有涓細電流充電功能的低功耗實時時鐘芯片,它可以對年、月、日、星期、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能,而且DS1302的使用壽命長,誤差??;數(shù)字顯示是采用的LED液晶顯示屏來顯示,可以同時顯示年、月、日、星期、時、分、秒等信息。此外,該電子萬年歷還具有時間校準等功能。在軟件方面,主要包括日歷程序、時間調(diào)整程序,顯示程序等。所有程序編寫完成后,在Keil軟件中進行調(diào)試,確定沒有問題后,在Proteus軟件中嵌入單片機進行仿真。最后在老師同學(xué)的幫助以及自己的努力下完成了此次電子萬年歷的設(shè)計。1.1系統(tǒng)基本方案選擇和論證1.1.1單片機芯片的選擇本設(shè)計采用AT89S51芯片作為硬件核心,該芯片采用FlashROM,部具有4KBROM存儲空間,相對于本設(shè)計而言程序空間完全夠用。能于3V的超低壓工作,而且與MCS-51系列單片機完全兼容,而且運用于電路設(shè)計中時具備ISP在線編程技術(shù),當在對電路進行調(diào)試時,由于程序的錯誤修改或?qū)Τ绦虻男略龉δ苄枰獰氤绦驎r,避免芯片的多次拔插對芯片造成的損壞。1.1.2顯示模塊選擇方案和論證方案一:采用點陣式數(shù)碼管顯示,點陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對于顯示文字比較適合,如采用在顯示數(shù)字顯得太浪費,且價格也相對較高,所以也不用此種作為顯示.方案二:采用LED數(shù)碼管動態(tài)掃描,LED數(shù)碼管價格雖適中,對于顯示數(shù)字也最合適,而且采用動態(tài)掃描法與單片機連接時,占用的單片機口線少。但是由于數(shù)碼管動態(tài)掃描需要借助74LS164移位寄存器進行移位,該芯片在電路調(diào)試時往往會有很多障礙,所以不采用LED數(shù)碼管作為顯示[2]。方案三:采用LCD液晶顯示屏,液晶顯示屏的顯示功能強大,可顯示大量文字,圖形,顯示多樣,清晰可見[3],對于電子萬年歷而言,一個1602的液晶屏即可,價格也還能接受,需要的接口線較多,但會給調(diào)試帶來諸多方便,所以此設(shè)計中采用LCD1602液晶顯示屏作為顯示模塊.1.1.3時鐘芯片的選擇方案和論證方案一:直接采用單片機定時計數(shù)器提供秒信號,使用程序?qū)崿F(xiàn)年、月、日、星期、時、分、秒計數(shù)。采用此種方案雖然可以減少時鐘芯片的使用,節(jié)約成本,但是,實現(xiàn)的時間誤差較大。所以不采用此方案。方案二:采用DS1302時鐘芯片實現(xiàn)時鐘,DS130是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進行計時,具有閏年補償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時提供了對后背電源進行涓細電流充電的能力。主要特點是采用串行數(shù)據(jù)傳輸,可為掉電保護電源提供可編程的充電功能,并且可以關(guān)閉充電功能。采用普通32.768kHz晶振[4]。因此,本設(shè)計中采用DS1302提供時鐘。1.1.4溫度傳感器的選擇方案與論證方案一:使用熱敏電阻作為傳感器,用熱敏電阻與一個相應(yīng)阻值電阻相串聯(lián)分壓,利用熱敏電阻阻值隨溫度變化而變化的特性,采集這兩個電阻變化的分壓值,并進行A/D轉(zhuǎn)換。此設(shè)計方案需用A/D轉(zhuǎn)換電路,增加硬件成本而且熱敏電阻的感溫特性曲線并不是嚴格線性的,會產(chǎn)生較大的測量誤差[5]。方案二:采用數(shù)字式溫度傳感器DS18B20,此類傳感器為數(shù)字式傳感器而且僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,易于與單片機連接,可以避免A/D模數(shù)轉(zhuǎn)換模塊,降低硬件成本,簡化系統(tǒng)電路[6]。另外,數(shù)字式溫度傳感器還具有測量精度高、測量圍廣等優(yōu)點。因此,本設(shè)計DS18B20溫度傳感器作為溫度采集模塊。1.2電路設(shè)計最終方案決定綜上各模塊的選擇方案與論證,確定最后的主要硬件資源如下:采用AT89S51作為主控制系統(tǒng);DS1302提供時鐘;DS18B20作為數(shù)字式溫度傳感器;LCD1602液晶屏作為顯示。2系統(tǒng)的硬件設(shè)計與實現(xiàn)2.1電路設(shè)計框圖本系統(tǒng)的電路系統(tǒng)框圖如圖1所示。AT89S51單片機對DS1302和DS18B20寫入控制字并讀取相應(yīng)的數(shù)據(jù),繼而控制LCM1602作出對應(yīng)的顯示。LCD1602液晶顯示模塊AT89S51主控模塊LCD1602液晶顯示模塊AT89S51主控模塊鍵盤控制模塊DS1302時鐘模塊溫度采集模塊DS1302時鐘模塊溫度采集模塊圖1系統(tǒng)硬件框圖2.2系統(tǒng)硬件概述本電路是由AT89S51單片機作為控制核心,能在3V超低壓工作,AT89S51是一個低功耗,高性能CMOS8位單片機,片含4kBytesISP<In-systemprogrammable>的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片集成了通用8位中央處理器和ISPFlash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案;時鐘電路由DS1302提供,它是一種高性能、低功耗、帶RAM的實時時鐘電路,它可以對年、月、日、周、時、分、秒進行計時,具有閏年補償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302部有一個31*8的用于臨時性存放數(shù)據(jù)的RAM寄存器??僧a(chǎn)生年、月、日、周、時、分、秒,具有使用壽命長,精度高和低功耗等特點,同時具有掉電自動保存功能;溫度的采集由DS18B20完成,它具有獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊,測溫圍-55℃~+125℃,固有測溫分辨率0.5℃,支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,最多只能并聯(lián)8個,如果數(shù)量過多,會使供電電源電壓過低,從而造成信號傳輸?shù)牟环€(wěn)定,實現(xiàn)多點測溫,工作電源:3~5V/DC,在使用中不需要任何外圍元件;顯示部份由LCD1602液晶顯示器完成,該顯示器為工業(yè)字符型液晶,能夠同時顯示16x02即32個字符〔16列2行。2.3主要單元電路的設(shè)計2.3.1AT89S51單片機主控制模塊的設(shè)計AT89S51是一個低功耗,高性能CMOS8位單片機,片含4kBytesISP<In-systemprogrammable>的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片集成了通用8位中央處理器和ISPFlash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案。AT89S51具有如下特點:40個引腳,4kBytesFlash片程序存儲器,128Bytes的隨機存取數(shù)據(jù)存儲器〔RAM,32個外部雙向輸入/輸出〔I/O口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗〔WDT電路,片時鐘振蕩器。此外,AT89S51設(shè)計和配置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式??臻e模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復(fù)位。同時該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。AT89S52單片機為40引腳雙列直插芯片,有四個I/O口P0,P1,P2,P3,MCS-51單片機共有4個8位的I/O口〔P0、P1、P2、P3,每一條I/O線都能獨立地作輸出或輸入[7]。P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。P1口:P1口是一個部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。P2口:P2口為一個部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫"1"時,其管腳被部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址"1"時,它利用部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。P3口:P3口管腳是8個帶部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入"1"后,它們被部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流〔ILL這是由于上拉的緣故。I/O口作為輸入口時有兩種工作方式,即所謂的讀端口與讀引腳。讀端口時實際上并不從外部讀入數(shù)據(jù),而是把端口鎖存器的容讀入到部總線,經(jīng)過某種運算或變換后再寫回到端口鎖存器。只有讀端口時才真正地把外部的數(shù)據(jù)讀入到部總線。輸入緩沖器CPU將根據(jù)不同的指令分別發(fā)出讀端口或讀引腳信號以完成不同的操作。這是由硬件自動完成的,不需要我們操心,1然后再實行讀引腳操作,否則就可能讀入出錯,如果不對端口置1,端口鎖存器原來的狀態(tài)有可能為0Q端為0Q^為1加到場效應(yīng)管柵極的信號為1,該場效應(yīng)管就導(dǎo)通對地呈現(xiàn)低阻抗,此時即使引腳上輸入的信號為1,也會因端口的低阻抗而使信號變低使得外加的1信號讀入后不一定是1。若先執(zhí)行置1操作,則可以使場效應(yīng)管截止引腳信號直接加到三態(tài)緩沖器中實現(xiàn)正確的讀入,由于在輸入操作時還必須附加一個準備動作,所以這類I/O口被稱為準雙向口。89C51的P0/P1/P2/P3口作為輸入時都是準雙向口。單片機的最小系統(tǒng)如圖2所示:18引腳和19引腳接時鐘電路,XTAL1接外部晶振和微調(diào)電容的一端,在片它是振蕩器倒相放大器的輸入,XTAL2接外部晶振和微調(diào)電容的另一端,在片它是振蕩器倒相放大器的輸出.第9引腳為復(fù)位輸入端,接上電容,電阻及開關(guān)后夠上電復(fù)位電路,20引腳為接地端,40引腳為電源端.單片機的最小系統(tǒng)如下圖所示:圖2中的晶振頻率為12MHz,復(fù)位方式為上電自動復(fù)位[8]-[9]。圖2單片機最小系統(tǒng)單片機中斷系統(tǒng)在提及單片機的最小系統(tǒng)后,現(xiàn)對單片機的另一重要應(yīng)用系統(tǒng)即中斷系統(tǒng)做一個比較詳細的介紹。在CPU與外設(shè)交換信息時,存在著一個快速CPU與慢速的外設(shè)之間的矛盾。為解決這個問題,發(fā)展了中斷的概念。單片機在某一時刻只能處理一個任務(wù),當多個任務(wù)同時要求單片機處理時,這一要求應(yīng)該怎么實現(xiàn)呢?通過中斷可以實現(xiàn)多個任務(wù)的資源共享。所謂的中斷就是,當CPU正在處理某項事務(wù)的時候,如果外界或者部發(fā)生了緊急事件,要求CPU暫停正在處理工作而去處理這個緊急事件,待處理完后,再回到原來中斷的地方,繼續(xù)執(zhí)行原來被中斷的程序,這個過程稱作中斷。從中斷的定義我們可以看到中斷應(yīng)具備中斷源、中斷響應(yīng)、中斷返回這樣三個要素。中斷源發(fā)出中斷請求,單片機對中斷請求進行響應(yīng),當中斷響應(yīng)完成后應(yīng)進行中斷返回,返回被中斷的地方繼續(xù)執(zhí)行原來被中斷的程序。MCS-51單片機的中斷源共有兩類,它們分別是:外部中斷和部中斷。外部中斷0<INT0>來自P3.2引腳,通過外部中斷0觸發(fā)方式控制位IT0<TCON.0>,來決定中斷輸入信號是低電平有效還是負跳變有效。一旦輸入信號有效,便使IE0標志置一,向CPU申請中斷;外部中斷1<INT1>來自P3.3引腳,通過外部中斷1觸發(fā)方式控制位IT1<TCON.2>,來決定中斷輸入信號是低電平有效還是負跳變有效。一旦輸入信號有效,便使IE0標志置一,向CPU申請中斷。部中斷有三個:TF0,TF1,RI或TI。TF0〔TCON.5,片定時/計數(shù)器T0溢出中斷請求標志。當定時/計數(shù)器T0發(fā)生溢出時,置位TF0,并向CPU申請中斷;TF1〔TCON.7,片定時/計數(shù)器T1溢出中斷請求標志。當定時/計數(shù)器T1發(fā)生溢出時,置位TF1,并向CPU申請中斷;RI〔SCON.0或TI〔SCON.1,串行口中斷請求標志。當串行口接收完一幀串行數(shù)據(jù)時置位RI或當串行口發(fā)送完一幀串行數(shù)據(jù)時置位TI,向CPU申請中斷[10]。MCS-51單片機為用戶提供了四個專用寄存器,來控制單片機的中斷系統(tǒng)。定時器控制寄存器〔TCON,該寄存器用于保存外部中斷請求以及定時器的計數(shù)溢出。進行字節(jié)操作時,寄存器地址為88H。按位操作時,各位的地址為88H~8FH,當CPU采樣到INT0〔或INT1端出現(xiàn)有效中斷請求時,IE0〔IE1位由硬件置"1"。當中斷響應(yīng)完成轉(zhuǎn)向中斷服務(wù)程序時,由硬件把IE0〔或IE1清零,當計數(shù)器產(chǎn)生計數(shù)溢出時,相應(yīng)的溢出標志位由硬件置"1"。當轉(zhuǎn)向中斷服務(wù)時,再由硬件自動清"0"。計數(shù)溢出標志位的使用有兩種情況:采用中斷方式時,作中斷請求標志位來使用;采用查詢方式時,作查詢狀態(tài)位來使用;串行口控制寄存器〔SCON,進行字節(jié)操作時,寄存器地址為98H。按位操作時,各位的地址為98H~9FH,當發(fā)送完一幀串行數(shù)據(jù)后,由硬件置"1";在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清"0",當接收完一幀串行數(shù)據(jù)后,由硬件置"1";在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清"0"。串行中斷請求由TI和RI的邏輯或得到。就是說,無論是發(fā)送標志還是接收標志,都會產(chǎn)生串行中斷請求;中斷允許控制寄存器〔IE,進行字節(jié)操作時,寄存器地址為0A8H。按位操作時,各位的地址為0A8H~0AFH,可見,MCS-51單片機通過中斷允許控制寄存器對中斷的允許〔開放實行兩級控制。即以EA位作為總控制位,以各中斷源的中斷允許位作為分控制位。當總控制位為禁止時,關(guān)閉整個中斷系統(tǒng),不管分控制為狀態(tài)如何,整個中斷系統(tǒng)為禁止狀態(tài);當總控制位為允許時,開放中斷系統(tǒng),這時才能由各分控制位設(shè)置各自中斷的允許與禁止。MCS-51單片機復(fù)位后〔IE=00H,因此中斷系統(tǒng)處于禁止狀態(tài)。單片機在中斷響應(yīng)后不會自動關(guān)閉中斷。因此在轉(zhuǎn)中斷服務(wù)程序后,應(yīng)根據(jù)需要使用有關(guān)指令禁止中斷,即以軟件方式關(guān)閉中斷。中斷優(yōu)先級控制寄存器〔IPMCS-51單片機的中斷優(yōu)先級控制比較簡單,因為系統(tǒng)只定義了高、低2個優(yōu)先級。高優(yōu)先級用"1"表示,低優(yōu)先級用"0"表示。各中斷源的優(yōu)先級由中斷優(yōu)先級寄存器〔IP進行設(shè)定。IP寄存器地址0B8H,位地址為0BFH~0B8H。2.3.3時鐘電路模塊的設(shè)計DS1302是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘芯片,它可以對年、月、日、周、時、分、秒進行計時,具有閏年補償功能,工作電壓為2.5V~5.5V。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時提供了對后背電源進行涓細電流充電的能力[11]。DS1302的引腳排列,其中Vcc1為后備電源,VCC2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當Vcc2大于Vcc1+0.2V時,Vcc2給DS1302供電。當Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768kHz晶振。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc>2.0V之前,RST必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端<雙向>,SCLK為時鐘輸入端。DS1302的控制字節(jié)的最高有效位<位7>必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,位6如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位<位0>如為0表示要進行寫操作,為1表示進行讀操作,控制字節(jié)總是從最低位開始輸出。在控制指令字輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位到高位7。DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式。此外,DS1302還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器容。DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH<寫>、FFH<讀>。DS1302與CPU的連接需要三條線,即SCLK<7>、I/O<6>、RST<5>。實際上,在調(diào)試程序時可以不加電容器,只加一個32.768kHz的晶振即可。只是選擇晶振時,不同的晶振,誤差也較大。另外,還可以在上面的電路中加入DS18B20,同時顯示實時溫度。只要占用CPU一個口線即可。單片機與DS1302連接圖如圖3所示:圖3DS1302與單片機的連接2.3.4溫度采集模塊設(shè)計采用數(shù)字式溫度傳感器DS18B20,它是數(shù)字式溫度傳感器,具有測量精度高,電路連接簡單特點,此類傳感器僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,使用P0.7與DS18B20的I/O口連接加一個上拉電阻,Vcc接電源,Vss接地。獨特的一線接口,只需要一條口線通信多點能力,簡化了分布式溫度傳感應(yīng)用無需外部元件可用數(shù)據(jù)總線供電,電壓圍為3.0V至5.5V無需備用電源測量溫度圍為-55度至+125度。-10度至+85度圍精度為±0.5度溫度傳感器可編程的分辨率為9~12位[12]。DS18B20連線如圖4所示:圖4DS18B20管腳連線2.3.5顯示模塊的設(shè)計如下圖5所示,采用LCM1602液晶顯示器,單片機P1口作為數(shù)據(jù)輸出口,RS,R\W,E分別通過10K的上拉電阻連接到單片機的P0.0,P0.1,P0.2。VDD接5V電源,VSS接地。VEE為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高〔對比度過高時會產(chǎn)生"鬼影",使用時可以通過一個10K的電位器調(diào)整對比度。RS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。R/W為讀寫信號線,高電平<1>時進行讀操作,低電平<0>時進行寫操作。E<或EN>端為使能<enable>端,下降沿使能。DB0-DB7為雙向數(shù)據(jù)總線,同時最高位DB7也是忙信號檢測位。BLA、BLK分別為顯示器背光燈的正、負極[13]。圖5LCM1602與單片機的連接2.3.6DS1302原理及說明<1>時鐘芯片DS1302的工作原理DS1302在每次進行讀、寫程序前都必須初始化,先把SCLK端置"0",接著把RST端置"1",最后才給予SCLK脈沖;讀/寫時序如下圖7所示。圖6為DS1302的控制字,此控制字的位7必須置1,若為0則不能把對DS1302進行讀寫數(shù)據(jù)。對于位6,若對程序進行讀/寫時RAM=1,對時間進行讀/寫時,CK=0。位1至位5指操作單元的地址。位0是讀/寫操作位,進行讀操作時,該位為1;該位為0則表示進行的是寫操作??刂谱止?jié)總是從最低位開始輸入/輸出的。表2為DS1302的日歷、時間寄存器容:"CH"是時鐘暫停標志位,當該位為1時,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);當該位為0時,時鐘開始運行。"WP"是寫保護位,在任何的對時鐘和RAM的寫操作之前,WP必須為0。當"WP"為1時,寫保護位防止對任一寄存器的寫操作。<2>DS1302的控制字DS1302的控制字如圖6所示??刂谱止?jié)的高有效位〔位7必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,位6如果0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位〔位0如為0表示要進行寫操作,為1表示進行讀操作,控制字節(jié)總是從最低位開始輸出。圖6DS1302的控制字<3>數(shù)據(jù)輸入輸出在控制指令字輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位到高位7[14]。如下圖7所示:圖7DS1302讀與寫的時序圖DS1302的寄存器DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時間寄存器及其控制字見圖8。圖8DS1302的日歷、時間寄存器此外,DS1302還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器容。DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH<寫>、FFH<讀>。2.3.7LCM1602工作原理及說明<1>寄存器選擇控制1602字符型LCD通常有14條引腳線或16條引腳線的LCD,多出來的2條線是背光電源線。1602液晶模塊部的字符發(fā)生存儲器〔CGROM>已經(jīng)存儲了160個不同的點陣字符[15],圖形寄存器選擇控制表如表1所示:表11602寄存器選擇控制表RSR/W操作說明00寫入指令寄存器〔清屏指令等01讀busyflag,以及讀取位址計數(shù)器〔DB0~DB6的值10寫入數(shù)據(jù)寄存器〔顯示各字型等11從數(shù)據(jù)寄存器讀取數(shù)據(jù)<2>指令集1602通過D0~D7的8位數(shù)據(jù)端傳輸數(shù)據(jù)和指令。顯示模式設(shè)置<初始化>00111000[0x38]設(shè)置16×2顯示,5×7點陣,8位數(shù)據(jù)接口;顯示開關(guān)及光標設(shè)置:<初始化>00001DCBD顯示<1有效>、C光標顯示<1有效>、B光標閃爍<1有效>。000001NSN=1<讀或?qū)懸粋€字符后地址指針加1并且光標加1>,N=0<讀或?qū)懸粋€字符后地址指針減1并且光標減1>,S=1且N=1<當寫一個字符后,整屏顯示左移>,S=0當寫一個字符后,整屏顯示不移動。數(shù)據(jù)指針設(shè)置:數(shù)據(jù)首地址為80H,所以數(shù)據(jù)地址為80H+地址碼<0-27H,40-67H>。其他設(shè)置:01H<顯示清屏,數(shù)據(jù)指針=0,所有顯示=0>;02H<顯示回車,數(shù)據(jù)指針=0>[16]。2.3.8系統(tǒng)仿真電路本次仿真使用軟件Protues7.0,該軟件元件庫豐富,元件封裝要求相對簡單且參數(shù)調(diào)整方便,除此之外,程序還可進行動態(tài)調(diào)試。系統(tǒng)仿真截圖如圖9所示:圖9系統(tǒng)仿真電路圖如圖,左上角為顯示模塊LCM1602,U1是時鐘芯片DS1302,U2是主控模塊AT89C51,U3為溫度傳感器DS18B20,右下角是鍵盤控制模塊。3系統(tǒng)的軟件設(shè)計開始初始化讀、寫日期、時間和溫度分離日期\時間\溫度顯示值開始初始化讀、寫日期、時間和溫度分離日期\時間\溫度顯示值顯示子程序日期、時間修改子程序閏月子程序返回圖10主程序流程圖主程序流程圖如上圖10所示。由于LCM1602,DS18B20,DS1302的數(shù)據(jù)讀取及指令寫入函數(shù)均已在各自的頭文件中完成,在主程序中只須引用即可。由于在硬件電路方面上設(shè)計了時間調(diào)整按鍵和開關(guān),因此應(yīng)有對應(yīng)的時間調(diào)整程序。時間調(diào)整程序的流程圖如圖11所示。圖11時間調(diào)整程序流程圖3.2子程序由于本系統(tǒng)程序涉及的可編程器件有LCM1602,DS18B20以及DS1302,各芯片的控制字及數(shù)據(jù)讀寫如果混雜,將會使程序可讀性大大降低,因此采用子程序的方法進行調(diào)用并將其封裝于各自的頭文件中。詳盡的程序設(shè)計見附錄。4系統(tǒng)測試4.1硬件測試在Protues仿真結(jié)束后,于焊接板上完成了硬件組裝。在調(diào)試硬件時遇到過很多問題,但只要細心、認真檢查這些問題都是可以避免的,主要問題及解決辦法現(xiàn)列如下:接通電源后LCM1602沒有正確的顯示。在不通電狀態(tài)下用萬用表檢測電路是否正常連接,在檢查回路時發(fā)現(xiàn)有的點之間看似連接,但由于虛焊導(dǎo)致其并無電氣連接,只能對焊腳進行在加工直到解決問題。電路工作一段時間之后有的芯片發(fā)熱嚴重。經(jīng)查發(fā)現(xiàn)原來是有尖銳的管腳刺破鄰近的漆包線造成短路,斷掉該線并再次連接可解決問題。4.2軟件測試由于本系統(tǒng)涉及到多個子程序,多個芯片的編程。首先必須對可編程芯片的控制字即其控制指令要熟記于心。其次,芯片很多都有時鐘輸入端,需要晶振支持。對芯片的讀寫都需要在相應(yīng)的觸發(fā)沿到來時才能進行。由于DS18B20是串行通信數(shù)據(jù),只用一個口線傳輸,在處理采集的模擬信號時需要一定的時間,會對延時有較高要求。所以在調(diào)用溫度子程序時,先關(guān)閉定時器1中斷允許,在溫度子程序反回時再打開定時器1中斷允許。5結(jié)束語以上所述即是電子萬年歷的設(shè)計全過程,經(jīng)過多次的反復(fù)測試與分析,對電路的原理及功能更加熟悉,同時提高了設(shè)計能力與及對電路的分析能力.經(jīng)過此設(shè)計,基本完成了設(shè)計任務(wù)的要求。硬件層面而言操作相對簡單,界面比較友好。在硬件電路方面,詳盡解析了各個獨立元件的選擇依據(jù),對數(shù)種方案進行了全面的比較。在時鐘芯片的選擇上,若直接采用單片機定時計數(shù)器提供秒信號,使用程序?qū)崿F(xiàn)年、月、日、星期、時、分、秒計數(shù)。采用此種方案雖然可以減少時鐘芯片的使用,節(jié)約成本,但是,實現(xiàn)的時間誤差較大。因此采用專業(yè)的時鐘芯片DS1302,它可以對年、月、日、周日、時、分、秒進行計時,具有閏年補償功能,主要特點是采用串行數(shù)據(jù)傳輸,可為掉電保護電源提供可編程的充電功能;在顯示模塊的選擇上,若采用LED數(shù)碼管動態(tài)掃描,LED數(shù)碼管價格雖適中,對于顯示數(shù)字也最合適,而且采用動態(tài)掃描法與單片機連接時,占用的單片機口線少。但是由于數(shù)碼管動態(tài)掃描需要借助74LS164移位寄存器進行移位,該芯片在電路調(diào)試時往往會有很多障礙,因此本次設(shè)計選擇了LCM1602,液晶顯示屏的顯示功能強大,可顯示大量文字,圖形,顯示多樣,清晰可見;在溫度采集模塊的選擇上,沒有采用熱敏電阻,因為設(shè)計方案需用A/D轉(zhuǎn)換電路,增加硬件成本而且熱敏電阻的感溫特性曲線并不是嚴格線性的,會產(chǎn)生較大的測量誤差。最后選擇了DS18B20,此類傳感器為數(shù)字式傳感器而且僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,易于與單片機連接,可以避免A/D模數(shù)轉(zhuǎn)換模塊,降低硬件成本,簡化系統(tǒng)電路。另外,數(shù)字式溫度傳感器還具有測量精度高、測量圍廣等優(yōu)點。從元件性能和組裝電路后的測試結(jié)果來看,硬件電路的設(shè)計是比較成功的。在軟件設(shè)計方面,對日歷算法和時間調(diào)整算法都做了比較詳細的闡述,可讀性較強。美中不足的是并沒有給出與陽歷同步的陰歷算法,久經(jīng)思索卻終究未能達成。綜上所述,本設(shè)計雖然實現(xiàn)了電子萬年歷的功能,但在硬件的選擇上應(yīng)該更優(yōu)化,使成本更低;在軟件方面也需要完善,一個真正實用的萬年歷應(yīng)該具有計算陰歷歷法的功能。參考文獻[1]胡乾斌,光斌,玲,喻紅.單片微型計算機原理與應(yīng)用.華中科技大學(xué),1996.[2]勇.數(shù)字電路.電子工業(yè),2004.[3]正振.電子電路設(shè)計與制作.廣西交通職業(yè)技術(shù)學(xué)院信息工程系,2007.[4]子文.單片機原理及應(yīng)用.電子科技大學(xué),2006.[5]王萍.電子技術(shù)實驗教程.機械工業(yè),2009.[6]紅衛(wèi).單片機應(yīng)用系統(tǒng)設(shè)計實例與分析,:航空航天大學(xué).2003[7]光飛.單片機課程設(shè)計實例指導(dǎo),:航空航天大學(xué).2004[8]王法能.單片機原理及應(yīng)用,科學(xué).2004[9]樓然苗,光飛.51系列單片機設(shè)計實例[M].航空航天大學(xué),2003.[10]朱定華,戴汝平.單片微機原理與應(yīng)用[M].清華大學(xué),2003.[11]胡漢才.單片機原理與接口技術(shù)[M].清華大學(xué),2004.[12]余家春.Protel99SE電路設(shè)計實用教程[M].中國鐵道,2004.[13]培仁.基于匯編語言編程MCS-51單片機原理與應(yīng)用.:清華大學(xué),2003.[14]T.Someya,J.Small,P.Kim,C.Nuckolls,J.T.Yardley.Alcoholvaporsensorsbasedonsingle-walledcarbonnanotubefieldeffecttransistors[M].NanoLetters,2003.[15]M.Penzaetal.Alcoholdetectionusingcarbonnanotubesacousticandopticalsensors[M].AppliedPhysicsLetters,2004.[16]F.Rettig,R.Moos.DirectthermoelectricgassensorsDesignaspectsandfirstgassensors[M].SensActuatorsB,2007.附錄:程序主程序:#include<reg52.h>#include"lcd1602.h"#include"ds1302.h"#include"ds18b20.h"#defineuintunsignedint#defineucharunsignedcharuintb[6];//年、月、日、時、分、秒ucharcoderow1[]={"2009-01-01"};ucharcoderow2[]={"00:00:00"};ucharyear1[12]={31,28,31,30,31,30,31,31,30,31,30,31};//平年ucharyear2[12]={31,29,31,30,31,30,31,31,30,31,30,31};//潤年ucharj[6]={0x85,0x88,0x8b,0x84+0x40,0x87+0x40,0x8a+0x40};//LCD地址uchari,k,jj=0,w,clock=0,bigclock=0,c=0,num;//i循環(huán)數(shù),k溫度緩存,jj地址位uinttemp;sbitb1=P3^0;//設(shè)置sbitb2=P3^1;//上調(diào)sbitb3=P3^2;//下調(diào)sbitb4=P3^3;//轉(zhuǎn)換sbitb5=P3^4;//鬧鐘sbitspeaker=P3^5;lcdscan<>{for<i=0;i<6;i++> {lcdwrite<j[i]>; lcdshuju<a[11-i*2]+0x30>; lcdwrite<j[i]+0x01>; lcdshuju<a[10-i*2]+0x30>; }}voidkey<>{ if<b1==0> {dsaddshuju<0x80,<a[1]<<4>+a[0]+0x80>; while<b1==0> { for<i=0;i<6;i++> {b[i]=a[11-i*2+clock]*10+a[10-i*2+clock];} if<b4==0> {delay<3>; jj++; if<jj==6> {jj=0;} } if<b2==0> { delay<3>; b[jj]++; if<b[5]==60>b[5]=0; if<b[4]==60>b[4]=0; if<b[3]==24>b[3]=0; if<<b[0]%4==0&&b[0]%100!=0>||b[0]%400==0>{if<b[2]>year2[b[1]-1]>b[2]=1;} else{if<b[2]>year1[b[1]-1]>b[2]=1;} if<b[1]==13>b[1]=1; if<b[0]==100>b[0]=0; } if<b3==0> { delay<3>; b[jj]--; if<b[5]==-1>b[5]=59; if<b[4]==-1>b[4]=59; if<b[3]==-1>b[3]=23; if<<b[0]%4==0&&b[0]%100!=0>||b[0]%400==0>{if<b[2]<=0>b[2]=year2[b[1]-1];} else{if<b[2]<=0>b[2]=year1[b[1]-1];} if<b[1]==0>b[1]=12; if<b[0]==-1>b[0]=99; } for<i=0;i<6;i++> {a[11-i*2+clock]=b[i]/10; a[10-i*2+clock]=b[i]%10; } lcdwrite<j[jj]>; lcdshuju<0>; lcdwrite<j[jj]+1>; lcdshuju<0>; delay<200>; lcdwrite<j[jj]>; lcdshuju<a[11-2*jj+clock]+0x30>; lcdwrite<j[jj]+1>; lcdshuju<a[10-2*jj+clock]+0x30>; delay<200>; if<b1==1> {dsaddshuju<0x80,<a[1]<<4>+a[0]>; dson<>;} if<b5==0>clock=12;} }}voidmain<>{ speaker=0; lcdrw=0; dson<>; lcdon<>; lcdwrite<0x83>; for<i=0;i<10;i++> { lcdshuju<row1[i]>; delay<1>; } lcdwrite<0x84+0x40>; for<i=0;i<8;i++> { lcdshuju<row2[i]>; delay<1>; } dsrst=0; dssclk=0; while<1> {for<i=0;i<5;i++> { dsrst=1; dswrite<0x81+i*2>; k=dsread<>; dsrst=0; a[i*2]=k&0x0f; a[i*2+1]=<k>>4>&0x0f; } dsrst=1; dswrite<0x8d>; k=dsread<>; dsrst=0; a[10]=k&0x0f; a[11]=<k>>4>&0x0f; delay<100>; lcdscan<>; key<>; if<b5==0> { for<i=0;i<12;i++> {if<a[i+12]==a[i]>num++; } if<num==12>bigclock=1; elsenum=0; lcdwrite<0x8e>; lcdshuju<'&'>;} else {lcdwrite<0x8e>; lcdshuju<0x00>;} if<bigclock==1> {speaker=1; c++; if<c==100>{bigclock=0;speaker=0;} } temp=readtemperature<>;//temp是uint型的。不然會出現(xiàn)溫度到25后回00的現(xiàn)象??赡苁怯捎谑M制與十進制的差異。 lcdwrite<0x8d+0x40>; lcdshuju<temp/100+0x30>; lcdwrite<0x8e+0x40>; lcdshuju<temp/10%10+0x30>; }}子程序:LCM1602頭文件:#include<reg52.h>#defineuintunsignedint#defineucharunsignedcharsbitlcdrs=P0^0;sbitlcdrw=P0^1;sbitlcden=P0^2;voiddelay<uintz>{uintx,y;for<x=z;x>0;x-->for<y=110;y>
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 32350.1-2025軌道交通絕緣配合第1部分:基本要求電工電子設(shè)備的電氣間隙和爬電距離
- 液狀化妝品制造工常識評優(yōu)考核試卷含答案
- 滴丸工安全規(guī)程知識考核試卷含答案
- 纖維碳化裝置操作工崗前技能競賽考核試卷含答案
- 鋁鎂粉球磨工崗前跨界整合考核試卷含答案
- 酒店員工培訓(xùn)與業(yè)務(wù)能力提升制度
- 酒店客房預(yù)訂與客戶關(guān)系管理規(guī)范制度
- 財務(wù)報告分析與改進制度
- 城市酒店管理培訓(xùn)
- 丙烷購銷合同模板
- 2026 年初中英語《狀語從句》專項練習(xí)與答案 (100 題)
- 2026年遼寧省盤錦市高職單招語文真題及參考答案
- 農(nóng)投集團安全生產(chǎn)制度
- 近五年貴州中考物理真題及答案2025
- 2025年黑龍江省大慶市中考數(shù)學(xué)試卷
- 2025年國補自查自糾報告
- 山東煙草2026年招聘(197人)考試備考試題及答案解析
- 二級醫(yī)院的DRGs培訓(xùn)課件
- 空芯光纖行業(yè)分析報告
- 2026年湖南中醫(yī)藥高等??茖W(xué)校單招職業(yè)傾向性測試題庫及答案詳解一套
- 置業(yè)顧問崗位招聘考試試卷及答案
評論
0/150
提交評論