999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

多功能天數(shù)計時器的設(shè)計與應(yīng)用

2016-07-01 09:59:19作者張瑞增顏丙波陳紀(jì)旸山東大學(xué)控制科學(xué)與工程學(xué)院
電子制作 2016年9期
關(guān)鍵詞:系統(tǒng)設(shè)計

作者 / 張瑞增、顏丙波、陳紀(jì)旸,山東大學(xué)控制科學(xué)與工程學(xué)院

?

多功能天數(shù)計時器的設(shè)計與應(yīng)用

作者 / 張瑞增、顏丙波、陳紀(jì)旸,山東大學(xué)控制科學(xué)與工程學(xué)院

針對人們對天數(shù)正計時、倒計時產(chǎn)品的需要,設(shè)計了多功能天數(shù)計時器。本文介紹了該天數(shù)計時器硬件接口電路及其軟件編程思路,提出了正計時/倒計時模式自動轉(zhuǎn)換的簡易方法。該系統(tǒng)能夠進(jìn)行天數(shù)正計時、倒計時,記錄計時開始時間及截止時間,相關(guān)信息保存到STC15內(nèi)部EEPROM中,使其在系統(tǒng)斷電后不丟失,解決了現(xiàn)有產(chǎn)品中數(shù)據(jù)在掉電后不能保存的問題。采用低功耗日歷時鐘芯片PCF8563 作為實時時鐘,并設(shè)計了雙電源電路向PCF8563供電,使實時時鐘在主電路斷電后仍可以繼續(xù)運行,保證系統(tǒng)的穩(wěn)定性。LED數(shù)字屏亮度高,室內(nèi)室外都可使用,且大小可根據(jù)需要選擇,提高了系統(tǒng)的通用性。

單片機;正計時;倒計時;EEPROM;PCF8563;LED屏

引言

在企業(yè)安全生產(chǎn)中,人們對生產(chǎn)線安全運行天數(shù)進(jìn)行記錄并顯示。在舉辦重大活動時,為了提高對活動的關(guān)注度和緊迫感,人們開始研發(fā)各種倒計時系統(tǒng)[1]。比如高考倒計時、運動會倒計時、比賽時間計時等等。

本文提出一種基于STC15F2K56S2的多功能天數(shù)計時系統(tǒng)設(shè)計方案,使正計時/倒計時模式可自由轉(zhuǎn)換,并通過實驗驗證了其可行性、實用性。利用STC15F2K56S2內(nèi)部EEPROM保存人們設(shè)置的計時時間基準(zhǔn),確保系統(tǒng)掉電后設(shè)置的參數(shù)不會丟失。

1.系統(tǒng)整體設(shè)計

系統(tǒng)主要功能是計算當(dāng)前時間與截止日期間的天數(shù)并在LED數(shù)字屏顯示。在設(shè)計上,將系統(tǒng)分為6個子模塊:控制器STC15F2K56S2、時鐘芯片PCF8563、設(shè)定HMI、LED數(shù)字屏、485通信電路、電源管理。系統(tǒng)整體結(jié)構(gòu)框圖如圖1所示。其中控制器STC15F2K56S2作為系統(tǒng)的“大腦”,負(fù)責(zé)總體運行;時鐘芯片PCF8563提供實時時鐘;設(shè)定HMI(Human Machine Interface:人機界面)、LED數(shù)字屏和485通信電路作為系統(tǒng)的輸入輸出部分。

圖1 系統(tǒng)整體結(jié)構(gòu)框圖

2.系統(tǒng)硬件電路設(shè)計

穩(wěn)定可靠的硬件是系統(tǒng)長期穩(wěn)定運行的基礎(chǔ),硬件的模塊化設(shè)計可以將系統(tǒng)化繁為簡,使其更便于設(shè)計、制作、調(diào)試及維護(hù)。下面將整體硬件分6大模塊進(jìn)行詳細(xì)說明。

■2.1 控制器STC15F2K56S2最小系統(tǒng)

控制器采用STC15F2K56S2,其內(nèi)部包含增強型8051內(nèi)核、8路高速10位A / D轉(zhuǎn)換、2KB RAM、56KB ROM、5K 的EEPROM,該EEPROM用于永久保存用戶設(shè)定的起始日期、終止日期等信息[2]。STC15F2K系列單片機內(nèi)置SPI(Serial Peripheral Interface:串行外設(shè)接口),方便與其他SPI接口設(shè)備連接;內(nèi)置看門狗,可用程序控制其啟用及關(guān)閉。其最小系統(tǒng)原理圖如圖2所示。其中CH340G為USB轉(zhuǎn)串口芯片,用于給STC15F2K56S2單片機下載程序及PC與MCU(Micro Controller Unit:單片機)間的串口通信,其封裝為SOP-16,方便焊接使用。 STC15F2K56S2作為天數(shù)計時系統(tǒng)的控制核心,其引腳功能分配如表1所示。

圖2 控制器最小系統(tǒng)原理圖

■2.2 時鐘芯片PCF8563應(yīng)用電路

時鐘芯片選用PCF8563,該芯片功耗低,具有實時時鐘和日歷功能,并具有可編程時鐘輸出、定時中斷輸出、低電壓檢測的功能,I2C接口便于和MCU通信[3]。其應(yīng)用電路如圖3所示。其中紐扣電池BAT1用于在系統(tǒng)斷電時為PCF8563供電,保證時鐘持續(xù)、穩(wěn)定運行。一枚型號為CR1220的紐扣電池的標(biāo)稱容量為38mAH, PCF8563在3V電池供電消耗電流為0.25μA,故主電路斷電后一枚CR1220電池可使PCF8563運行15年以上[4]。

■2.3 LED數(shù)字屏設(shè)計

LED數(shù)字屏的優(yōu)點是亮度高、視角廣,在室內(nèi)室外都可以被清晰的看到,且其大小有多種型號,可根據(jù)不同需求進(jìn)行選擇,提高了系統(tǒng)的通用性。LED數(shù)字屏內(nèi)部有3位七段數(shù)碼管,每段數(shù)碼管由多個LED燈串并聯(lián)組成。其驅(qū)動采用大功率達(dá)林頓集成電路ULN2803,每段的驅(qū)動電流最大可達(dá)500mA,為LED數(shù)字屏的供電提供了充足的裕度。使用74HC573鎖存器鎖存LED數(shù)字屏段選信號,從而用P2口可控制3位數(shù)碼管的段選。一位LED數(shù)字屏驅(qū)動電路如圖4所示。

表1 天數(shù)計時系統(tǒng)中STC15引腳功能分配表

圖3 PCF8563應(yīng)用電路圖

■2.4 設(shè)定HMI

設(shè)定HMI采用12864液晶作為后臺顯示、6個獨立按鍵用于設(shè)定參數(shù)、一個蜂鳴器用于輸出聲音。在液晶上顯示當(dāng)前時間日期、倒計時截止日期、正計時開始日期、倒計時剩余天數(shù)、正計時累計天數(shù)等信息。

■2.5 485通信電路

圖4 一位LED數(shù)碼屏驅(qū)動電路

485通信為預(yù)留接口,以備后期將設(shè)備接入物聯(lián)網(wǎng)系統(tǒng),實現(xiàn)遠(yuǎn)程設(shè)定計時參數(shù)及控制LED數(shù)字屏的亮滅。485通信具有通信距離遠(yuǎn)、抗干擾能力強的優(yōu)點,此處選用MAX485芯片作為TTL與RS-485轉(zhuǎn)換芯片,其硬件電路如圖5所示[5]。

圖5 485通信接口電路

■2.6 電源電路

電源作為整個系統(tǒng)的心臟,其穩(wěn)定性、抗干擾能力、負(fù)載能力將對系統(tǒng)的穩(wěn)定運行起到至關(guān)重要的作用。本系統(tǒng)采用LM2596_5V開關(guān)型穩(wěn)壓芯片,其負(fù)載電流最大可達(dá)3A,且具有較好的負(fù)載調(diào)整特性。在DC-DC轉(zhuǎn)換前,設(shè)計LC濾波電路以減小電源的紋波。電源電路如圖6所示。

3. 系統(tǒng)軟件設(shè)計

天數(shù)倒計時/正計時器的軟件采用模塊化設(shè)計,在主程序中進(jìn)行計時模式的判斷及相應(yīng)天數(shù)的計算;按鍵設(shè)定計時模式及參數(shù)的設(shè)定在外部中斷中完成。為防止系統(tǒng)在異常情況下,受到強烈干擾,MCU程序跑飛,導(dǎo)致系統(tǒng)長時間不能正常工作,引入看門狗。如果MCU沒有在規(guī)定的時間內(nèi)按預(yù)定要求訪問看門狗,就判斷MCU為異常狀態(tài),看門狗就強制MCU復(fù)位,使系統(tǒng)重新從頭開始按用戶編寫的程序運行。

■3.1 主程序設(shè)計

主程序采用C語言進(jìn)行編程,使用到順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu),在main()函數(shù)中執(zhí)行的操作流程如圖7所示。首先進(jìn)行系統(tǒng)初始化,然后讀取PCF8563的日歷時鐘,從EEPROM中讀取當(dāng)前的計時狀態(tài),而后進(jìn)入3種分支結(jié)構(gòu)的判斷,并根據(jù)判斷執(zhí)行相應(yīng)的操作。

圖6 5V電源電路

■3.2 輸入設(shè)置

首先對6個按鍵的功能定義為菜單/確定鍵、左移鍵、右移鍵、加1鍵、減1鍵、屏幕喚醒鍵。在設(shè)定參數(shù)時,長按菜單/確定鍵2s,進(jìn)入設(shè)定模式并且液晶屏的相應(yīng)區(qū)域光標(biāo)閃爍,這樣既防止了誤碰按鍵帶來的問題又將設(shè)定的變量突出顯示;再次長按菜單/確定鍵2s,將設(shè)置的參數(shù)保存,并跳轉(zhuǎn)到運行模式。12864液晶背光燈電源和供電電源的通斷用三極管開關(guān)電路控制,在設(shè)定好各參數(shù)10s后,關(guān)閉液晶顯示,節(jié)省電能;在需要顯示時,按下屏幕喚醒按鍵,12864液晶即可重新顯示。

圖7 主程序流程圖

系統(tǒng)時間的設(shè)定與矯正、計時截止日期的設(shè)定在外部中斷中處理。其處理流程如下圖8所示。當(dāng)設(shè)定的截止日期晚于RTC(Real Time Clock:實時時鐘)日期時,則在程序中判斷為倒計時模式;若設(shè)定的截止日期早于或等于RTC日期,則在程序中判斷為正計時模式。

圖8 按鍵設(shè)定RTC及計時截止日期流程圖

■3.3 計時天數(shù)的計算及顯示

3.3.1 當(dāng)前日期距離截止日期天數(shù)的計算

若RTC日期小于截止日期,則認(rèn)為是倒計時;若RTC日期大于等于截止日期,則認(rèn)為是正計時,此算法在程序中完成。計時天數(shù)的計算以倒計時為例進(jìn)行說明。

設(shè)N0為當(dāng)前日期,N1為當(dāng)前日期在當(dāng)前年的天數(shù),N2為當(dāng)前日期到當(dāng)前年底剩余的天數(shù),S0為終止日期,S1為終止日期在終止年的天數(shù),D1為當(dāng)前日期距離終止日期的天數(shù)。時間先后如下圖9所示。

圖9 倒計時天數(shù)計算示意圖

三位計時器最大計時時間為999天,跨度最大為3年。因此倒計時天數(shù)分以下3中情況進(jìn)行計算。

(1)終止年與當(dāng)前年在同一年

D1 = S1 - N1

(2)終止年與當(dāng)前年為連續(xù)年

D1 = N2 + S1

(3)終止年與當(dāng)前年跨度3年,計中間一年的天數(shù)為Y2

D1 = N2 + S1 + Y2

由于太陽歷中,平年閏年相差一天,因此必須判斷相關(guān)的年份是否為閏年。相關(guān)年份為閏年時2月29天、全年366天,否則2月28天、全年365天。為使MCU能夠進(jìn)行天數(shù)的運算,定義相關(guān)變量。

定義結(jié)構(gòu)體變量

typedef struct

unsigned int Year;

unsigned char Mon;

unsigned char Day;

unsigned char Hour;

unsigned char Min;

unsigned char Sec;

}RTC_Struct;

RTC_Struct Set_Data;

計算一年中的指定某一天來在該年中度過的天數(shù)、剩余的天數(shù)方法如下。

首先,預(yù)定義12個月的天數(shù),寫入數(shù)組

unsigned char Mon_Day[12] = {31, 28, 31, 30, 31, 30, 31,31, 30, 31, 30, 31};

對于指定的一天Set_Data.Day,先判斷其所在年份Set_Data.Year是否為閏年。若為閏年則Mon_Day[1]= 29,A_Year_All_Day=366,否則Mon_Day[1]=28,A_Year_All_ Day=365。

然后,計算該天在所在年中度過的天數(shù)

Spend_Day = Mon_Day[0]+ Mon_Day[1]+……+ Mon_ Day[Set_Data.Mon-2]+ Set_Data.Day

該天在所在年中剩余的天數(shù)Surplus_Day = A_Year_All_ Day - Spend_Day。采用此算法S1、N1、N2、Y2的值即可算出,從而可得當(dāng)前日期距離終止日期的天數(shù)D1。

天數(shù)正計時的算法與上面的算法相似,只需交換一下截止日期與RTC日期的順序即可,此處不再詳述。

3.3.2 當(dāng)前日期距離截止日期天數(shù)的顯示

當(dāng)前日期距離截止日期天數(shù)的分別在后臺HMI的液晶及LED數(shù)字屏上顯示。具體顯示方案需要根據(jù)天數(shù)位數(shù)不同來用不同的方式進(jìn)行顯示,其具體顯示方案如圖10所示。根據(jù)數(shù)據(jù)D1位數(shù)的多少點亮LED數(shù)字屏,減少了系統(tǒng)無用的功耗,以節(jié)約電能。

圖10 計時天數(shù)在液晶及LED數(shù)字屏上顯示方案

4. 結(jié)語

基于STC15F2K56S2設(shè)計的天數(shù)計時器,能夠的實現(xiàn)天數(shù)倒計時、正計時的功能,同時能夠顯示當(dāng)前日期、時分秒等信息,并具有體積小、性價比高、安裝方便的特點,很好的滿足了人們對于天數(shù)倒計時、天數(shù)正計時的需求。當(dāng)前設(shè)計為一個獨立運行的計時系統(tǒng),但預(yù)留了485通信接口,以便后期與其他物聯(lián)網(wǎng)設(shè)備連接,實現(xiàn)聯(lián)網(wǎng)控制。

* [1]陳娜. 室外倒計時系統(tǒng)的設(shè)計與實現(xiàn)[J].河南科技學(xué)院學(xué)報(自然科學(xué)版)2009(1)

* [2] 陳桂友.單片機應(yīng)用技術(shù)基礎(chǔ)[M].2015: 北京:機械工業(yè)出版社.230

* [3] 龍世瑜,林漢,陳新源.基于PCF8563戶外型倒計時系統(tǒng)的設(shè)計[J].單片機與嵌入式系統(tǒng)應(yīng)用2004(2)

* [4] PCF8563 Real-time clock/calendar Product data sheet. Rev.11. 26 October 2015

* [5] 趙意鵬,趙河明,張毅,李煥.基于MODBUS和RS-485布網(wǎng)方式的氣體監(jiān)測系統(tǒng)設(shè)計[J]-計算機測量與控制 2015(9)

猜你喜歡
系統(tǒng)設(shè)計
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
何為設(shè)計的守護(hù)之道?
《豐收的喜悅展示設(shè)計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
瞞天過海——仿生設(shè)計萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設(shè)計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 在线毛片网站| 97成人在线观看| 国产在线无码一区二区三区| 69国产精品视频免费| 午夜日b视频| 久久性妇女精品免费| 国产成人a在线观看视频| 免费久久一级欧美特大黄| 日韩一区精品视频一区二区| 国产精品露脸视频| 99精品国产自在现线观看| 人妻一区二区三区无码精品一区| 中文无码精品A∨在线观看不卡| 色AV色 综合网站| 国产亚洲精品无码专| av大片在线无码免费| 色一情一乱一伦一区二区三区小说| 国产精品主播| 中文纯内无码H| 国产资源免费观看| 伊人AV天堂| 极品国产一区二区三区| 乱码国产乱码精品精在线播放| 精品久久久久久久久久久| 伊人国产无码高清视频| 国产精品永久免费嫩草研究院| 色综合狠狠操| 热99re99首页精品亚洲五月天| 美女亚洲一区| 免费一级成人毛片| 久久精品国产亚洲AV忘忧草18| 国产精品大白天新婚身材| 国产精品久久国产精麻豆99网站| 无遮挡一级毛片呦女视频| 国产国模一区二区三区四区| 亚洲三级视频在线观看| 国产成人三级| 无码专区第一页| 日韩免费毛片| jijzzizz老师出水喷水喷出| 久久毛片网| 成人午夜免费观看| 国产一级毛片在线| 久久久成年黄色视频| 72种姿势欧美久久久久大黄蕉| 亚洲成人黄色在线| 亚洲国产成人超福利久久精品| 91福利免费视频| 伊人无码视屏| 欧美一级爱操视频| 国产激爽大片高清在线观看| 欧美a级完整在线观看| 欧美人与性动交a欧美精品| 中文字幕有乳无码| 波多野结衣一区二区三区四区| 国产农村妇女精品一二区| 欧美人在线一区二区三区| 小蝌蚪亚洲精品国产| 强乱中文字幕在线播放不卡| 视频一区视频二区中文精品| 国内精品伊人久久久久7777人| 国产黑丝视频在线观看| 永久免费无码成人网站| 国产日韩AV高潮在线| 国产男女免费完整版视频| 国产极品嫩模在线观看91| 伊人色综合久久天天| 国产成人高清精品免费5388| 成人午夜视频免费看欧美| 露脸真实国语乱在线观看| 久久一本日韩精品中文字幕屁孩| 欧美亚洲国产精品久久蜜芽| 2020最新国产精品视频| 99久久性生片| 欧美福利在线| 欧美笫一页| 国产午夜看片| 婷婷激情亚洲| 亚洲午夜片| 久久动漫精品| 看国产毛片| 91亚洲视频下载|