新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > LPC2294的實(shí)時(shí)時(shí)鐘顯示工程設(shè)計(jì)分析

LPC2294的實(shí)時(shí)時(shí)鐘顯示工程設(shè)計(jì)分析

作者:華僑大學(xué) 蔡彥 時(shí)間:2008-07-25 來(lái)源:?jiǎn)纹瑱C(jī)及嵌入式系統(tǒng)應(yīng)用 收藏

本文引用地址:http://butianyuan.cn/article/86235.htm



  系統(tǒng)引導(dǎo)模塊完成各種初始化工作后,用一條跳轉(zhuǎn)指令進(jìn)入C的主入口Main,從此控制權(quán)移交給了C應(yīng)用程序。

  2 應(yīng)用程序部分

  對(duì)于該工程中使用到的芯片里的各個(gè)模塊,如I/O端口、、TIMERl,應(yīng)該首先在相應(yīng)函數(shù)中對(duì)該模塊里的各個(gè)寄存器全部進(jìn)行初始化,這樣脫機(jī)運(yùn)行時(shí)才能順利顯示。

  下面簡(jiǎn)要介紹一下main.c主程序里用到的各主要函數(shù)。

  hitVfdl312();

  該函數(shù)首先初始化的P0口全部為GPIO口。本工程中設(shè)置PO.6與P0.7、P0.8為輸出,并在硬件連接上分別接到PT6311模塊的數(shù)據(jù)線、片選線、時(shí)鐘線,然后利用P0.6與P0.7、P0.8送出數(shù)據(jù)到VFD模塊,初始化VFD,舔加初始化數(shù)據(jù)。實(shí)際上初始化為空格,然后全部點(diǎn)亮VFD。

  Ini();

  初始化實(shí)時(shí)時(shí)鐘并啟動(dòng)

  TIMERl_InitTimef();

  初始化定時(shí)器1,設(shè)置每過(guò)1ms產(chǎn)生1次中斷,即置位定時(shí)器里IR中的MR0位;并復(fù)位定時(shí)器計(jì)數(shù)器TC。

  TIMERl_StartTimer();

  使定時(shí)器1離開(kāi)復(fù)位狀態(tài),并開(kāi)始計(jì)時(shí)。

  pollint();

  設(shè)置變量_mSet、_10mSct、_100mSct,其數(shù)值代表的單位分別為1ms,10ms,110ms。隨著定時(shí)器1的不斷置位中斷和復(fù)位,它們的數(shù)值也相應(yīng)產(chǎn)生變化。

  GetTime();

  每過(guò)1s,讀一下RTC里的時(shí)間,送到VFD緩 沖區(qū)。


  UpdateVfdl312();

  每過(guò)100ms,讀取VFD緩沖區(qū)里的數(shù)值,刷新VFD顯示。

  結(jié)語(yǔ)

  把該工程應(yīng)用于基于的開(kāi)發(fā)板外部存儲(chǔ)器后,能夠脫機(jī)運(yùn)行,VFD實(shí)時(shí)時(shí)鐘全部點(diǎn)亮,并且顯示時(shí)間正確。

  LPC2294適用于開(kāi)發(fā)稅控設(shè)備。稅控設(shè)備上有較多的模塊,VFD客顯模塊是其中之一,可用來(lái)顯示時(shí)間。

  這個(gè)工程是一個(gè)較完整的工程,可以在該工程上擴(kuò)展稅控機(jī)的其他模塊和應(yīng)用程序等。不需要改動(dòng)啟動(dòng)代碼,只需在mian.c和其他應(yīng)用程序中添加相應(yīng)的函數(shù)。以期以后開(kāi)發(fā)成一個(gè)完整的稅控機(jī)系統(tǒng)。

linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 嵌入式 ARM LPC2294 RTC

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉