機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
用AT90S1200代換顯示驅(qū)動芯片MC14499的應(yīng)用電路
[1] [2]  下一頁
用AT90S1200代換顯示驅(qū)動芯片MC14499的應(yīng)用電路
 更新時間:2008-8-18 13:18:39  點擊數(shù):18
【字體: 字體顏色

    摘要:AT90S1200是ATMEL公司推出的RISC單片機,它將PIC及8051單片機的優(yōu)點和其本身具有的Flash技術(shù)集于一身,本文介紹了應(yīng)用AT90S1200單片機代換Motorola顯示驅(qū)動芯片MC14499來驅(qū)動四位LED動態(tài)顯示的代換電路及詳細的應(yīng)用程序。

    關(guān)鍵詞:MC14499 AT90S1200 動態(tài)顯示 單片機

1 MC14499簡介

MC14499是Motorola公司生產(chǎn)的串行輸入BCD十進制輸出的CMOS集成塊,它內(nèi)含BCD譯碼器和串行接口,可以與任何CPU接口連接,在比較復雜的單片機控制系統(tǒng)中,MC14499具有占用I/O少、控制顯示器多、功耗低、使用方便等優(yōu)點,因而得到廣泛的應(yīng)用。但其缺點是用它來實現(xiàn)顯示系統(tǒng)比較復雜,并且成本太高。隨著技術(shù)的飛速發(fā)展和微處理性能價格比的較高,人們可以采用高性價比的MCU來代換它,這也許是一個趨勢,如用力源PS7219代換MAX7219等。筆者用AT90S1200來代換CM14499,取得了非常好的效果。AT90S1200是一種性能非常優(yōu)異的RISC單片機,它可以與主CPU并行工作,而且功耗也特別你,在性能上完全與MC14499兼容,由其組成的顯示系統(tǒng)非常簡單。另外,它的一個最突出的優(yōu)點是操作靈活,并可在MC14499接口的基礎(chǔ)上增加SPI接口、I2C及單線傳輸?shù)裙δ堋?/p>

MC14499片內(nèi)主要包括移位寄存器、鎖存器、多路輸出、譯碼驅(qū)動器及振蕩器,由多路輸出從鎖存器中取出的BCD碼數(shù)據(jù)經(jīng)段譯碼器譯碼后送至八段輸出腳,片內(nèi)振蕩信號經(jīng)四分頻后接至I~IV四條位控制線對顯示器進行輪流掃描,以實現(xiàn)動態(tài)掃描顯示。

MC14499一次可接收20位串行輸入數(shù)據(jù),MC14499的前四位為4個LED顯示器的小數(shù)點選擇位,后16位是4個LED顯示器的BCD碼輸入數(shù)據(jù),高位在前,低位在后,當EN由高變低時,MC14499的寄存器開始接收串行數(shù)據(jù)。

MC14499采用雙列直播式18腳DIP封裝形式。圖1所示是它的引腳排列示意圖。

2 AT90S1200的主要特點

AT90S1200單片機是由ATMEL公司推出的RISC(reduced Instruction Set cpu)單片機,它充分吸取了PIC及8051的優(yōu)點,并發(fā)揮了其自身Flash存儲器技術(shù)特長。從而使AT90S1200具有非常優(yōu)異的性能。其特點如下:

●具有大電流(10~20mA)輸出特性,可直接驅(qū)動LED顯示、繼電器、SSR固態(tài)繼電器等。片內(nèi)看門狗定時器具有安全保護功能,可防止程序走飛,從而提高了產(chǎn)品的抗干擾能力。

●內(nèi)部帶有價格低廉的可擦寫1000次以上的1k字節(jié)FLASH,速度高,功耗低,并具有sleep功能,可分別在空閑、掉電及省電模式下實現(xiàn)低功耗。在1MHz時呆實現(xiàn)1MIPS的處理能力,AT90S1200采用單周期執(zhí)行指令,耗電在1mA~3mA之間。(睡眠時的典型損耗電流≤1μA)。

●帶有高度保密但可多次燒寫的FLASH,具有多重保密保護鎖死功能,可低價快速完成產(chǎn)品商品化生產(chǎn)。

●有串行異步通訊UART口,不占用定時器和SCI傳輸功能,其高速性能可使其工作在一般標準整數(shù)頻率,它的波特率可達576k,并帶有系統(tǒng)可編程SPI接口。

●采用超功能簡精指令:具有32個通用工作寄存器,可靈活使用指令運算,并支持功能強大C語言編程,易學易用。

●AT90S1200內(nèi)置比較器,I/O口可作A/D轉(zhuǎn)換用,內(nèi)含一個8位定時器/計時器。

●具有三個固定中斷向量地址,分別為:外部中斷、內(nèi)部定時器中斷、片內(nèi)模擬比較器輸出中斷,可實時快速響應(yīng),適用于實時控制系統(tǒng)。

●是一種可重設(shè)啟動復位器件,具有內(nèi)部電源開關(guān)啟動計數(shù)器,可將低電平復位(RESET)直接接到Vcc端。當電源打開時,利用內(nèi)部的RC看門狗定時器可延遲MCU啟動執(zhí)行程序,這種延時可以使I/O在穩(wěn)定后執(zhí)行程序,以提高單片機的工作可靠性。

●AT90S1200器件內(nèi)置1MHz工作頻率RC振蕩器,這使得單片機無需外加振蕩元器件即可工作,因而設(shè)計使用簡單方便。

●具有可描寫100000次的EEPROM(64個字節(jié)),為掉電后的數(shù)據(jù)保存提供方便。

●工作電壓范圍為2.7V~6.0V,具有較強的電源抗干擾能力。

3 代換電路

用AT90S1200代換KMC14499的電路連接如圖2所示,其中AT90S1200的RST為復位引腳,可直接接至高電平,并在內(nèi)部復位,A~G為7段,DP為小數(shù)點,Ⅰ~Ⅳ為四位位選信號輸出,可用于從顯示器吸收電源。

可以看出,圖2所示電路非常簡單,只需外接8只電阻即可驅(qū)動四位動態(tài)顯示,阻值可根據(jù)LED數(shù)碼管的性能在200~500Ω之間選擇,筆者使用200Ω,亮度很高,且功耗很低,這一些需24小時工作的場合很適用,可直接代換MC14499.和主EN為使能信號,只有EN為低時才接收數(shù)據(jù),CLK為時鐘信號,使用AT90S1200的中斷口pd2,可快速反應(yīng)實時接收,data為串行數(shù)據(jù)輸入端,在CLK的下降沿,data線上的數(shù)據(jù)被移入到內(nèi)部20位移位寄存器中。

4 軟件設(shè)計

使用AT90S1200直接代換MC14499完成顯示功能時,系統(tǒng)軟件可采和AVR精簡指令的匯編語言編寫,并可采用模塊化結(jié)構(gòu)設(shè)計。為達到MC14499的通訊速度,對串行數(shù)據(jù)的接收采用中斷方式處理,使用內(nèi)置振蕩器,WDT可使用外部中斷接收CLK信號,AT90S1200具有89條指令代碼,且全部為單字節(jié)指令,可進行十位數(shù)字運算,在32個工作寄存器中只有16~31個寄存器可執(zhí)行立即數(shù)據(jù)的操作,并支持C語言編程,而且靈活方便,下面給出用AT90S1200代換MC1449的顯示數(shù)據(jù)轉(zhuǎn)換子程序和接收數(shù)據(jù)子程序。

4.1 驅(qū)動顯示子程序

由于AT90S1200不能查表。故在顯示子程序中應(yīng)分別進行處理,主程序內(nèi)使用了通用寄存器R26中帶為的接收BCD碼,并通過本子程序轉(zhuǎn)換為段碼,仍由R26帶出并返回到調(diào)用程序處,本示例為0、1、2、3、4五個字段碼的轉(zhuǎn)換:

Data:CPI R26,$00 ;數(shù)據(jù)0的轉(zhuǎn)換

BRNE Data0

LDI R26,$7B

RJMP DataD

Data0:CPI R26,$01 ;數(shù)據(jù)1由BCD轉(zhuǎn)換為段碼

BRNE Datal

LDI R26,$48

RJMP DataD

Datal:CPI R26,$02 ;數(shù)據(jù)2的轉(zhuǎn)換

BRNE Data2

LDI R26,$D3

RJMP DataD

Data2:CPI R26,$03 ;數(shù)據(jù)3的轉(zhuǎn)換

BRNE Data3

LDI R26,$D9

RJMP DataD

Data CPI R26,$04 ;數(shù)據(jù)4的轉(zhuǎn)換

BREN Data4

LDI R26,$E8

RJMP DataD

DataD:RET

4.2 數(shù)據(jù)接收子程序

首先把狀態(tài)寄存器的數(shù)據(jù)送到R18暫存,然后分別接收小數(shù)點及四位BCD碼,并將數(shù)據(jù)寄存在R20、R21、R22、R23、R24中,程序如下:

PROG:IN R18,SREG ;狀態(tài)標志寄存

CLC

SBIC PIND,0

SEC

ROL R29

ROL R28

ROL R27

INC R16

CPI R16,$14

BRNE PROGD

MOV R20,R27;小數(shù)點位置位的接收,寄存在R20

ANDI R20,$0F

MOV R21,R28 ;顯示首位數(shù)據(jù)接收

SWAP R21

ANDI R21,$0F

MOV R22,R28 ;第二位接收

ANDI R22,$0F

MOV R23,R29 ;第三位接收

SWAP R23

ANDI R23,$0F

MOV R24,R29 ;第四位接收

ANDI R24,$0F

CLR R16

CLR R27

CLR R38

CLR R29

CPI R24,$0A

BRL0 RPOGD

CLR R20

LDI R21,$0F

LDI R22,$0F

LDI R23,$0F

LDI R24,$00

PROGD RETI

5 結(jié)束語

文中所述的方案已被成功應(yīng)用于無功補償控制器的顯示系統(tǒng)中,經(jīng)使用表明:AT90S1200不僅可以完全取代MC14499進行驅(qū)動顯示,而且還具有功耗低、使用方便的特獨性能,僅用8只外接電阻即可驅(qū)動四位動態(tài)顯示系統(tǒng),且接口非常靈活,可方便地與任何單片機接口,并可編程為串行同步接口、I2C接口、SPI接口等,更重要的是提出了一種用MCU代換ADIC設(shè)計方案和實現(xiàn)思路,并經(jīng)過實用表明完全可行,也比較有實用價值。

  • 上一篇: 應(yīng)用新型雙T選頻網(wǎng)絡(luò)的OFCS光檢測放大器
  • 下一篇: 光傳送網(wǎng)與光電子工業(yè)
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1