版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、兵工自動(dòng)化 測(cè)控技術(shù) O. I. Automation 2005年第24卷第4期 Measurement and Control Technique 2005, Vol. 24, No. 4文章編號(hào):1006-1576(2005)04-0082-03多功能智能電子鐘的設(shè)計(jì)何宏森(西南科技大學(xué) 信息工程學(xué)院,四川 綿陽(yáng) 621010)摘要:多功能智能電子鐘以AT89C2051芯片為核心,采用靜態(tài)與動(dòng)態(tài)相結(jié)合的掃描方式顯示。系統(tǒng)軟件包括主程序和中斷模塊,基本時(shí)間、總天數(shù)、星期、公歷、陰歷等日歷算法模塊。其顯示模塊采用單片機(jī)串行輸出,以分時(shí)動(dòng)態(tài)掃描方式點(diǎn)亮21塊LED數(shù)碼管和4個(gè)發(fā)光二極管。關(guān)鍵詞:
2、電子鐘;單片機(jī);日歷算法;動(dòng)態(tài)顯示 中圖分類號(hào):TP216.2 文獻(xiàn)標(biāo)識(shí)碼:ADesign of Intellectual Electronic-Clock of MultifunctionHE Hong-sen(College of Information Engineering, Southwest University of Science & Technology, Mianyang 621010, China) Abstract: The chip of AT89C2051 is based on as the core of intellectual electronic-
3、clock, and the scanning mode is applied to display by combining dynamic scan with static scan. The system software includes: main program, interrupt program and the programmed algorithm about calendar of basic time, total days, week, the Gregorian calendar and the lunar calendar. The displaying modu
4、le is designed with serial output of one chip computer, 21 pieces of LED nixie light and 4 pieces of LBDs were lighted up by the way of dynamic time-sharing scan.Keywords: Electronic-clock; Chip computer; Calendar algorithm; Dynamic display1 引言萬(wàn)年歷陰歷算法以往都使用數(shù)據(jù)表。通過查詢實(shí)現(xiàn),但所占空間較大。故從公農(nóng)歷間的關(guān)系入手,設(shè)計(jì)電子萬(wàn)年歷,時(shí)間長(zhǎng)度是
5、100年(即從20002100年)。主程序?qū)Ω鲉卧跏蓟?,?jì)數(shù)器溢出后進(jìn)入中斷程序。調(diào)用子程序,中斷返回后又繼續(xù)計(jì)數(shù),再次溢出后再進(jìn)入中斷程序,如此周而復(fù)始執(zhí)行。進(jìn)入中斷程序(圖2)后,先重新對(duì)T0賦初值,再調(diào)用各算法子程序,記數(shù)初值保證子程序執(zhí)行完后不發(fā)生第二次中斷。2 硬件電路設(shè)計(jì)圖1 電子鐘的硬件框圖3.2 日歷算法采用AT89C2051芯片為核心,具有自動(dòng)計(jì)算和顯示公農(nóng)歷日歷、星期、時(shí)間和氣溫。顯示部分用分時(shí)動(dòng)態(tài)掃描方式點(diǎn)亮LED數(shù)碼管,單片機(jī)通過P1口發(fā)出位碼并經(jīng)PNP三極管驅(qū)動(dòng)對(duì)需顯示的LED供電,顯示數(shù)據(jù)由單片機(jī)從串口發(fā)出經(jīng)74LS164進(jìn)行串并轉(zhuǎn)換,采用靜態(tài)與動(dòng)態(tài)相結(jié)合的掃描方
6、式顯示。溫度監(jiān)測(cè)電路采用熱敏電阻和555定時(shí)器及輔助電路構(gòu)成多諧振蕩器,根據(jù)熱敏電阻阻值隨溫度變化的曲線,單片機(jī)可以根據(jù)1s內(nèi)555定時(shí)器輸出的方波個(gè)數(shù)來(lái)計(jì)算氣溫值。(1) 基本時(shí)間算法設(shè)定4ms中斷一次,即一秒要中斷250次。通過判斷預(yù)定數(shù)據(jù)緩沖單元的值,此值一到250,秒單元就加一,否則中斷返回繼續(xù)計(jì)數(shù)。判斷秒單元,只要秒單元到60,分單元就加一,否則中斷返回繼續(xù)計(jì)數(shù)。再判斷分單元,只要分單元到60,小時(shí)單元就加一,否則中斷返回繼續(xù)計(jì)數(shù)。然后再判斷小時(shí)單元,小時(shí)單元一滿24,那么天單元就加一,否則中斷返回繼續(xù)計(jì)數(shù)。如循環(huán)計(jì)算如圖3。(2) 總天數(shù)算法為實(shí)現(xiàn)公歷向農(nóng)歷的轉(zhuǎn)換須進(jìn)行總天數(shù)計(jì)算。
7、公歷3 軟件實(shí)現(xiàn)3.1 主程序及中斷模塊收稿日期:2005-02-19;修回日期:2005-03-25 作者簡(jiǎn)介:何宏森,作者未提供。·82·兵工自動(dòng)化 測(cè)控技術(shù) O. I. Automation 2005年第24卷第4期 Measurement and Control Technique 2005, Vol. 24, No. 4計(jì)算定義2000年1月1日為起始年,總天數(shù)計(jì)為Day1。農(nóng)歷計(jì)算中定義農(nóng)歷1999年1月1日為起始年(即公歷1999年2月16日,相差319天),總天數(shù)計(jì)為Day2Day1319天。 低8位不夠除的時(shí)候,就要向高8位借位。此時(shí),高8位減1,低8位就
8、可以加4再除7(因?yàn)?56/7余4),同時(shí)要判斷高8位是不是小于0。如果是則完成除法,如果不是則繼續(xù)除到真正不夠除為止。表1 余數(shù)與星期信息對(duì)照表余數(shù) 星期信息(5) 農(nóng)歷算法農(nóng)歷算法基本上和公歷一樣,也是逐月遞減的方法(此處是減一個(gè)的天數(shù),比如29天或者30天)。要保存一年的信息,只要三個(gè)信息:農(nóng)歷每月,是否有閏月,閏幾月以及閏月的大小。用相鄰的兩個(gè)內(nèi)存單元來(lái)保存這些信息。農(nóng)歷算法如圖4。圖3 基本時(shí)間的程序流程如要計(jì)算今天2004.6.1距2000.1.1的總天數(shù),只要從內(nèi)存單元提出年份的十位和個(gè)位的信息,用它減去0(00年)。得X104。提取月份信息X26-15??伤愠銮?個(gè)月經(jīng)過的天數(shù)
9、X2。日信息X31-10。還需要考慮閏年的年份信息和月份信息,如果有閏年就需要把多出的天數(shù)加上。因此,總天數(shù)TOTLE(X1×365X11)X2(每年基本上是一樣的只有閏年和非閏年差一天)X3。用年份信息除以4,令商為K,余數(shù)為M。M0時(shí)為閏年,那么X11K。如果M0,說(shuō)明不是閏年,那么X11K1。這樣Day1就求得。設(shè)計(jì)中預(yù)留兩個(gè)內(nèi)存單元(即高8位和低8位)存放總天數(shù)。(3) 公歷算法公歷算法基本上和農(nóng)歷一樣都用逐月遞減法(每減12個(gè)月存放年份信息的單元的內(nèi)容就加1)。這個(gè)年份信息加上“起始年信息”就是現(xiàn)在的年份信息,月和日的信息在根據(jù)公農(nóng)歷不同而得到不同的結(jié)果。每年各月份的天數(shù)基
10、本上是固定的如下表,除了2月可能有28天或者29天。設(shè)置兩個(gè)標(biāo)識(shí),一個(gè)R1內(nèi)存放即將減的月號(hào),一個(gè)R0存放當(dāng)前年信息,當(dāng)R1到12時(shí)R0就加1。當(dāng)R1為2時(shí),判斷當(dāng)時(shí)的R0內(nèi)的年份信息是否閏年了。如果是閏年就減29天,反之則減28天。其余月份則就減相應(yīng)的30和31。(4) 星期算法星期算法有兩種。一種是當(dāng)小時(shí)信息滿24時(shí),存放星期信息的內(nèi)存單元就加1,滿7歸1,如此循環(huán)獲得某天為星期幾。另外一種算法是:總天數(shù)(初始值1)/7的余數(shù),就是當(dāng)天的星期信息,見表1。但該算法要考慮除法的高8位借位問題,當(dāng)圖4 農(nóng)歷算法流程3.3 顯示模塊顯示部分用分時(shí)動(dòng)態(tài)掃描方式點(diǎn)亮LED數(shù)碼管,故需分時(shí)點(diǎn)亮21塊L
11、ED數(shù)碼管和4個(gè)發(fā)光二極管。用單片機(jī)串行輸出,一次傳送數(shù)據(jù)給三塊74LS164(一組點(diǎn)亮三塊LED),74LS164再并行輸出進(jìn)行動(dòng)態(tài)掃描。三塊74LS164首尾相接,前面164的Q7腳連接在下一個(gè)164的A,B輸入腳。掃描一次就需要送三組數(shù)據(jù)到三塊164中,前8個(gè)周期送最后一塊164的信息,中間8個(gè)周期送中間一塊164的信息,最后一個(gè)8個(gè)周期就完成排在最前面的164的信息的傳送。此時(shí)再通過單片機(jī)的P1口給相應(yīng)要點(diǎn)亮的LED的驅(qū)動(dòng)電路的三極管的基極送低電平即可。在每組LED點(diǎn)亮后稍微的延時(shí)·83·兵工自動(dòng)化 測(cè)控技術(shù) O. I. Automation 2005年第24卷第4
12、期 Measurement and Control Technique 2005, Vol. 24, No. 4(如延時(shí)80us),然后立即關(guān)斷以解決殘影問題。表2是程序中用到的內(nèi)存單元中對(duì)應(yīng)的信息表2 顯示程序中用到的內(nèi)存單元內(nèi)存單元信息 信息 30H 31H 公歷年的前兩位 公歷年的后兩位 32H 33H 公歷月 公歷日 34H 35H 公歷星期 算出的總天數(shù)高位36H 37H 算出的總天數(shù)高位 356的高位(1H)38H 356的低位(6DH) 40H 天的進(jìn)位42H 43H 運(yùn)算時(shí)月份信息高低位44H 45H 運(yùn)算時(shí)日信息 作乘法暫用 46H 47H 作乘法暫用 48H 4AH 319
13、的高位(1H)4BH 319的低位(3FH) R0 顯示移位指針(60H)50H 53H 55H 60H 62H農(nóng)歷月 小時(shí) 秒運(yùn)算時(shí)總天數(shù)高位溫度高位公歷年前兩位高位51H 54H 56H 61H 63H農(nóng)歷日分 百分秒運(yùn)算時(shí)總天數(shù)低位小時(shí)的高位 溫度低位66H 68H 6AH 6CH 72H 74H 76H 小時(shí)低位 農(nóng)歷月高位 公歷年后兩位高位分高位 農(nóng)歷日高位公歷月高位 秒高位 隨機(jī)數(shù) 公歷日高位 四個(gè)二極管 67H 69H 6BH 6DH 73H 75H 77H 公歷年前兩位低位星期 農(nóng)歷月低位 公歷后兩位低位分低位農(nóng)歷日低位公歷月低位 秒低位 隨機(jī)數(shù) 公歷日低位4 結(jié)論在電子鐘硬件
14、電路基礎(chǔ)上,用匯編語(yǔ)言編寫程序?qū)懭胄酒?,成品已交付使用,達(dá)到了預(yù)期效果。參考文獻(xiàn):1 李朝青. PC機(jī)與單片機(jī)&DSP數(shù)據(jù)通信技術(shù)選編2M.北京: 北航出版社, 2003.2 呂能元, 孫育才. MCS-51單片機(jī)原理/接口技術(shù)/應(yīng)用實(shí)例M. 北京: 科學(xué)出版社, 1996.*(上接第81頁(yè))圖7 2通道方式字若寫驅(qū)動(dòng)板地址為300H30FH,8253端地址為300303H,要求定時(shí)0通道輸出端OUT。得到250Hz的方波信號(hào),并輸出65535個(gè)脈沖,震蕩器提供0通道計(jì)數(shù)脈沖頻率為125kHz。 確定工作方式:要求OUT0端輸出的是連續(xù)方波,所以定時(shí)器0通道應(yīng)工作在方式3。OUT1輸
15、出接0通道GATE0,OUT0輸出65535個(gè)脈沖后就由OUT1封鎖,停止輸出。所以1通道計(jì)數(shù)器設(shè)置初始值為65535,工作方式為0。 計(jì)算初值:8253的0通道工作在方式3,OUT0端輸出信號(hào)的頻率是由CLK0端的信號(hào)經(jīng)定時(shí)器分頻得到的,而分頻系數(shù)就是從計(jì)數(shù)器初值開始減1時(shí)所計(jì)得的時(shí)鐘周期數(shù)。因此初值分頻系數(shù)fclk/fout。采用二進(jìn)制計(jì)數(shù),定時(shí)器0:Nfclk0/fout0125000/250500。化為十六進(jìn)制數(shù)01F4H,控制字如圖8。0 二進(jìn)制計(jì)數(shù)MOV AL,01OUT DX,AL;寫定時(shí)器0計(jì)數(shù)初值高8位 MOV DX,303HMOV AL,70H;寫定時(shí)器1控制字 OUT DX,AL MOV DX,301HMOV AL,OFFH;寫定時(shí)器1計(jì)數(shù)初值低8位 OUT DX,AL MOV AL,OFFHOUT DX,AL;寫定時(shí)器1計(jì)數(shù)初值高8位 MOV DX,304H MOV AL,01HOUT DX,AL;把定時(shí)器1的控制條件GATE1通過304H口地址送到74LS273鎖存器3 結(jié)束語(yǔ)該項(xiàng)目的控制系統(tǒng)已用于低速風(fēng)洞流場(chǎng)校測(cè)中,無(wú)論從安全性能上還是精度上都達(dá)到了標(biāo)準(zhǔn)。參考文獻(xiàn):1 施洪昌. CS16100高速高精度數(shù)據(jù)采集與處理系統(tǒng)J.測(cè)控系統(tǒng), 1998.2 李大友.
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年家暴受害者離婚賠償金支付進(jìn)度與報(bào)告協(xié)議3篇
- 安徽省競(jìng)賽數(shù)學(xué)試卷
- 臨夏消防電氣檢測(cè)施工方案
- 二零二五年度供熱設(shè)施運(yùn)行監(jiān)管及服務(wù)合同范本3篇
- 四年級(jí)數(shù)學(xué)(四則混合運(yùn)算帶括號(hào))計(jì)算題專項(xiàng)練習(xí)與答案匯編
- 2025年廣西柳州市柳江區(qū)住房制度改革委員會(huì)辦公室招聘編外8人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 常德中考五加一數(shù)學(xué)試卷
- 二零二五年度XX離婚調(diào)解協(xié)議范本下載與咨詢服務(wù)2篇
- 二零二五年度體育賽事運(yùn)營(yíng)定金合同協(xié)議書3篇
- 濱州地區(qū)中考數(shù)學(xué)試卷
- 榕江縣銻礦 礦業(yè)權(quán)出讓收益計(jì)算書
- 顱腦外科手術(shù)環(huán)境及手術(shù)配合
- 長(zhǎng)期異地安置、居住就醫(yī)備案承諾書【模板】
- 盤查戰(zhàn)術(shù)教案
- GB/T 2652-2022金屬材料焊縫破壞性試驗(yàn)熔化焊接頭焊縫金屬縱向拉伸試驗(yàn)
- GB/T 1243-1997短節(jié)距傳動(dòng)用精密滾子鏈和鏈輪
- 打起手鼓唱起歌二聲部改編簡(jiǎn)譜
- 陜西西安電子科技大學(xué)招考聘用(同步測(cè)試)模擬卷和答案
- 父母教養(yǎng)方式與青少年學(xué)業(yè)自我效能的關(guān)系:自尊和學(xué)業(yè)自我概念的中介作用優(yōu)秀獲獎(jiǎng)科研論文
- 高血壓危象(講課)課件
- 獅子王-中英文-劇本臺(tái)詞(全)
評(píng)論
0/150
提交評(píng)論