基于TMS320LF2407A控制的SED1335液晶顯示方案
0 引言
本文引用地址:http://www.104case.com/article/21243.htm隨著電子產品向智能化,小型化方向的發展,lcd(液晶顯示器)模塊逐漸被廣泛應用于對體積和顯示模塊功耗有較高要求的各種便攜式智能型儀器儀表領域。dsp(數字信號處理器)以其優化的硬件結果、高效的指令系統、靈活的編程能力等優點,使其在高速實時系統中得到了廣泛的應用。本文以信利(truly)公司生產的采用sd1335控制芯片lcd模塊msp-g320240為例,給出了一種使用dsp取代傳統的單片機實現與sed1335的接口應用及軟硬件設計方案。
1 硬件設計
1.1 tms320lf2407a的特點
tms320lf2407a芯片作為dsp控制器24x系列的新成員,是tms320c2000平臺下的一種定點dsp芯片,也是目前tmsc2000家族中集成度高,性能最強的芯片[1],它與現存的24xdsp控制器芯片代碼兼容,但是資源更加豐富、功能更強,其特點是:采用高性能靜態cmos技術,使得供電電壓將為3.3v,減小了控制器的功耗,40mips(百萬條指令每秒)的執行速度使得指令周期縮短到25ns,從而提高了控制器的實時控制能力,片內有32kb的flash程序存儲器,高達1.5kb的數據/程序ram,544b雙口ram(dram)和2kb的單口ram(saram)。tms320lf2407a芯片集成了16通道10位500ns的高性a/d轉換器;can2.0模塊;串行通信接口(sci)模塊,16位spi(串行外部設備接口)模塊,wd(看門狗)定時器模塊,基于pll(鎖相環)的時鐘發生器,高達41個可單獨編程和復用的gpio(通用輸入/輸出)引腳,5個外部中斷(2個驅動保護、復位和2個可屏蔽中斷),電源管理具有3種低功耗模式等。并且,tms320lf2407a具有2個事件管理器模塊eva和evb,每個事件管理器包括:2個16位通用定時器,8個16位pwm(脈寬調制)通道,可以實現三相反相器控制、pwm的中心或邊緣校正,當外部引腳pdpintx出現低電平時快速關閉pwm通道,防止擊穿故障的可編程的pwm死區控制,對外部事件進行定時捕捉的3個捕獲單元,片內光電編碼器接口電路,如此功能強大使得tms320lf2407a大大簡化了外部硬件電路的設計。
1.2 sed1335的性能特點
sed1335是seikdepson公司出品的lcd控制器,具有較強功能的i/o緩沖器,指令功能豐富,4位數據并行發送,在同類產品中是功能最強大的,sed1335硬件結構可分為mpu接口、控制部分和驅動lcm部分,結構如圖1所示。

sed1335的軟件功能非常強,共有14條指令,且多數指令都帶有若干參數,參數值由使用者根據需要設置[2],dsp訪問sed1335首先將指令代碼寫入指令緩沖器(a=1),隨后將該指令所需參數按順序通過數據輸入緩沖器(a=0)寫入相應的功能寄存器內。sed1335指令代碼既可設置功能位、又是參數寄存器的選通碼。除了sleep in指令,csrdir指令,csrr指令和mread指令外,所有的指令執行都將在其參數的輸入完成后。sed1335控制部擁有一個內部字符發生器,具有160種5×7點陣字體的字符,控制部能分區管理64kb的顯示存儲器,可以同時管理3個或4個顯示區,并同時管理自定義字符發生器。
1.3 硬件接口電路
sed1335控制部是sed1335的核心,主要作用是接收主機的指令和數據,產生相應的時序及數據來控制lcd模塊,tms320lf2407a與sed1335的接口電路如圖2所示,其中d0-d7為數據中線,wr為寫選通信號,rd為讀選通信號,cs為器件選通信號,rst為復位信號,a0決定是數據還是指令,vo為lcd驅動電壓,tms320lf2407a是3.3v電源器件,而mspg320240是5v電源供電,所以它們不能直接相連。

2 軟件設計
2.1 訪問i/o空間的方法
由于tms320lf2407a的速度最高可達到40mips,而seed1335的晶振頻率在1m赫茲到10m赫茲之間,所以dsp全速訪問sed1335是不可行的,解決的方法有2種:一種是可以設置dsp中的等待狀態寄存器wsgr,通用增加等待狀態的方法解決2個器件的速度匹配問題,另一種是在每一條指令間加入一定的延時,一般為1μs為以上,把sed1335地址放在tms320lf2407a的i/o空間,所以必須知道如何訪問它訪問dsp的i/o空間為匯編語言中有專門的指令,從程序的可移植性和通用性方面考慮,選用c語言編程有極大的優越性,這里介紹如何在c語言編譯環境ccs2.2(c2000)中訪問dsp的i/o空間,在ti公司針對24xx系列dsp的優化c語言中有一個關鍵字ioport,可以在c語言環境中方便訪問i/o空間,具體定義如下:


2.2 初始化sed1335
初始化的作為是根據lcd結構對lcd模塊進行參數設置,因為參數設置是根據lcd模塊的結構來決定的,所以同一種類lcd模塊的參數設置基本上大同小異[3]。對于msp――g320240,下面給出它的system set和scroll參數,system set指令是sed1335的軟件初始化指令,該指令有8個參數;scroll指令用來設置顯示ram區的起始地址及所占有的顯示行數,該指令有10個參數,這2條指令參數設定值為:system set:0x30,0x87,0x07,0x28,0x2f,0x0f0,0x28,0x00;scroll:0x00,0x00,0x0f0,0x00,0x40,0x0f0,0x00,0x80,0x00,0x00。
2.3 液晶顯示方案
sed1335可顯示文本、圖形和字符。顯示特性有些區別,但是實質上是一樣的,都是對lcd屏上特定的區域寫入相關的數據,這些數據以數組的形式事先建立在程序的開頭處,在現實這些漢字、字符與圖形時把數據寫入顯示ram中,軟件流程見圖3,具體顯示特性和顯示合成方式通過設置ovlay指令確定。

評論