《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于LPC2131的實時時鐘控制設計
基于LPC2131的實時時鐘控制設計
吳懷明,童子權 哈爾濱理工大學
摘要: 實時時鐘在工業系統中具有良好的應用前景。本系統以微控制器LPC2131為核心控制器,控制內部實時時鐘,實現對秒、分、小時等各個時間寄存器的準確操作,通過串口將采集到的數據發送到上位機。本文詳細給出硬件設計總體框圖、設計原理和軟件實現的方法,得出了實驗結果。這種實時時鐘的控制方法,很容易應用到現代工業以及各種智能化應用系統中。
Abstract:
Key words :

引言
    嵌入式技術是當前發展速度最快、應用最廣、前景最好的信息技術領域之一。目前,社會上嵌入式系統人才短缺的現狀給各大高校帶來了契機,很多高校的電子信息工程專業都開設了相關的嵌入式課程。嵌入式系統主要由兩部分組成:一是硬件,二是軟件。本設計是基于32位ARM7TDMI-S核的LPC2131微控制器,內部帶有獨立電源和時鐘源的實時時鐘,在節電模式下極大地降低了功耗。通過硬件和軟件的結合操作,實現了對內部各個時間寄存器的秒、分、小時、日、月、年和星期的控制,能夠將采集到各個時間數據通過串口發送到上位機上,達到實時系統的顯示功能。此設計便于形成專用的時鐘控制的嵌入式裝置,也能夠嵌入到各種智能化應用系統中。

1 系統工作原理
    該系統主要基于LPC2131為核心的主控電路,由JTAG下載模塊、外部時鐘源模塊、ARM7微控制器模塊、串口通信模塊(RS-232)等電路組成。LPC2131微控制器內部帶有實時時鐘模塊,可以由外部獨立的時鐘振蕩器來提供時鐘源或由基于內部VPB時鐘的可編程預分頻器來提供時鐘源,達到對時鐘寄存器秒、分、小時、日、月、年和星期的控制。同時將控制的數據通過串口與PC機通信,來實現結果,將數據顯示在PC機上。
1.1 實時時鐘內部結構介紹
    LPC2131內部實時時鐘結構框圖如圖1所示。實時時鐘包含混合寄存器、時間寄存器、時間計數器、報警寄存器和預分頻器等。其中,混合寄存器包括:中斷位置寄存器(ILR)、時鐘節拍計數器(CTC)、時鐘控制寄存器(CCR)、計數器遞增中斷寄存器(CIIR)、報警屏蔽寄存器(A-MR);時間計數器包括:秒寄存器(SEC)、分寄存器(MIN)、小時寄存器(HOUR)、日期寄存器(DOM)、星期寄存器(DOW)、年寄存器(DOY)、月寄存器(MONTH)、年寄存器(YEAR);時間寄存器組包括:完整時間寄存器0(CTIME0)、完整時間寄存器1(CTIME1)、完整時間寄存器2(CTIME2);報警寄存器包括:秒報警值(ALSEC)、分報警值(ALMIN)、小時報警值(ALHOUR)、日期報警值(ALDOM)、星期報警值(ALDOW)、月報警值(ALM-ON)、年報警值(ALYEAR);預分頻器包括:預分頻值整數部分(PREINT)、預分頻值小數部分(PREFRAC)。

a.jpg


1.2 實時時鐘的基本操作
    首先,設置時鐘控制寄存器(CCR)可以選擇RTC的計數時鐘,可以由外部振蕩器32.768 kHz提供或內部Fpclk分頻得到。當使用Fpclk作為時鐘源時,它的基準時鐘分頻器允許調節任何頻率高于65.536 kHz的外設時鐘源產生一個32.768 kHz的基準時鐘,實現準確計時操作。
    其次,如果CCR選擇內部時鐘源,則設置RTC基準時鐘分頻器(PREINT、PREFRAC),如果選擇外部32.768kHz就不必設置預分頻寄存器的值,預分頻寄存器值的計數如下:
    b.jpg
    接著初始化實時時鐘(RTC)的各個時鐘值,如YEAR、MONTH、DOM等,報警中斷設置,如CIIR、AMR等,然后啟動RTC,即CCR的CLKEN位置位,讀取完整的時間寄存器值。在此過程中時鐘節拍計數器(CTC)是一個15位計數器,每秒計數32 768個時鐘,當有CTC秒進位時,完整時間CTIME0~CTIME2、RTC時間寄存器(如SEC、MIN)將會更新。實時時鐘中斷有兩種:一種增量中斷,由CIIR控制;另一種為報警中斷。本設計使用的是增量中斷。
    最后將串口初始化,設置串口的波特率、數據位、停止位、校驗位等,將串口與上位機連接,將串口采集到的時間寄存器變化的時間值發送到上位機上顯示,得到對實時時鐘的控制結果。
1.3 寄存器的功能介紹
    時鐘控制寄存器(CCR)是一個5位寄存器,控制時鐘電路的分頻操作。計數器增量中斷寄存器(CIIR):可以使計數器每次增加時產生一次中斷,在中斷位置寄存器的位0(ILR[0])寫入1之前,該中斷一直保持有效。完整時間寄存器0(CTIME0)和完整時間寄存器1(CTIME1):
CTIME0包括秒、分、小時、和星期,CTIME1包括日期、月和年。具體寄存器描述略——編者注。
    預分頻整數寄存器(PREINT):預分頻的整數部分。預分頻整數部分計算如下:
    c.jpg
    預分頻小數寄存器(PREFRAC):預分頻的小數部分。預分頻小數部分計算如下:
    d.jpg

2 系統硬件設計
2.1 系統的硬件結構
    該系統對ARM7微控制器LPC2131的實時時鐘模塊的各個寄存器控制,來達到對時鐘的精確控制。該系統的硬件結構圖,如圖2所示。包括復位電路模塊、JTAG下載模塊、通信模塊(RS-232)、ARM7微控制器模塊及外部振蕩電路模塊。

2.2 系統的硬件原理圖
    復位電路如圖3所示,采用復位芯片SP708S,可以大大提高MCU的復位性能。通過確定的電壓值(閾值)啟動復位操作,同時排除瞬間干擾的影響,又防MCU在電源啟動和關閉期間的誤操作,保證數據安全。用阻容復位穩定性差,常常有按了復位鍵沒反應,要按一段時間才能復位的經歷,容易復位不成功。

    JTAG下載電路如圖4所示,采用20引腳的JTAG口,使用下載工具J-LINK,由軟件MDK將從PC機通過J-LINK,下載到LPC2131里。

g.jpg


    串口通信電路如圖5所示,采用串口芯片MAX3232,將MAX3232與LPC2131連接起來,實現上位機與下位機數據通信。

h.jpg


    ARM7微控制器模塊及外部振蕩電路的系統時鐘源晶振為11.059 2 MHz,實時時鐘的晶振為32.768 kHz。電路圖略——編者注。

3 系統軟件設計
3.1 程序流程
    本系統采用了高級語言C編寫LPC2131程序,本程序主要完成對實時時鐘RTC的各個時間寄存器的設定、顯示以及對串口0的初始化設定。然后通過CPU采集實時時鐘的各個時間寄存器變化的數據,經串口連接到上位機,在上位機上顯示出時間來。程序流程如圖6所示。

i.jpg


3.2 控制程序
    根據程序流程,可將程序分為三大部分:第一部分,對串口的初始化及串口發送數據的函數初始化。第二部分,對實時時鐘的初始化,來設置基準時鐘、時、分、秒等各個寄存器,將采集到的數據通過終端顯示出來。第三部分,主函數部分,將秒增量中斷標志置位、清楚RTC中斷,而后循環地將時間在串口調試助手上顯示。
j.jpg


k.jpg

4 實驗結果
    將以上程序在MDK中運行,下載到LPC2131中,將串口與PC機連接,設置好串口調試助手,波特率9 600bps,數據位8位,1個停止位,無校驗位。得到時間結果。

結語
    本文介紹了基于ARM7TDMI-S核的芯片LPC2131和內部的實時時鐘(RTC)的工作原理,設計了基于實時時鐘與LPC2131的串行通信的采樣系統,將時間顯示在上位機上。這種時鐘控制系統在現代生產、生活中應用廣泛。在實際應用中,只需根據本文的基本思想進行適當的移植,即可設計成專用的時鐘控制的嵌入式裝置,并嵌入到各種智能化應用系統中。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 最新国产三级久久 | 日韩在线无 | 男女视频在线看 | 狠狠色综合久久丁香婷婷 | 国产一区二区三区免费 | 国产成人理在线观看视频 | 成人性色生活片全黄 | 91欧美激情一区二区三区成人 | 69xxxx欧美老师 | 成人男女啪啪免费观看网站 | 成人免费一级毛片在线播放视频 | 成人国产精品视频频 | 日韩二区三区 | 亚洲国产精品ⅴa在线观看 亚洲国产精品aaa一区 | 亚洲欧美午夜 | 一及毛片| 日本三级成人中文字幕乱码 | 三级黄色片日韩 | 色婷婷激婷婷深爱五月老司机 | 不卡一级aaa全黄毛片 | 欧美成人性色大片在线观看 | 亚洲二区在线观看 | 亚洲精品久久精品h成人 | 国内精品免费一区二区三区 | 中文日韩字幕一区在线观看 | 欧美视频一区在线观看 | 最新中文字幕一区二区乱码 | 性欧美videofree另类17 | 日韩国产在线观看 | 欧美一区二区三区在观看 | 亚洲精品区在线播放一区二区 | 亚洲人在线播放 | 我要看a级毛片 | 一级一级一片免费高清 | 国产成人精品综合在线观看 | 亚洲综合网在线观看 | 在线视频 自拍 | 久久国产首页 | 欧美专区一区 | 日韩精品一区二三区中文 | 国产成人精品在线 |