關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > LCD驅動器SD0432與嵌入式系統的接口設計

        LCD驅動器SD0432與嵌入式系統的接口設計

        作者: 時間:2006-01-12 來源:網絡 收藏
        摘要:集成顯示0432是深圳興威帆電子有限公司生產的低工作電壓串行接口芯片,它內部具有看門狗(WDT)及語音輸出電路。文中介紹了0432的工作特性及工作原理,給出了0432與8051嵌入式微處理器的接口電路及部分程序代碼。

        關鍵詞:顯示 SD0432 嵌入式系統芯片8051 看門狗(WDT)

        1 SD0432的主要特性

        現今,隨著價格的下降,LCD的使用已經越來越普遍了,如在電腦顯示器方面,大有LCD顯示器取代CRT顯示器的趨勢。同時由于LCD顯示器具有直觀、小巧輕薄、耐用等特性,因而得到了廣泛的使用。

        SD0432是具有128段(324位)和映射存儲器的多功能LCD。通過配置可使之適合于多種LCD的應用場合。主控制器(如單片機)與SD0432之間的接口只需四根線。此外,SD0432還可以通過掉電指令來降低器件的功耗。SD0432的主要特性如下:

        工作電壓范圍為2.4V~5.2V;

        內含256kHz RC振蕩器;

        外部32kHz晶振或256kHz時鐘頻率輸入;

        1/2或1/3偏置選擇及1/2、1/3或1/4占空比LCD顯示;

        內含時基頻率源;

        兩個可選擇的蜂鳴器頻率;

        可用掉電命令降低功耗;

        內含時基發生器及看門狗定時器;

        時基或看門狗定時器溢出輸出;

        具有八種時基/看門狗定時器時鐘源;

        324 LCD驅動器;

        內含324位顯示RAM;

        帶有四線串行接口;

        內含LCD驅動信號源;

        具有軟件配置特性;

        具有三種數據尋址模式;

        通過改變VLCD腳至VDD腳的串接電阻器調整LCD的工作電壓;

        數據模式指令及命令模式指令R(Read)/W(Write)地址可以自動累加。

        2 SD0432的引腳功能

        3 結構原理

        圖1是SD0432的內部結構原理圖,它主要由顯示存儲器RAM、系統振蕩器、時基及看門狗定時器(WDT)、音頻發生器、LCD驅動器及偏壓發生器、控制和定時電路等部分組成。

        3.1 顯示存儲器RAM

        靜態顯示存儲器(RAM)用以存儲要顯示的數據,其容量為324位。RAM的內容直接反映LCD驅動器的內容,RAM中的數據由READ、WRITE以及READ-MODIFY-WRITE指令進行存取。

        3.2 看門狗定時器(WDT)

        圖2是SD0432中系統時基及看門狗(WDT)的結構圖,時基發生器經過256分頻可產生精確時基。看門狗定時器在此基礎上,經過4分頻產生中斷,從未知或不希望的跳轉及誤操作中斷主控制器或其他子系統,看門狗定時器結束將導致內部看門狗定時結束標志位置1。時基發生器及WDT定時結束標志的輸出可通過命令選擇與IRQ輸出相連接。SD0432共有八個頻率源適用于時基發生器及看門狗定時器時鐘,該頻率可由下式計算:

        fout=32kHz/2 n

        其中:n=0~7,32kHz為系統頻率,可由32.768kHz晶振,256kHz內部振蕩器或256kHz外部頻率產生。

        若采用片內振蕩器或外部256kHz頻率作為系統頻率源,可通過一個三級預分頻器將其分頻為32kHz。使用時基發生器及WDT相關命令時應注意其相互的區別,因為兩者共和一個八級計數器。例如:調用WDT DIS命令可禁止時基發生器,而WDT EN命令不僅使能時基發生器而且可輸出WDT定時結束標志(將WDT定時結束標志接至IRQ引腳)。在TIMER EN命令發生后,WDT從IRQ引腳斷開而時基發生器的輸出端接至該引腳。CLR WDT命令可清零WDT,而時基發生器的內容則可由CLR WDT或CL TIMER命令清零,應在WD EN或TIMER EN命令前執行操作。

        在IRQ EN命令執行前應執行CLR WDT命令,一旦出現WDT定時結束,IRQ引腳將保持低電平狀態直至發出CLR WDT或者IRQ DIS命令,當IRQ引腳禁止后,其輸出處于漏極開路狀態,IRQ輸出可由IRQ EN或IRQ DIS命令來使能或禁止,IRQ EN命令可以將時基發生器或WDT定時結束標志的輸出送至IRQ引腳,時基發生器及WDT配置如圖2所示。若采用片內RC振蕩器或晶振,那么,在掉電模式時會降低功耗,因為可根據系統命令啟動或關閉振蕩器。但是,在掉電模式下,時基WDT將失去基所有功能。

        圖3

        另一方面,若系統頻率源為一外部時鐘,則SYS IDS無效且不能進入掉電模式,即在選用外部時鐘源后,SD0432將持續工作直至系統斷電或去掉外部時鐘源。系統上電后,IRQ被禁止。

        3.3 語音輸出

        SD0432中還集成了一個簡單的音頻發生器,此發聲器可輸出一對不同的驅動信號至BZ和BZ以產生單查,執行TONE 4k與TONE 2k命令可選擇4khz和2khz這兩個頻率不同的音頻輸出,通過TONE ON及TONE OFF命令可打開或關閉語音輸出。語音輸出BZ和BZ是一對不同的帶驅動蜂鳴器,當系統關閉或語音輸出被禁止時,BZ及BZ處于低電平狀態。

        3.4 LCD驅動器

        SD0432是128(324)段LCD驅動器,它可設置為1/2或1/3偏置,并可通過S/W配置設置為2、3或4個公共端的LCD驅動器,這使得SD0432適合多種LCD應用。LCD驅動時鐘可從系統時鐘內產生,一般為256kHz。

        4 SD0432的命令格式及工作時序

        4.1 SD0432的命令格式

        SD0432可由S/W設置來配置。有兩種命令模式,分別用來配置SD0432和傳送LCD顯示數據。配置SD0432的命令模式(普通模式)識別碼為100,此命令模式由系統配置命令、LCD和配置命令、音頻選擇命令、定時器/看門狗定時器設置命令及操作命令組成。另一方面,數據模式包括READ、WRITE及READ-MODIFY-WITE操作。

        模式識別碼必須在數據/命令傳送前發出。當連續發出命令時,可省略命令模式識別碼即100。當系統操作處于不連續命令或不連續的地址數據模式時,CS引腳須置1且以前的操作模式將被復位。一旦CS清零,系統將首先發出一個新的操作模式識別碼。

        4.2 SD0432的工作時序

        圖3是SD0432的WRITE模式、READ模式和READ-MODIFY-WRITE模式的工作時序。

        5 SD0432與8051的接口設計

        5.1 硬件接口

        圖4所示是SD0432與單片機的硬件接口電路,可以看出,與SD0432接口只需四條線。其中CS線用以初始化串行接口電路且終止主控制器8051與SD0432的通信。若CS=1,主控制器8051及SD0432間發送的數據及命令首先被禁止進而進行初始化,在模式命令或模式轉換命令發出前,需要一高電平脈沖以初始化SD0432的串行接口;數據的讀/寫命令及命令的寫入必須通過DATA數據線。第二條RD為讀輸入,RAM內的數據在RD信號的下降沿同步被送至數據線上,以便主控制器可以在RD信號的上升沿及下一個下降沿到來期間讀入正確的數據。第三條WR為寫輸入,數據線上的數據、地址及命令可在WR信號上升沿被寫入SD0432。第四條是可選擇的IRQ線,可用作主控制器件(8051CPU)及SD0432間的接口,IRQ引腳可通過S/W設置為定時器輸出或WDT溢出標志輸出。主控制器(8051CPU)可在與IRQ相連時執行時基或WDT功能。

        圖4電路在設計時,要注意以下幾點:

        一是VLCD應小于VDD。二是調節可變電阻器VR以改變LCD偏置電壓。當VDD為5V,VLCD為4V時,R應為15kΩ20%。第三是可通過調節R(外接上拉電阻器)來適應用戶的基準時鐘。

        5.2 軟件接口程序

        (1)初始化程序

        ORG 0000H

        LJMP START

        ORG 0100H

        START: ;程序初始化

        MOV COM_REG,#COM_MODE;啟動SD0432

        MOV COM_DATA,#01H

        LCALL SD0432

        MOV COM_REG,#COM_MODE ;LCD ON

        MOV COM_DATA,#03H

        LCALL SD0432

        MOV COM_REG,#COM_MODE ;LCD 1/3偏置方式,4公共端

        MOV COM_DATA,#29H

        LCALL SD0432

        (2)SD0432與主控制器的通信子程序

        該通信子程序主要用來實現MCU與SD0432之間的通信及傳輸指令與數據,指令模式存放在COM_REG中,指令數據存放在COM_DATA中,數據地址存放在ADD_REG中,數據存放在DATA-REG中。程序中的CLK是時鐘子程序,其功能是發送時鐘信號,以便使數據傳送到SD0432中。具體的通訊子程序如下:

        SD0432:CLR CS ;啟動SD0432

        MOV R2,#03H ;發送顯示模式(3位)

        MOV A,COM_REG

        SENDMODE:NOP

        MOV C,ACC.2

        MOV SDATA,C

        LCALL CLK

        RLC A

        DJNZ R2,SENDMODE

        JNB ACC.3,SENDCOM

        MOV R2,#06H ;發送數據地址(6位)

        MOV A,ADD_REG

        SENDADD:NOP

        MOV C,ACC.5

        MOV SDATA,C

        LCALL CLK

        RLC A

        DJNZ R2,SENDADD

        MOV R2,#04H ;發送數據(4位)

        MOV A,DATA_REG

        SENDDATA:NOP

        MOV C,ACC.0

        MOV SDATA,C

        LCALL CLK

        RRC A

        DJNZ R2,SENDDATA

        JMP SENDEND

        ]SENDCOM:MOV R2,#08H

        MOV A,COM_DATA

        SENDCOM1:NOP

        MOV C,ACC.7

        MOV SDATA,C

        LCALL CLK

        RLC A

        DJNZ R2,SENDCOM1

        CLR SDATA ;發送第九位

        LCALL CLK

        SENDEND:SETB CS ;關閉SD0432

        RET

        6 結束語

        SD0432芯片具有接口簡單、無需外圍接口芯片、編程靈活等特點,同時內部具有其它LCD驅動器所不具有的看門狗(WDT)及語音輸出電路。因而可廣泛應用于儀器儀表、工業控制、條形顯示器以及控制面板等場合。



        關鍵詞: LCD SD 驅動器

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 南丹县| 莆田市| 灌阳县| 和政县| 灵川县| 无极县| 眉山市| 南汇区| 德安县| 旬阳县| 辉南县| 德保县| 安宁市| 曲松县| 乌鲁木齐市| 防城港市| 乐至县| 苍溪县| 柳江县| 大冶市| 莒南县| 屏南县| 灯塔市| 昌吉市| 利川市| 佳木斯市| 景谷| 溆浦县| 承德县| 增城市| 紫云| 昌邑市| 宁陕县| 长春市| 安化县| 嘉峪关市| 石台县| 柳江县| 新田县| 灌阳县| 汕头市|