牛國鋒,朱苗苗
(常熟理工學(xué)院 計(jì)算機(jī)科學(xué)與工程學(xué)院,江蘇 常熟 215500)
近年來,瑞薩MCU因其節(jié)能、性能好而得到廣泛的關(guān)注和應(yīng)用,本文主要以瑞薩MCU為核心,設(shè)計(jì)實(shí)現(xiàn)LED顯示的電子時(shí)鐘.
單片機(jī)中經(jīng)常使用7段LED來顯示數(shù)字,也就是用7個(gè)LED構(gòu)成字型“8”,并另外用一個(gè)圓點(diǎn)LED來顯示小數(shù)點(diǎn),共有8個(gè)LED數(shù)碼管,構(gòu)成了“8.”的字型,如圖1所示.
7段LED數(shù)碼顯示管根據(jù)LED的接法不同分為共陽極和共陰極兩種,將多只LED的陰極連在一起即為共陰式,而將多只LED的陽極連在一起即為共陽式[1].以共陰式為例,如把陰極接地,在相應(yīng)段的陽極接上正電源,該段即會(huì)發(fā)光.由于LED的電流通常較小,一般均需在回路中接上限流電阻.假如我們將圖1中“b”和“c”段接上正電源,其他端接地或懸空,那么“b”和“c”段發(fā)光,此時(shí),數(shù)碼顯示管將顯示數(shù)字“1”. 而將“a”、“b”、“d”、“e”和“g”段都接上正電源,其他引腳懸空,此時(shí)數(shù)碼管將顯示“2”.其他數(shù)字的顯示原理與此類同,點(diǎn)亮相應(yīng)的數(shù)碼管來顯示出0-9的數(shù)字.
在本次的設(shè)計(jì)中采用的是共陰極的LED顯示,當(dāng)I/O口輸出為高電平的時(shí)候,對(duì)應(yīng)段就被點(diǎn)亮,顯示相應(yīng)的時(shí)間.
圖1 “8.”字型示意圖
目前,隨著人們環(huán)保意識(shí)的日益增強(qiáng),消費(fèi)者越來越關(guān)注微控制器系統(tǒng)的節(jié)能性.為了擴(kuò)大在節(jié)能家電和電池供電系統(tǒng)等市場(chǎng)領(lǐng)域的應(yīng)用,瑞薩電子在新的產(chǎn)品中加入了節(jié)能理念,推出業(yè)界高標(biāo)準(zhǔn)16位低功耗閃存微控制器產(chǎn)品78K0R系列.
78K0R系列[2]是瑞薩公司推出的一款16位單片機(jī)微控制器,此款產(chǎn)品具備領(lǐng)先業(yè)界的低耗電量及高效能等特點(diǎn).瑞薩78K0R系列結(jié)合瑞薩在8/16位MCU市場(chǎng)中現(xiàn)有主要產(chǎn)品78K0系列的優(yōu)異技術(shù),并且整合多種周邊功能,使其性能更加強(qiáng)大.
瑞薩78K0R微控制器的主要特性[3]:
(1)支持尺寸更小、功耗更低的系統(tǒng).本MCU集成了面向電容觸摸傳感器的片上傳感器控制單元,意味著可以利用單塊芯片處理系統(tǒng)控制和觸摸控制,不再需要外部觸摸傳感器IC芯片,從而縮小了系統(tǒng)尺寸.并且可直接與用于實(shí)現(xiàn)觸摸感應(yīng)的傳感器電極相連,這樣就為各個(gè)電極消除了對(duì)電阻器和電容器的要求,使減少元件總數(shù)、降低系統(tǒng)成本、提高可靠性、縮短開發(fā)時(shí)間得以實(shí)現(xiàn).
(2)降低了系統(tǒng)總功耗.通過添加傳感器控制單元,極大地縮短了觸摸檢測(cè)所需的CPU處理時(shí)間,從而使系統(tǒng)功耗降低.此外,傳感器控制單元能夠?qū)崿F(xiàn)低頻(4 MHz或5 MHz)操作,從而進(jìn)一步降低了功耗.該系列產(chǎn)品可廣泛應(yīng)用于電池供電系統(tǒng)及節(jié)能家電領(lǐng)域.
鍵盤擴(kuò)展板是一個(gè)有16個(gè)按鍵的Key鍵盤,按鍵呈4行×4列矩陣型分布,按照設(shè)計(jì)要求輔助完成時(shí)間的輸入、開始和停止等功能,根據(jù)其電路圖和需求設(shè)置鍵盤的輸入為數(shù)字、字母和加減乘除符號(hào)等.板上有一個(gè)10個(gè)針腳的擴(kuò)展接口,該接口通過數(shù)據(jù)線與MCU板上擴(kuò)展接口相連接,根據(jù)電路控制原理,實(shí)現(xiàn)按鍵的不同控制功能.
LED顯示擴(kuò)展板有兩組接口,一組是4bit模式接口一個(gè),另一組是8bit模式接口兩個(gè),接口都是標(biāo)準(zhǔn)的10針腳.板上有一排并列的8個(gè)“8.”字形輸出的LED顯示板,顯示板上面有一排8個(gè)對(duì)應(yīng)的LED指示燈.該擴(kuò)展板接口接入MCU控制器,根據(jù)其電路控制原理,LED顯示板根據(jù)需求可以顯示以下內(nèi)容:(1)輸出1至8位數(shù)字;(2)輸出字母;(3)年月日顯示;(4)24小時(shí)電子表時(shí)間顯示;(5)秒表計(jì)時(shí)等.
CubeSuite是瑞薩公司推出的一款集成型開發(fā)環(huán)境,它為采用8位到32位架構(gòu)的微控制器提供了統(tǒng)一的支持.在開發(fā)適用于MCU的軟件(程序)時(shí),此集成型開發(fā)環(huán)境將所有的工具(編譯器、與仿真器一起使用的調(diào)試器等)鏈接起來,使其可以在同一個(gè)主機(jī)上完成所有的設(shè)計(jì)、編碼、評(píng)估和驗(yàn)證任務(wù).開發(fā)者根據(jù)其開發(fā)軟件所針對(duì)的MCU的類型,選擇采用CubeSuite集成型開發(fā)環(huán)境中不同的型號(hào).
CubeSuite[4]的主要特性:該軟件采用界面化編輯,清爽美觀,簡單易用,即使對(duì)于初用者,也可以在短時(shí)間內(nèi)掌握其性能和使用方法.它利用項(xiàng)目樹來滿足MCU開發(fā)流程的要求,這種復(fù)雜的功能讓開發(fā)者通過點(diǎn)擊節(jié)點(diǎn)即可轉(zhuǎn)至預(yù)期任務(wù).CubeSuite在包裝內(nèi)整合了瑞薩MCU軟件開發(fā)所需的基本軟件,安裝完成之后可以立即投入使用.它還提供了一個(gè)內(nèi)容豐富的用戶指南,使得即使是最新使用的開發(fā)者也可以在安裝之后立即應(yīng)用.CubeSuite降低了學(xué)習(xí)所提供工具需要的時(shí)間,因?yàn)樗鼈冊(cè)诠δ苌吓c所有支持的MCU系列相同.產(chǎn)品還具有代碼生成器的功能,支持通過一個(gè)GUI進(jìn)行器件驅(qū)動(dòng)器設(shè)置,使其易于創(chuàng)建程序,當(dāng)?shù)谝淮尾捎靡粋€(gè)新的MCU系列時(shí),外設(shè)功能的設(shè)置程序也不會(huì)出現(xiàn)混淆.
傳統(tǒng)開發(fā)環(huán)境要求用戶先編輯所有源文件,然后構(gòu)建整個(gè)程序,從而延長了構(gòu)建時(shí)間.CubeSuite具有“快速構(gòu)建”功能,每次修改或保存源文件后,都能夠自動(dòng)在后臺(tái)運(yùn)行構(gòu)建功能,從而極大地縮短了總構(gòu)建時(shí)間.基本的編輯、構(gòu)建和調(diào)試功能將更加強(qiáng)大,從而可以提供更多的簡易性、便利性,進(jìn)而實(shí)現(xiàn)更加方便的軟件開發(fā).
本電子時(shí)鐘設(shè)計(jì)主要以瑞薩電子16位MCU――78K0R/KE3-L為核心,鍵盤擴(kuò)展板和LED顯示擴(kuò)展板同時(shí)通過接口與MCU對(duì)應(yīng)的擴(kuò)展接口相連接.MCU通過仿真器與計(jì)算機(jī)連接,仿真器的一端連接MCU,另一端USB接口連接到計(jì)算機(jī)上,通過仿真器將計(jì)算機(jī)上的程序?qū)懭氲組CU上,同時(shí)還給MCU不間斷供電.連接好以后,通過鍵盤擴(kuò)展板上的Key按鍵輸入數(shù)字,在LED顯示擴(kuò)展板上8個(gè)7段LED顯示板顯示24小時(shí)制時(shí)間,顯示格式為“XX(時(shí))-XX(分)-XX(秒)”,并設(shè)置Key按鍵控制時(shí)間的停止和開始以及校正調(diào)整時(shí)間.
在CubeSuite集成型開發(fā)環(huán)境中,選擇MCU型號(hào)為78K0R/KE3-L,建立新的工程Project,工程建好后按照設(shè)計(jì)要求進(jìn)行配置和編程.
首先要在設(shè)計(jì)工具端口設(shè)置中進(jìn)行端口配置,利用引腳列表配置復(fù)用引腳處理,同時(shí)在引腳配置圖內(nèi)確定引腳布局.按照MCU擴(kuò)展接口對(duì)應(yīng)的端口號(hào)和端口電路設(shè)計(jì)圖進(jìn)行端口引腳的出入力設(shè)置,鍵盤擴(kuò)展板接入的接口引腳都設(shè)置為入力,進(jìn)行時(shí)間和信號(hào)的輸入,LED顯示擴(kuò)展板的接口引腳都設(shè)置成出力,為時(shí)間信號(hào)的輸出,設(shè)置完成后進(jìn)行端子生成,就會(huì)在端子配置圖中顯示MCU各個(gè)引腳的端子設(shè)置情況,如圖2所示.在定時(shí)器設(shè)置中開通通道0,并在通道0中設(shè)置時(shí)鐘頻率為1000 ms,通過內(nèi)部定時(shí)器產(chǎn)生時(shí)鐘進(jìn)行準(zhǔn)確計(jì)時(shí),作為時(shí)間秒表計(jì)時(shí)的單位.在代碼生成器中按設(shè)計(jì)要求編寫GG_main.c主程序和GG_timer.user.c時(shí)間設(shè)置程序.完成后系統(tǒng)生成編譯該工程,并通過瑞薩Debug工具——片上調(diào)試器寫入到MCU板上內(nèi)存中保存,接通電源即可運(yùn)行.
圖2 端子配置圖
GG_main.c主要實(shí)現(xiàn)程序如下:
GG_timer.user.c主要實(shí)現(xiàn)程序如下:
以瑞薩電子16位MCU――78K0R/KE3-L為核心,在專用集成型開發(fā)環(huán)境CubeSuite下,采用C語言編程,設(shè)計(jì)實(shí)現(xiàn)由時(shí)、分、秒組成的24小時(shí)方式計(jì)時(shí)、LED數(shù)碼顯示器顯示的電子時(shí)鐘,實(shí)現(xiàn)了24小時(shí)計(jì)時(shí),校正調(diào)整時(shí)間、秒表計(jì)時(shí)等功能.瑞薩嵌入式MCU的低成本、低功耗等節(jié)能理念正在被人們所接受,其產(chǎn)品將慢慢地滲透到人們生活生產(chǎn)的各個(gè)領(lǐng)域,有較廣的應(yīng)用前景.
[1](加)Myke Predko.PCI微控制器基礎(chǔ)與實(shí)踐[M].胡光華,譯.北京:科學(xué)出版社,2007.
[2]矢野敏之,高橋美穗,李建波,等.瑞薩M 16C/62P單片機(jī)原理和應(yīng)用[M].北京:清華大學(xué)出版社,2006.
[3]瑞薩科技公司.瑞薩16位R8 C/TINY系列M CU[J].世界電子元器件,2005(04):91-94.
[4]瑞薩科技公司.適用于微控制器的Cube Suite+集成型開發(fā)環(huán)境[J].電子制作,2011(7).