基于TMS320F2812的人機接口設計_第1頁
基于TMS320F2812的人機接口設計_第2頁
基于TMS320F2812的人機接口設計_第3頁
基于TMS320F2812的人機接口設計_第4頁
基于TMS320F2812的人機接口設計_第5頁
已閱讀5頁,還剩56頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于tms320f2812的人機接口設計摘要本課題主要介紹了基于tms320f2812芯片的鍵盤輸入和lcd顯示輸出的軟硬件實現方案,對tms320f2812硬件資源和相應外設進行了詳細的介紹。同時以實際事例分析了dsp與液晶、鍵盤的接口技術,以及軟件的編程方法。程序采用c語言進行設計,充分顯示了tms320f2812對于外設的強大控制能力。關鍵字:dsp;接口;lcd顯示;鍵盤human-machine interface design based on tms320f2812abstractthe hardware based on tms320f2812 and software sys

2、tem about the keyboard input and lcd display was introduced in this paper, the hardware resourses and corresponding perpherals were introduced detailedly. simultaneously, the interface technology of dsp was introduced, such as: liquid crystal display technology, keyboard input technology. the softwa

3、re was designed by c language, fully demonstrated the powerful controllability of tms320f2812.keywords: dsp; interface; lcd display; keyboard目錄1.緒論11.1引言11.2液晶顯示及其控制驅動與接口概述21.3人機接口的發展前景42.系統概述62.1tms320f281x處理器功能概述62.2seed-dps2812m簡介72.3lcd液晶顯示接口資源詳細介紹7 2.3.1點陣液晶顯示接口信號82.3.2t6963c的特點及資源93.系統功能框圖183.

4、1seed-dps2812m開發模板系統功能框圖183.2顯示系統的組成194.鍵盤輸入與顯示輸出的軟件實現204.1ccs編程環境介紹204.1.1 ccs介紹204.1.2 ccs軟件設置214.1.3 ccs軟件設置錯誤排查214.1.4 ccs組件234.1.5硬件仿真和實時數據交換234.2鍵盤輸入的軟件實現244.3液晶顯示的軟件實現265.結論295.1鍵盤輸入測試305.1.1鍵盤輸入主流程圖305.1.2鍵盤掃描流程圖315.1.3程序運行結果315.2液晶顯示輸出測試335.2.1液晶顯示主流程圖335.2.2漢字顯示程序流程圖345.2.3液晶顯示程序結果356.總結37

5、7.致謝388.主要參考文獻399.附錄4010.外文資料翻譯601.緒論1.1引言傳統的信號處理或控制系統采用模擬技術進行設計和分析,處理設備和控制器采用模擬器件實現。自20世紀60年代以來,數字信號處理器(digital signal processing, dsp)日漸成為一項成熟的技術,并在多項應用領域逐漸替代了傳統模擬信號處理系統。隨著信息化技術的發展和數字化產品的普及,從消費電器到工業設備,從民用產品到軍用器材,嵌入式系統被應用到網絡、手持通信設備、國防軍事、消費電子和自動化控制等各個領域,作為數字信號處理領域的嵌入式處理器得到了廣泛應用,與模擬信號處理系統相比,數字信號處理技術及

6、設備具有靈活、精確、抗干擾能力強、設備尺寸小、速度快、性能穩定和易于升級等優點,所以目前大多設備采用數字技術設計實現,這已成為當前的發展趨勢。大多數數字信號處理系統離不開人機交互,系統在運行時需要操作者的干預(對系統進行輸入)以及系統對干預作出響應(系統輸出)。數字信號處理的實現是以數字信號處理理論和電子計算機技術為基礎的,利用計算機或專用的處理設備,以數值計算的方式對信號進行采集、變換、綜合、估計與識別等加工處理,從而達到提取信息和便于應用的目的。在實際應用中,所有的信號都是模擬信號,為實現數字信號處理,用戶必須將模擬信號轉換成數字信號。模擬信號是連續的變量,它包括聲音強度、壓力、光強度等。

7、如果需要使用計算機或其他的處理器實現對語音信號的數字處理,必須對其進行數字化。因為dsp具有快速計算的特點,所以具有廣泛的應用潛力。在電視會議系統里,大量應用dsp器件,視聽機器也都應用dsp。隨著科學技術的發展,將會出現許許多多的dsp新利用領域。1.2液晶顯示及其控制驅動與接口概述液晶顯示lcd(liquid crystal display),是利用液晶材料在電場作用下發生位置變化而遮蔽/通透光線的性能制作成的一種重要平板顯示器件。通常使用的lcd器件有tn型(twist nematic,扭曲向列型液晶)、stn型(super tn,超扭曲向列型液晶)和tft型(thin film tra

8、nsistor,薄膜晶體管型液晶)。tn、stn、tft型液晶,性能依次增強,制作成本也隨之增加。tn和stn型常用作單色lcd。stn型可以設計成單色多級灰度lcd和偽彩色lcd,tft型常用作真彩色lcd。tn和stn型lcd,不能做成大面積lcd,其顏色數在218種以下。218種顏色以下的稱為偽色彩,218種及其以上顏色的稱為真彩色。tft型可以實現大面積lcd真彩顯示,其像素點可以做成0.3mm 左右。tft-lcd技術日趨成熟,長期困擾的難題己獲解決:視角達170,亮度達500cd/m2(500尼特),顯示器尺寸達101.6cm(40in),變化速度達60幀/s。進行lcd設計主要是

9、lcd的控制/驅動和與外界的接口設計??刂浦饕峭ㄟ^接口與外界通信、管理內/外顯示ram,控制驅動器,分配顯示數據;驅動主要是根據控制器要求,驅動lcd進行顯示。控制器還常含有內部ascii 字符庫,或可外擴的大容量漢字庫。小規模lcd設計,常選用一體化控制/驅動器;中大規模的lcd設計,常選用若干個控制器、驅動器,并外擴適當的顯示 ram、自制字符ram或rom字庫??刂婆c驅動器大多采用低壓微功耗器件。與外界的接口主要用于lcd控制,通常是可連接單片機mcu的8/16位ppi并口或若干控制線的spi串口。顯示ram 除部分samsung器件需用自刷新動態sd- ram外,大多公司器件都用靜態

10、sram。嵌入式人機界面中常用的lcd類型及其典型控制/驅動器件與接口如下:段式lcd,如ht1621(控/驅)、128點顯示、4線spi接口;字符型lcd,如hd44780u(控/驅)、2行8字符顯示、4/8位ppi接口;單色點陣lcd,如sed1520(控/驅)、61段16行點陣顯示、8位ppi接口,又如t6963c(控)+t6a39(列驅)+t6a40(行驅)、64064點雙屏顯示、8位ppi接口;灰度點陣lcd,如 hd66421(控/驅)、160100點單色4級灰度顯示、8位ppi接口;偽彩點陣lcd,如ssd1780(控/驅)、104rgb80點顯示、8位ppi或3/4線spi接口

11、;真彩點陣lcd,如hd66772(控/源驅)+hd66774(柵驅)、176rgb240點顯示、8/9/16/18位ppi接口、6/16/18動畫接口、同步串行接口;視頻變換lcd,如 hd66840(crt-rgbcd-rgb)、720512點顯示、單色/8級灰度/8級彩色、4位ppi接口??刂乞寗悠骷墓╇婋娐?、驅動的偏壓電路、背光電路、振蕩電路等構成 lcd控制驅動的基本電路。它是lcd顯示的基礎。lcd與其控制驅動、接口、基本電路一起構成lcm(liquid crystalmodule,lcd模塊)。常規嵌入式系統設計,多使用現成的lcm做人機界面;現代嵌入式系統設計,常把lcd及其

12、控制驅動器件、基本電路直接做入系統。整體考慮,既結構緊湊,又降低成本,并且有利于減少功耗、實現產品小型化??刂苐cd顯示,常采用單片機mcu,通過lcd部分的ppi或spi接口,按照lcd控制器的若干條的協議指令執行。mcu的lcd程序一般包括初始化程序、管理程序和數據傳輸程序。大多數lcd控制驅動器廠商都隨器件提供有匯編或c語言的例程資料,十分方便程序編制。1.3人機接口的發展前景隨著數字化進程的加速,更多的數字消費類產品中都采用了dsp。在激光影音產品中涉及到音、視頻的編碼和多制式的解碼技術領域的,大量采用dsp技術?;赿sp的數字相機,mpeg4類數字播放器新產品,將掀起新的消費高潮。

13、即便是在傳統白色家電中,dsp應用也在深入進行,如數字變頻應用已由空調延伸到冰箱和洗衣機。通信仍然是dsp最大的應用市場。在無線通信應用中,手機終端無疑都有dsp核心,而2.5g和3g終端的發展將仰賴dsp平臺,其中包括智能手機。同時,無線基礎設施亦離不開高性能dsp,新一帶無線交換機和基站將會因采用更低功耗的dsp而縮小空間易于裝備。在寬帶網絡應用上,從局端到接入端設備,dsp無處不在。 雖然在計算機中cpu仍是主角,但在一些嵌入式應用中dsp已經在發揮作用,比如作為影像加速器、實時媒體編解碼器、嵌入式調制解調器等。在某些場合的應用中,集成有risc處理器的dsp平臺已經可以勝任主處理器的工

14、作,體現出通信與計算機應用的融合。dsp推動了嵌入式指紋識別的應用,并已取得了長足進展。dsp平臺的持續創新及所表現出的高性能和低功耗特色,是這一技術應用于市場歷經十多年而發展不衰的源泉。dsp在數字控制中的應用也有很大發展。在工業變頻器中,dsp所占比例在逐年增加。更多的dsp微控制項目不但會圍繞工業應用,而且將拓展到健身器材,醫療器械,電子識別等新的市場。展望未來,dsp技術將在公共場所和企事業應用中、嵌入式應用、日常生活領域中占有更廣闊的發展空間。不難想象,隨著dsp技術的高速發展,諸如網絡相機,全數字化家電,便攜式數字監控產品將可以進入家庭。語音識別、人臉識別、虹膜識別,車載移動電話設

15、備等新興dsp嵌入技術將更快、更好的用于工業領域。dsp技術將會進入到一個更為迅速發展的新時代。在人機設備控制中,目前最常用的就是ti公司的tms320f281x,得益于其強大的功能與適中的價格,281x成為在工業控制中的首選dsp,比如在電力公司的項目中,281x就占據了主導地位。除此之外,就像上面所述的那樣,在各種數碼產品中甚至也會出現dsp的影子,目前已知了在一些品牌的mp3播放器中就以經理用到了dsp的相關技術?;诖耍藱C交互就變得更加重要,人機界面逐漸體現出它必要的一方面,從某種意義上講,甚至能夠左右人們對設備的操作習慣,因此一個好的人機接口設計,對任何設備、產品來說都是不無裨益的

16、。相信在未來的嵌入式領域、控制領域中,dsp和人機接口技術所占的地位與比重將會越來越大。2.系統概述2.1tms320f281x處理器功能概述tms320f281x系列dsp(數字信號處理器)是ti公司最新推出的數字信號處理器,該系列處理器是基于tms320c2xx內核的頂點數字信號處理器,是目前控制領域最先進的處理器之一。其頻率高達150mhz,大大提高了控制系統的控制精度和芯片處理能力。與f24x系列數字信號處理器相比,f281x系列數字信號處理器提高了運算的精度(32位)和系統的處理能力(達到150mips)。該系列數字信號處理器還集成了128kb的flash存儲器,4kb的引導rom,

17、數學運算表以及2kb的otp rom,從而大大改善了引用的靈活性。整合平臺的高性能dsp內核、flash存儲器、高精確度模擬外設、數字控制及通信外設等,為用戶提供了高性能控制的解決方案。tms320f2812芯片基于c/c+高效32位tms320c28x dsp內核,并提供浮點數學函數庫,從而可以在定點處理器上方便地實現浮點運算。在高精度伺服控制、可變頻電源、ups電源等領域廣泛應用,同時是電機等數字化控制產品升級的最佳選擇。tms320f2812 dsp集成的128kb的閃存,可用于開發及對現場軟件進行升級時的簡單再編程。優化過的事件管理器包括脈沖寬度調制(pwm)產生器、可編程通用計時器,

18、以及捕捉譯碼器接口等;該器件還包括12位模數轉換器(adc),吞吐量每秒可達16.7mb的采樣,其雙采樣裝置可實現控制環路的同步采樣。片上標準通信端口可為主機、測試設備、顯示器及其他組件提供簡便的通信端口,為電機及其他運動控制領域應用的實現提供了良好的平臺。此外代碼和指令與f24x系列數字信號處理器完全兼容,從而保證了項目或產品設計的可延續性,簡化了產品升級工作。2.2seed-dps2812m簡介seed-dps2812m是在seed-dps2812基礎上,根據用戶的要求,專為電力監控而設計、開發的高性能低成本dsp電力應用系統解決方案,并照顧發展的需要,在保證各種應用性的基礎上,還兼具良好

19、的擴展性。其上包括:高性能的32位定點dsp:tms320f2812,128k16-位高速flash(具有加密功能,更好地保護開發者的知識產權),18k16位0等待sram,2路異步串口,1路can總線,及多達56個通用i/o引腳。外擴有:存儲器:最大 512k16-位的高速 sram;參數存儲:帶56字節nvram 的實時時鐘、spi 接口的 eeprom(最大 128k8-位);輸入/輸出:12-路10v/5v(可選)模擬輸入、4-路10v/5v(可選)模擬輸出、48 路 i/o及功能擴展口線、12864lcd 接口、44 鍵盤、8位數據及 3位地址總線擴展;接口通信接口:10m以太網接口

20、、保留的i/o口線可使用戶方便的實現rs485/rs232/can/spi等多種形式的通訊;seed-dps2812m結構緊湊,布局合理,外部接口信號根據信號特點合理劃分,提高了模板的穩定性、及抗干擾的能力。在 seed-dps2812m中主要集成了dsp、sram、片外d/a、片外a/d、uart、串行eeprom、rtc實時時鐘、工業以太網等外設。這樣使其能夠應用在電力系統繼電保護和電力測量方面。2.3lcd液晶顯示接口資源詳細介紹在seed-dps2812模板上提供一個點陣液晶顯示接口,用于與帶t6963c控制器的240128點陣的lcd接口,以顯示圖形和字符等信息。2.3.1點陣液晶顯

21、示接口信號點陣液晶顯示接口包含下列信號:db7:0數據總線,8位。ce:片選信號。c/d:命令/數據選擇信號。rd:讀信號。we:寫信號。reset:復位信號。a:背光,發光二極管陽極。接+5vk:背光,發光二極管陰極。fs:字符顯示方式選擇:1:68點陣模式,0:88點陣模式。接地vee:lcd偏置電壓vcc:電源,+5vgnd:地lcd背光采用發光二極管,a為陽極,k為陰極,seed-dps2812中,a直接接+5v電源k則由xf控制達林頓三極管來實現對地的通/斷,從而達到控制lcd背光燈的亮滅。對于點陣lcd液晶顯示接口來說,對其的讀/寫訪問通過1個8位的命令口和1個8位的數據口進行。在

22、seed-dps2812中,將lcd液晶顯示接口分配在f2812的zone0空間中,占用2個地址單元:0x00,2a00,lcd液晶顯示接口的數據口:0x00,2a01,lcd液晶顯示接口的命令口。2.3.2t6963c的特點及資源t6963c的特點:n t6963c是點陣式液晶圖形顯示控制器;n t6963c的字符字體由硬件設置,在seed-dps2812中固定使用88字體;n t6963c的占空比可從1/16到1/128;n t6963c可以圖形方式、文本方式及圖形和文本合成方式進行顯示,以及文本方式下的特征顯示,還可以實現圖形拷貝操作等等;n t6963c具有內部字符發生器

23、cgrom,共有128個字符t6963c可管理64k顯示緩沖區及字符發生器cgrom。t6963c的指令集t6963c 的指令可帶1個、2個參數或無參數。每條指令的執行都是先送入參數,再送入指令代碼。每次操作之前最好先進行狀態字檢測。t6963c狀態字如下所示:sta7sta6sta5sta4sta3sta2sta1sta0sta0:指令讀寫狀態1 準備好0忙sta1:數據讀寫狀態1準備好0忙sta2:數據自動讀狀態1準備好0忙sta3:數據自動寫狀態1準備好0忙sta4:未用sta5:控制器運行檢測可能性1可能0不能sta6:讀屏/拷貝出錯狀態1出錯0正確sta7:閃爍狀態檢測

24、1正常顯示0關顯示由于狀態位的作用不一樣,因此執行不同指令必須檢測不同狀態位。在 dsp一次讀、寫指令和數據時,sta0和sta1要同時有效,即處于“準備好”狀態。當dsp讀、寫數組時,判斷sta2或sta3狀態。屏讀、屏拷貝指令使用sta6。sta5和sta7反映t6963c內部運行狀態。.1指針設置指令指針設置指令格式如下:d1d200 100n2 n1n0d1、d2為第一和第二個參數,后一個字節為指令代碼,根據 n0,n1,n2的取值,該指令有三種含義(n0,n1,n2不能有兩個同時為1)d1d2指令代碼 功能水平位置(低7位有效)地址(低5位有效)低字節垂直位置(低5位有

25、效)00h高字節21h(n0=1) 光標指針設置22h(n1=1) cgram 偏置地址設置24h(n2=1) 地址指針位置n 光標指針設置d1表示光標在實際液晶屏上離左上角的橫向距離(字符數),d2表示縱向距離(字符行)。n cgram偏執地址寄存器設置設置了cgram在顯示64k ram內的高5位地址。n 地址指針設置設置將要進行操作的顯示緩沖區(ram)的一個單元地址,d1、d2為該單元地址的低位和高位地址。.2顯示區域設定指令顯示區域設定指令格式如下:d1d201 0000 n1n0根據n1,n0的不同取值,該指令有四種指令功能形式:n1 n0d1d2指令代碼功能00低字

26、節高字節40h文本區首址01字節數00h41h文本區寬度(字節數/行)10低字節高字節42h圖形區首址11字節數00h43h圖形區寬度(字節數/行)文本區和圖形區首地址對應顯示屏上左上角字符位或字節位,修改該地址可以產生卷動效果。d1,d2分別為該地址的低位和高位字節。文本區寬度(字節數行)設置和圖形區寬度(字節數行)設置用于調整一行顯示所占顯示ram的字節數,從而確定顯示屏與顯示ram單元的對應關系。t6963c硬件設置的顯示窗口寬度是指t6963c掃描驅動的有效列數。需說明的是當硬件設置68字體時,圖形顯示區單元的低6位有效,對應顯示屏上61顯示位。.3顯示方式設置指令顯示方

27、式設置指令格式如下:無參數10 00n3n2 n1n0n3字符發生器選擇位1選擇cgram,字符代碼為00hffh。0選擇cgrom,由于cgrom字符代碼為00h7fh。因此選用80hffh字符代碼時,將自動選擇cgram。n2:0:合成顯示方式控制位,其組合功能如下表:000邏輯“或”合成001邏輯“異或”合成011邏輯“與”合成100文本特征當設置文本方式和圖形方式均打開時,上述合成顯示方式設置才有效。其中的文本特征方式是指將圖形區改為文本特征區。該區大小與文本區相同。每個字節作為對應文本區的每個字符顯示的特征,包括字符顯示與不顯示,字符閃爍及字符的“反白”顯示。通過這種方式,t6963

28、c可以控制每個字符的文本特征。文本特征區內,字符的文本特征碼由一個字節的低4位組成,即:d7 d6d5d4d3d2 d1 d0 t3t2 t1 t0d3:字符閃爍控制位1閃爍0不閃爍d2:0:顯示效果選擇000正常顯示101反白顯示011禁止顯示,空白啟用文本特征方式時可在原有圖形區和文本區外用圖形區域設置指令另開一區作為文本特征區,以保持原圖形區的數據。顯示緩沖區可劃分如下:單屏結構:圖形顯示區文本特征區文本顯示區cgram(2k).4顯示開關指令顯示開關指令格式如下:無參數10 01n3n2 n1n0n3:圖形顯示控制1圖形顯示啟用0圖形顯示禁止n2:文本顯示控制1文本顯示啟

29、用0文本顯示禁止n1:光標控制1光標顯示啟用0光標顯示禁止n0:光標閃爍控制1光標閃爍啟用0光標閃爍禁止.5光標形狀選擇指令光標形狀選擇指令格式如下:無參數10 100n2 n1n0光標形狀為8點(列)n行,n的值為07。.6數據自動讀/寫方式設置指令數據自動讀寫方式設置指令格式如下:無參數10 1100 n1n0該指令執行后,mpu可以連續的讀寫顯示緩沖ram的數據,每讀寫一次,地址指針自動增1。自動讀寫結束時,后須寫入自動結束命令以使 t6963c退出自動讀寫狀態,開始接受其它指令。n1、n0組合功能如下:n1 n0 指令代碼功能 00 b0h自動寫設置 01

30、b1h自動讀設置 1* b2h/b3h自動讀、寫結束.7數據單次讀/寫方式指令數據單次讀/寫格式如下:d11 100 0n2 n1n0d1為需要寫的數據,讀時無此數據。n2 n1 n0指令代碼 功能000c0h 數據寫,地址加1001c1h 數據讀,地址加1010c2h 數據寫,地址減1011c3h 數據讀,地址減1100c4h 數據寫,地址不變101c5h 數據讀,地址不變.8屏讀指令屏讀指令格式如下:無參數1 110 00 00該指令將屏上地址指針處文本與圖形合成后顯示的一字節內容數據送到 t6963c的數據幀內,等待mpu讀出。地址指針應為圖形區內設置。2.3

31、.2.2.9屏拷貝指令屏拷貝指令格式如下:無參數1 110 10 00該指令將屏上當前地址指針(圖形區內)處開始的一行合成顯示內容拷貝到相對應的圖形顯示區的一組單元內,該指令不能用于文本特征方式下或雙屏結構液晶顯示器的應用上。.10位操作指令位操作指令格式如下:無參數1 111 n3n2 n1n0該指令可將顯示緩沖區某單元的某一位清零或置 1,該單元地址當前地址指針提供。n3=1置1,n3=0清零。n2n0:操作位,對應該單元的d0d7位。3.系統功能框圖3.1seed-dps2812m開發模板系統功能框圖圖3.1 dps2812m系統框圖seed-dps2812m系統主要包含兩

32、部分,如圖3.1所示,分別為seed-dps2812m的硬件系統與相應的測試軟件。相應的測試軟件包括以下幾個部分:dsp 對片外 sram 的操作示例;n 外部 d/a 的操作示例;n 外部 a/d 的操作示例;n dsp 片內外設 sci 的操作示例;n dsp 片內外設 can 的操作示例;n eeprom 的操作示例;n rtc 的操作示例;n 以太網的操作示例;n dido 的操作示例;n lcd 的操作示例;n 鍵盤的操作示例;n flash 的操作示例;3.2顯示系統的組成顯示系統由dsp控制器、lcd控制器和lcd顯示屏組成,如下圖所示:dsp控制器lcd控制器lcd顯示屏圖3.

33、2 顯示系統組成4.鍵盤輸入與顯示輸出的軟件實現4.1ccs編程環境介紹4.1.1ccs介紹可編程dsp芯片的開發需要一整套完整的軟、硬件開發工具。通常,dsp芯片的開發工具可以外為代碼生成具和代碼調試工具兩大類。代碼生成工具的作用是將用c語言、代數語言、匯編語言或兩者的混合語言編寫的dsp程序編譯、匯編并鏈接成為可執行的dsp程序,代碼生成工具主要包括:c編譯器、匯編器和鏈接器等。此外,還有一些輔助廠具程序,如文件格式轉換程序、庫生成和文檔管理程序等。1999年,ti推出了code composer studio,即ccs集成開發環境.ccs的出現是dsp開發軟件的一次革命性的變化。ccs集

34、成的源代碼編輯環境,使程序的調試與修改更為方便;ccs集成的代碼生成工具,使開發設計人員不必在dos窗口鍵入大量的命令及參數;ccs集成的調試工具,使程序調試一目了然,大量的觀察窗口使程序調試與修改得心應手。更為重要的是,ccs加速和增強了實時、嵌入信號處理的開發過程,提供了配置、構造、調試、跟蹤和分析程序的工具,在基本代碼產個工具的基礎上增加了調試和實時分析的功能。開發設計人員可在不中斷程序運行的情況下查看算法的對錯,實現對硬件的實時跟蹤調試,從而大大縮短了程序的開發時間。設計編輯原文件生成代碼調試分析圖4.1 ccs軟件調試流程4.1.2ccs軟件設置在安裝ccs軟件之后運行ccs軟件之前

35、。需首先運行ccs設置程序。ccs設置程序用于建立ccs集成開發環境與目標板或simulator之間的通信接口。ccs軟件集成了ti公司的simulator和emulator的驅動程序,用戶可以直接使用ti的仿真器進行開發調試。如果用戶使用的不是ti的仿真器,則要安裝相應仿真器的驅動程序。ccs是一個開放的環境,通過設置不同的驅動完成對不同環境的支持。4.1.3ccs軟件設置錯誤排查當ccs設置程序設置不正確時,ccs將不能正常運行。以下是兩種可能出現的錯誤提示:1 .you are attempting to start code composer with no boards. pleas

36、e enter the setup program and select appropriate hardware.運行code composer stepu程序,system configuration欄中將發現my system下提示“system needs a board”,這是因為在系統配置中需要一個以上的目標板和處理器。如果有硬件仿真器,則將仿真器安裝到系統中。這樣,就可以使用ccs的軟件仿真功能了。2 .can not initialize target dsp. target initialization failed.check target power and jtag c

37、onnection. i/o point=出現這種情況可能有以下一些原因:(1)目標dsp的i/o設置有誤n 目標dsp被設置到一個無效的i/o地址,應確保目標板上的dip跳線設置與ccs設置程序設置的i/o地址一致。n 目標板上的i/o地址有沖突,確保計算機中沒有其他硬件占用此i/o端口。使用windows控制而板可以查看是否存在此類沖突。(2)ccs設置程序設置有誤n ccs設置程序中設置的驅動程序不正確,應確保ccs設置程序中選擇的驅動程序就是所使用仿真器的驅動程序。n 多處理器配置不正確,請查看設置程序的在線幫助。n ccs設置程序與ccs執行程序不在同個目錄下 應確保二者位于同日錄下

38、。(3)目標dsp設置有誤n 應確保dsp芯片不處于“hold”或“reset”狀態并被正確加電。n 目標處理器應處于“ready”狀態以執行調試程序。如果在“ready”狀態出現硬件故障,可嘗試讓處理器處于微計算機模式并重新運行調試程序。在微計算機模式下,所有的存儲器存取均在片內進行且“ready”信號線不起作用。n 目標處理器的hold引腳應處于釋放狀態。n 為保證在仿真器和目標dsp之間提供高質量的信號,仿真頭和處理器之間。n 距離不應超過6英寸(1英寸254cm),否則應加緩沖。n 在電路和時鐘模式下檢查處理器的時鐘,處理器應接收和產生正確的時鐘信號。n emu0/1引腳通過上拉電阻置

39、為高電平。4.1.4ccs組件(1)代碼產生工具。(2)ccs集成開發環境(integrated developing environment,ide)。(3)dspbios(basic input and output system)插件及api(application program interface)函數。(4)rtdx(real time data exchange)插件、主機(host)接口及api函數。4.1.5硬件仿真和實時數據交換ti dsp芯片提供片上仿真支持,使ccs能控制程序運行并實時監視程序活動。主機與目標dsp通信是通過個jtag接口來完成的,這種連接方式對dsp目

40、標系統的實時性能沒有太大的影響。仿真器提供與主機通信的jtag接口,評估板則提供板上的jtag仿真接口。片上仿真硬件提供以下功能:n 運行、停止或復位dsp芯片;n 將代碼和數據加載到dsp芯片;n 檢查dsp中寄存器和存儲器;n 檢查硬件指令或數據相關的斷點;n 各種計算功能,包括精確到指令周期的剖切(profiling)功能;n 提供主機和目標dsp間的實時數據交換。ccs軟件支持這些片上仿真功能,而更為重要的是,ccs的rtdx功能使主機和dsp之間能雙向實時通信。rtdx提供一個實時和連續的可視環境,使開發者能看到dsp應用程序工作的真實過程。rtdx允許系統開發者在不停止運行目標應用

41、程序的情況下在計算機和dsp芯片之間傳輸數據,同時還可在主機上利用對象鏈接嵌入(ole)技術分析和觀察數據。這樣可以提供給開發者一個真實的系統工作過程,從而縮短開發時間。4.2鍵盤輸入的軟件實現seed-dps2812模板上配備了4路鍵盤掃描輸出和4路鍵盤掃描輸入,可外接一個44鍵盤,測試板上采用45的薄膜開關用來測試鍵盤接口,測試中只需用到左上角的16個鍵即可。鍵盤的測試過程測試過程如下:1. 將keyboard目錄拷貝到ccs集成開發環境下的myprojects目錄下;2. 在ccs中調用projectopen命令,加載keyboard目錄下seed-dps2812-keyboard.pj

42、t;3. 在ccs中用fileload gel.命令,加載keyboard目錄下的f2812.gel;4. 在ccs中用fileload program.命令,加載keyboarddebug目錄下的seed-dps2812-keyboard.out;5. 在ccs中用debuggo main命令,執行程序到c的main()函數處;6. 在ccs中用viewwatch window命令,打開變量視窗,點擊watch1頁面,輸入save_keyvalue和a,save_keyvalue是一個數組,用來保存鍵值,a為輸入鍵值的個數。7. 運行程序,輸入鍵值,刷新watch window,觀察數組sa

43、ve_keyvalue和變量a的變化。例如:輸入1、5、6三個鍵值,然后刷新得如下結果。圖4.2 鍵盤測試圖例4.3液晶顯示的軟件實現lcd的測試f2812片上有1個lcd液晶顯示接口,cpu為t6963c。lcd的測試過程lcd的測試過程如下:1. 將dps2812-lcd目錄拷貝到ccs集成開發環境下的myprojects目錄下;2. 在ccs中用projectopen.命令,加載dps2812-lcd目錄下的dps2812-lcd.pjt;3. 在ccs中用fileload gel.命令,加載dps2812-lcd目錄下的f2812.gel;4. 在ccs中用fileload progr

44、am.命令,加載dps2812-lcd目錄下的dps2812-lcd.out;5. 在ccs中用debuggo main命令,將程序執行到c的入口函數main()處;6. 按下圖設置斷點,按f5運行程序,可以在lcd上看見“液晶”兩個字。圖4.3 液晶顯示測試圖例5.結論程序測試用到了上面介紹過的開發設備,這里給出全部測試平臺圖。從圖中可以看到開發板分別連+5v、+26v和gnd,白色的盒子是仿真器,通過jtag接口和usb分別連接到板子和電腦上。連接完畢后接通電源,按上一章說明的步驟進行操作。圖5.1 測試平臺5.1鍵盤輸入測試5.1.1鍵盤輸入主流程圖系統初始化中斷初始化周期中斷中定時掃描

45、用戶代碼設定,開周期中斷i/o口初始化圖5.2 鍵盤測試主流程圖初始化系統包括:u 屏蔽看門狗u 配置pll和外設時鐘u 寄存器設置u 設置i/o口初始化中斷包括:u 屏蔽cpu中斷,清cpu中斷標識u 初始化pie中斷控制u 初始化pie矢量表5.1.2鍵盤掃描流程圖電源開延時掃描輸入?顯示輸入有無圖5.3 鍵盤掃描程序流程圖5.1.3程序運行結果圖5.4 鍵盤測試結果測試心得和遇到的問題及分析:其中利用到了掃描的特點來實現對外設輸入的檢測,cpu每隔20毫秒掃描一次是否有輸入,沒有則循環進行,有則將其顯示。此外某些按鍵在程序運行中是無效的,就是說在實際運行過程中并不是用到了所有的按鍵,后來

46、參考測試說明并經過多輪測試后得出,應該是軟件程序中定義的只是一部分而已。測試說明中表明只需用到16個鍵即可,實際上或許并沒有定義這么多,在查看器中能夠觀測到的也只有9個按鍵鍵值的變化。5.2液晶顯示輸出測試5.2.1液晶顯示主流程圖系統初始化開始pie控制寄存器初始化lcd初始化lcd清屏lcd寫光標lcd清光標lcd漢字顯示圖5.5 主程序流程圖示5.2.2 漢字顯示程序流程圖開始設置要顯示漢字的點陣數據設置要顯示漢字的行設置要顯示漢字的列設置要顯示漢字的行設置要顯示漢字的位置寫入漢字點陣修改漢字點陣在lcd中的位置結束圖5.6漢字顯示程序流程圖5.2.3 液晶顯示程序結果初始程序顯示結果如

47、下:圖5.7初始程序顯示結果程序個性化修改后顯示結果如下:圖5.8 修改后顯示結果液晶顯示的一些調試心得:液晶調試程序很正常,達到了預期結果。在點陣式液晶顯示器上顯示漢字,一般按圖形的方式來顯示,漢字調用在字庫中的編號進行顯示。經過字模工具分解漢字,已成功在lcd上顯示出“北方工業大學電氣傳動研究室”字樣。6.總結本次實驗好的經驗在于它提供了一個良好的鍛煉機會,對硬件的大致特性,系統運行的流程,軟件實現原理以及各種分析方法等等都是一次很好的了解機會。更具體一點來說,設計時候對于資料的查詢,知識的理解,問題的解決等能力都是一個磨練。不足之處在于對實驗的創新方面不是很好,受制于能力所限并沒有對實驗

48、加以延伸,比如對程序稍作修改以增加功能等等。此外對現有手頭所有的資料的理解還不完全透徹,所以在實際中還是可能會造成理解上的誤差的。不過總的來說這次的實驗是成功的,也達到了預期的目標,比如像程序運行結果也都進行得十分順利,效果也比較好。7.致謝在整個畢業設計的過程中,首先我要感謝的是我的指導老師周京華老師,周老師在各方面都對我予以了很大的幫助,像在相關資料的查找和聯系設備廠家上都花了不少時間,在此對周老師的幫助以誠摯的謝意!另外還要感謝喬森師兄,對我的論文的寫作和注意要求等給予了專業性的講解,在平時也都及時解決我提出的每一個問題,甚至占用了自己做實驗的時間,這里也對師兄予以感謝!8.主要參考文獻

49、1蘇奎峰、呂強、耿慶鋒、陳圣儉編著;tms320f2812原理與開發;北京:電子工業出版社;2006.32張雄偉;dsp芯片的原理與開發應用;北京:電子工業出版社;19973劉和平;tms320lf240x dsp結構、原理及應用;北京:北航出版社;20024何詠、馬孝江、王永剛;基于dsp的人機接口技術;機床與液壓;2004.no.11;p1101125朱宇翔、程明霄、李明;基于dsp的液晶顯示器的軟硬件設計及實現;微型機與應用;2005年第2期;p15176texas instruments. literature number. sp rs 174n april 2001 revised

50、 may 2006. tms320f2810, tms320f2811, tms320f2812, tms320c2810, tms320c2811, tms320c2812 digital signal processors data manual9.附錄附錄1:鍵盤測試主程序#include dsp28_device.hinterrupt void scan(void);void keyvalue(unsigned int k);unsigned int save_keyvalue9 = 0,0,0,0,0,0,0,0,0;unsigned int a,k,x;unsigned int f

51、lag9 = 0,0,0,0,0,0,0,0,0;void main(void)a = 0;x = 0;/初始化系統initsysctrl();/關中斷dint;ier = 0x0000;ifr = 0x0000;/初始化pie initpiectrl(); /初始化pie中斷矢量表initpievecttable();/初始化cputimerinitcputimers();/設置timer0中斷入口地址 eallow; pievecttable.tint0 = &scan;edis;configurecputimer();setport(); /使能中斷 piectrl.pieier1.bit.intx7 = 1;/*使能cputimer0中斷*/ /啟動cputimer0startcputimer0();/*開中斷*/ier |= m_int1;eint; /使能intmertm;for(;)if(x != 0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論