亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于STM32的電子萬年歷系統(tǒng)設(shè)計(jì)

        2015-04-29 00:00:00劉磊
        科技資訊 2015年1期

        摘 要:電子萬年歷是集時(shí)間、日期、星期和溫度功能于一身,讀取直觀方便,市場發(fā)展前景廣闊的一個(gè)實(shí)用系統(tǒng)。本系統(tǒng)利用STM32內(nèi)部RTC實(shí)時(shí)時(shí)鐘模塊,通過相應(yīng)的軟件配置和算法設(shè)計(jì),實(shí)現(xiàn)電子萬年歷的功能,可以在LCD12864顯示屏上實(shí)時(shí)顯示當(dāng)前的年、月、日、時(shí)、分、秒、星期等信息,具有閏年補(bǔ)償功能,硬件實(shí)現(xiàn)簡單,界面友好,系統(tǒng)可靠程度高。本系統(tǒng)就是利用這個(gè)模塊,配合LCD12864顯示屏幕,來實(shí)時(shí)顯示當(dāng)前時(shí)間。下面從理論分析、硬件電路、軟件設(shè)計(jì)等幾個(gè)方面分別說明。

        關(guān)鍵詞:時(shí)鐘電路 萬年歷 STM32 LCD12864

        中圖分類號:TN873 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2015)01(a)-0000-00

        作者簡介:劉磊(1993-),男,漢族,河北蔚縣人,學(xué)歷:本科,研究方向:電氣工程及其自動化。

        1 理論分析

        RTC主要由兩部分組成。第一部分一是與APB1總線相連的APB1接口,它由APB1總線時(shí)鐘驅(qū)動,主要用于用戶通過APB1總線對其進(jìn)行讀寫操作。第二部分是一組可編程計(jì)數(shù)器,它又由RTC預(yù)分頻模塊和RTC可編程計(jì)數(shù)模塊組成,前者用于產(chǎn)生1秒時(shí)間基準(zhǔn),后者主要用于初始化當(dāng)前時(shí)鐘時(shí)間和進(jìn)行時(shí)鐘計(jì)數(shù)。RTC內(nèi)核完全獨(dú)立于APB1接口,軟件可以通過APB1接口來訪問預(yù)分頻值和時(shí)鐘計(jì)數(shù)器值。

        要實(shí)現(xiàn)萬年歷功能,必須對RTC的寄存器進(jìn)行相應(yīng)的配置。RTC的控制寄存器有兩個(gè),分別為RTC_CRH和RTC_CRL。對RTC_CRH的最低位置1可以允許秒中斷,這也是我們系統(tǒng)所需要的。在RTC_CRL中,位5到位0是有效位,分別是關(guān)于RTC關(guān)閉、配置標(biāo)志、寄存器同步標(biāo)志、溢出標(biāo)志、鬧鐘標(biāo)志和秒標(biāo)志的設(shè)置。這其中也有些是需要我們注意的,比如位5為RTC操作位,該位只能由硬件操作,軟件只讀,在進(jìn)行完一次RTC操作后,必須判斷該位來確定操作是否完成,若未完成,進(jìn)行等待。RTC的預(yù)分頻裝載寄存器也是十分重要的寄存器之一,由RTC_PRLH和RTC_PRLL組成,主要用來配置RTC的分頻數(shù)。RTC最重要的寄存器是計(jì)數(shù)寄存器RTC_CNT,由兩個(gè)16位寄存器組成用來進(jìn)行秒鐘的計(jì)數(shù),最大計(jì)數(shù)值折合成年大概為136年。在修改RTC_CNT時(shí)需要進(jìn)入配置模式。

        2 硬件電路

        STM32最小系統(tǒng)需要搭建好兩個(gè)晶振模塊,分別為32768HZ的低速晶振和8MMZ的高速晶振。然后接入復(fù)位電路,用于實(shí)現(xiàn)系統(tǒng)的復(fù)位功能。最后接入JTAG電路,就可以進(jìn)行程序的下載和硬件仿真了。

        LCD12864液晶顯示屏可以顯示較多的漢字和字符,程序簡單,支持串行和并行通信。在本設(shè)計(jì)中由于IO口的使用并不是很緊張,故選擇八位并行通信方式。在硬件連接方面需要注意,將顯示屏的DB0-DB7與單片機(jī)定義的八位數(shù)據(jù)口相連,并將RS、RW、EN與單片機(jī)定義的相應(yīng)控制端口相連,最后根據(jù)液晶的說明書正確連接電源和背光引腳。

        3 軟件設(shè)計(jì)

        軟件方面首先要對STM32的RTC進(jìn)行相關(guān)配置。第一步,使能電源時(shí)鐘和備份區(qū)域的時(shí)鐘,這樣這些區(qū)域才能開始正常工作。第二步,要取消備份區(qū)域的寫保護(hù),方便對備份區(qū)域的數(shù)據(jù)進(jìn)行讀寫。同時(shí)要標(biāo)記時(shí)鐘已經(jīng)經(jīng)過配置,避免每次復(fù)位之后需要重新配置時(shí)鐘。第三步,使能外部低速振蕩器并為RTC選擇時(shí)鐘源,為萬年歷的運(yùn)行提供基本的時(shí)鐘信號。第四步,使能RTC并進(jìn)行相關(guān)的配置,主要包括分頻、RTC的允許配置位、更新配置和設(shè)置中斷等。這些配置為RTC按我們的需求工作提供了基礎(chǔ)。第五步也是十分重要的一步,編寫中斷服務(wù)函數(shù),在中斷中需要讀出當(dāng)前的時(shí)間值實(shí)現(xiàn)時(shí)間的實(shí)時(shí)刷新。

        在程序設(shè)計(jì)方面有幾個(gè)重要的函數(shù)。首先是time_set函數(shù),這個(gè)函數(shù)主要功能是以軟件的方式設(shè)定一個(gè)時(shí)間的起始值,也相當(dāng)于現(xiàn)實(shí)生活中的時(shí)鐘校準(zhǔn)。time_set函數(shù)有六個(gè)參數(shù)分別為year、month、day、hour、min、sec,用來表示用戶欲設(shè)定的年、月、日、時(shí)、分、秒,返回值為0表示設(shè)置失敗,1表示設(shè)置成功。程序算法是:若設(shè)置年份大于1970年,則將該年份減去1970再乘以一年時(shí)間對應(yīng)的秒數(shù)存入某一變量,若設(shè)置月份大于1月,則將該月份減去1月乘以一月對應(yīng)的秒數(shù)存入另一變量,依次類推,最后將每一個(gè)參數(shù)對應(yīng)的變量相加即得到當(dāng)前時(shí)間相對于1970年1月1日0時(shí)0分0秒所走過的秒數(shù)。最后將這個(gè)秒數(shù)寫入到RTC的RTC_CNT寄存器中,作為計(jì)數(shù)初值。當(dāng)然在程序中也要對閏年和閏年的2月做特殊處理,不再贅述。

        還有一個(gè)重要的函數(shù)是time_get函數(shù),這個(gè)函數(shù)的主要功能是將計(jì)數(shù)器中的值讀出來并轉(zhuǎn)化為當(dāng)前的時(shí)間,類似于time_set函數(shù)的逆過程。首先要將RTC_CNT寄存器中的值存入變量,用這個(gè)變量進(jìn)行關(guān)于時(shí)間換算的計(jì)算。并且我們要定義一個(gè)結(jié)構(gòu)體calendar來存放轉(zhuǎn)換完成后的各個(gè)變量的值。換算的方法也是簡單的數(shù)學(xué)問題,用取商和取余運(yùn)算就可以得到秒數(shù)對應(yīng)的年、月、日等變量的值。

        對于中斷服務(wù)函數(shù)的處理也很簡單,只需要判斷標(biāo)志位來確定產(chǎn)生的中斷是不是我們需要的秒中斷,若是則調(diào)用time_get函數(shù)刷新當(dāng)前時(shí)間。

        在主函數(shù)中首先要注意的是各個(gè)模塊的初始化,包括STM32系統(tǒng)、RTC模塊和LCD12864顯示模塊等。由于沒有外擴(kuò)鍵盤,所以在下載程序時(shí)候需要進(jìn)行一次時(shí)間的校準(zhǔn),即手動更改time_set函數(shù)的參數(shù)值。然后程序便可以進(jìn)入while(1)死循環(huán),在循環(huán)中不斷執(zhí)行LCD顯示程序,因?yàn)闀r(shí)間是在中斷中刷新,故LCD12864也可以實(shí)時(shí)顯示當(dāng)前時(shí)間,達(dá)到萬年歷的效果。

        4 結(jié)論

        本系統(tǒng)硬件電路簡單,成本低,性價(jià)比高,以軟件的方式充分利用STM32片上資源實(shí)現(xiàn)了萬年歷的功能,能精確顯示當(dāng)前時(shí)間,系統(tǒng)可靠性高。

        參考文獻(xiàn)

        [1] 滕振芳,張昆.基于單片機(jī)的電子萬年歷的設(shè)計(jì).價(jià)值工程.2010(6)056.

        [2] 何乃味.基于LED點(diǎn)陣顯示的電子萬年歷的設(shè)計(jì)與實(shí)現(xiàn).安徽電子信息職業(yè)技術(shù)學(xué)院學(xué)報(bào).2014(1)19

        亚洲av性色精品国产 | 久久午夜无码鲁丝片直播午夜精品 | 极品美女aⅴ在线观看| 国产真人无遮挡免费视频| 日韩av在线不卡一二三区| 人妻少妇精品视频一区二区三区l| 丰满少妇高潮惨叫久久久一| 妺妺窝人体色www在线图片| 日本精品久久性大片日本| 亚州中文热码在线视频| 无码视频在线观看| 国产av日韩a∨亚洲av电影| 亚洲色图在线视频免费观看 | 日本系列中文字幕99| 亚洲av无码专区在线播放| 九九99久久精品在免费线18| 免费人成黄页网站在线观看国产| 日韩av一区二区网址| 久久er99热精品一区二区| 无码中文av有码中文av| 国产情侣自拍偷拍精品| 亚洲精品无码永久中文字幕| 亚洲一区二区三区成人网站| 亚洲a人片在线观看网址| 亚洲熟女av在线观看| 久久狠狠色噜噜狠狠狠狠97| 污污污污污污污网站污| 国产激情视频在线观看你懂的| 性色视频加勒比在线观看| 东北妇女肥胖bbwbbwbbw| 久久久国产精品福利免费| 日本免费一区二区精品| 深夜福利啪啪片| 女同久久精品国产99国产精品| 国产高清一区在线观看| 亚洲一区二区日韩专区| 精品成人av一区二区三区| 欧美成人免费看片一区| 亚洲午夜经典一区二区日韩| 久久天天躁狠狠躁夜夜av| 久久精品国产99精品九九|