【正文】
知道SPI采用的是串行通信協(xié)議,也就是說通信時數(shù)據(jù)是一位一位進行傳輸?shù)?。?dāng)SI的片選信號為低電平時,S1被選中,Ml通過MOSI引腳發(fā)送數(shù)據(jù),S1通過MOSI引腳接收數(shù)據(jù),或者S1通過MISO引腳發(fā)送數(shù)據(jù),而M1通過MISO引腳接收數(shù)據(jù)。SPI的通信原理。SPI通常用于DSP和外設(shè)及其他處理器之間的通信。三極管的集電極接+5V電源,基極分別接DSP的四個GPIO口5554和55。 首先,數(shù)據(jù)要利用SPI在DSP和74HC164之間進行通信。當(dāng)定時器0的中斷傳輸?shù)紺PU級后,IFR1會被置位,如果IER和INTM都被使能,那么定時器0的中斷服務(wù)子程序才會被執(zhí)行。相應(yīng)的CPU中斷標(biāo)志位置1,當(dāng)中斷標(biāo)志鎖存到標(biāo)志寄存器后。當(dāng)外設(shè)向PIE控制器發(fā)送中斷請求時,則相應(yīng)的PIE中斷標(biāo)志位(PIEIFRx,y)置位,如果相應(yīng)的PIE中斷使能位PIEIER(x,y)也置位,則PIE將檢查相應(yīng)的PIEACKx位,以確定CPU是否為該組中斷準(zhǔn)備好。但在本系統(tǒng)中,定時器0內(nèi)部的計數(shù)寄存器一旦遞減到零,就會向PIE產(chǎn)生一個中斷請求TINT,而無需經(jīng)過外設(shè)內(nèi)部的中斷位置位。對于某一個具體的外設(shè)中斷請求,只要有任意一級不許可,CPU最終都不會響應(yīng)該外設(shè)中斷。因此,TIMCLK就等于(TDDRH:TDDR+1)個系統(tǒng)時鐘的時間[3]。其中,TIMCLK由定時器分頻器TDDRH:TDDR和定時器預(yù)定標(biāo)計數(shù)器PSCH:PSC來控制。其中CPU定時器2被系統(tǒng)保留,用于實時操作系統(tǒng),例如DSP/ BIOS。 為了實現(xiàn)定時器的精確走時功能,本系統(tǒng)利用定時器0、PIE模塊和CPU中斷共同作用產(chǎn)生定時器中斷。 本程序使用的TMS320F28335型數(shù)字信號處理器是TI公司的一款TMS320C28X系列浮點DSP控制器。其工作原理是接收模擬信號,轉(zhuǎn)換為0或1的數(shù)字信號。:矩陣鍵盤上鍵有十個按鍵設(shè)定為0~9數(shù)字輸入功能,另外兩個鍵作為時間設(shè)定的控制鍵,分別為暫停,開始。輔以7段數(shù)碼管,按鍵矩陣,LED燈,74HC164芯片共同完成定時器的定時功能。,暫停后,再按下開始鍵,則從暫停的時間點繼續(xù)定時。為了實現(xiàn)定時器系統(tǒng)的主要功能,除了要有電源設(shè)備、時鐘電路、復(fù)位電路等必備設(shè)備之外,還有必不可少的數(shù)碼管及其驅(qū)動電路,為了在定時結(jié)束時、報警,必須還有LED燈,為了能夠用鍵盤控制定時器狀態(tài)和輸入時間,還需要矩陣鍵盤及其控制電路。TI公司的產(chǎn)品線中有一大塊業(yè)務(wù)是數(shù)字信號處理器(DSP)和微處理器(MCU),CCS是TI公司專門為DSP軟件工程師設(shè)計的集編譯、仿真、下載為一體的DSP開發(fā)軟件,可以通過CCS新建工程、編譯仿真工程、在線調(diào)試、下載程序。DSP微控制器用來處理定時器程序;利用DSP的SPI接口和74HC164八位串入、并出移位寄存器相連,進行串行通信,再由74HC164寄存器將段碼并行輸出給數(shù)碼管從而顯示數(shù)字;矩陣鍵盤與DSP的GPIO口相連接,以掃描的方式識別鍵值,實現(xiàn)鍵盤對定時器的控制。定時可用于照相定時曝光、定時閃光、定時調(diào)速、定時烘箱、冰箱門定時報警、定時水位報警、延時催眠器、延時電鈴、延時電子鎖、觸摸定時開關(guān)等等。 定時器的應(yīng)用隨著時代的進步,定時器的應(yīng)用越來越廣泛。其中長時段定時器最小控制時段一般為一分鐘,配上微處理器后能精確地編制一年的時間程序,組成多路可編程序的定時器。其中短時段控制的電動式定時器可用于程序控制式洗衣機、洗碗機、微波爐、烘箱及時間繼電器等。機械式定時器,以發(fā)條為原動力,用擒縱調(diào)速器控制走時精度,通過齒輪傳動和凸輪,按時間控制機構(gòu)預(yù)置的時段操縱執(zhí)行機構(gòu)動作。關(guān)鍵詞:定時器,DSP,TMS320F28335 ,串行外設(shè)接口,矩陣鍵盤AbstractWith the progress of the times and the development of electronic industry, the timer is used more and more widely. The traditional mechanical timer, electric timer is drived through the spring, AC synchronous motor or quartz stepper motor .The accuracy of this timer is not high and the error is large. Compared with the former two timer, electronic timer has small volume, light weight, low cost, high precision, long service life, and electronic timer is safety and reliability, convenient adjustment, suitable for frequent use.The topic of this design is timer design based on the DSP paper designs a timer with the core of TMS320F28335 DSP microcontroller. Generating a timer interrupt and counting retrogradely by using the internal timer 0 and PIE peripheral interrupt expansion module. Communicate between DSP and 74HC164 through the SPI serial peripheral interface, so as to achieve displaying time on the digital tube by dynamic scanning. The system is turned on and paused through the matrix keyboard. In the timer pause,initial value can be inputed through the keyboard . When the timing is over, system will alarm through LED lights flashing, prompting the end of timing.Key Words: timer ,DSP ,TMS320F28335 ,SPI, matrix keyboard目 錄1 緒論 1 1 定時器的分類 1 定時器的應(yīng)用 2 定時器系統(tǒng)概述 2 定時器設(shè)計及實現(xiàn)的功能 2 設(shè)計過程 2 定時器方案的確定 3 定時器的功能 32 定時器系統(tǒng)的硬件設(shè)計 4 總體硬件設(shè)計 4 DSP微控制器 5 6 DSP內(nèi)部定時器 6 PIE外設(shè)中斷擴展模塊 7 數(shù)碼管顯示電路 8 SPI串行外設(shè)接口 9 74HC164 12 數(shù)碼管 13 16 矩陣鍵盤的概述 16 矩陣鍵盤的硬件設(shè)計 16 按鍵接口的消抖 17 LED顯示電路 183 定時器軟件的設(shè)計 19 主函數(shù)程序設(shè)計 19 SPI的初始化 19 定時器、數(shù)碼管,按鍵及其他外設(shè)的初始化 21 定時器的初始化 21 其他外設(shè)的初始化 21 cpu中斷及其PIE的設(shè)置 22 設(shè)置定時器0的周期、打開定時器、看門狗和開中斷 22 設(shè)定定時器的周期 22 打開定時器 22 開中斷 23 開啟看門狗 23 主要功能的實現(xiàn) 23 定時器中斷子程序的設(shè)計 23 SPI通信與數(shù)碼管顯示程序的設(shè)計 24 26 核心功能的設(shè)計 294 總結(jié) 33參考文獻 34致謝 35第35頁1 緒論人類最早使用的定時工具是沙漏或水漏,但在鐘表誕生發(fā)展成熟之后,人們開始嘗試使用這種全新的計時工具來改進定時器,達到準(zhǔn)確控制時間的目的。通過SPI串行外設(shè)接口在DSP和74HC164之間進行通信,進而實現(xiàn)在數(shù)碼管上通過動態(tài)掃描顯示定時時間。相對于前兩種定時器,電子式定時器體積小、重量輕、造價低、精度高、壽命長、而且安全可靠、調(diào)整方便、適于頻繁使用。摘 要隨著時代的進步,電子行業(yè)的發(fā)展,定時器的應(yīng)用也越來越廣泛。本次設(shè)計的題目是基于DSP微控制器定時器設(shè)計。本系統(tǒng)通過矩陣鍵盤控制定時器開啟和暫停。而隨著時代的進步,科技的發(fā)展,定時器歷經(jīng)了機械式,電動式兩個階段后發(fā)展到電子式定時器。計時精度要求不高的定時器(如風(fēng)扇定時器、洗衣機定時器、廚房用定時器、照相暗房用定時器、電視機控制用定時器、電燈開關(guān)定時器),一般采用無固有振動周期的調(diào)速器。長時段電動式定時器是一種24小時或7天程序控制的開關(guān)裝置,可預(yù)置開關(guān)動作多次,最短時間控制間隔一般為15分鐘,可用于用戶用電情況監(jiān)控、照明控制、實驗室裝置控制、空調(diào)器控制和自動生產(chǎn)線上某些設(shè)備的定時控制等。電子式定時器在工業(yè)自動化控制系統(tǒng)中應(yīng)用廣泛,它也是節(jié)約能源管理中一種有效的技術(shù)措施。電子定時器在工業(yè)中經(jīng)常用于延時自動開關(guān)、定時、報警。例如數(shù)控機床的定時器,在工作一段時間后便能自動切斷電源停止工作。 定時器設(shè)計及實現(xiàn)的功能 設(shè)計過程進行定時器的設(shè)計首先就要熟悉DSP的編程環(huán)境,本次編程使用的是CCS(Code Composer Studio)軟件,具體運用的語言為C語言。 定時器方案的確定隨著DSP控制器性價比不斷提高,新一代產(chǎn)品的應(yīng)用越來越廣泛,大可應(yīng)用于復(fù)雜的工業(yè)過程控制系統(tǒng),進行復(fù)雜的數(shù)字信號處理功能,如圖像處理,雷達信號處理等,小則可以用于家電控制,甚至能夠用來做兒童電子玩具??偟膩碚f,綜合以上的各功能電路和相應(yīng)的軟件程序相結(jié)合,便能實現(xiàn)一個功能強大的多位定時器。,可以利用鍵盤上的數(shù)字鍵0~9重新設(shè)定定時時間,在按下開始鍵,則定時器開始從剛剛設(shè)置的定時時間重新開始定時。方案設(shè)計框圖如下所示:圖21 系統(tǒng)總體方案設(shè)計圖定時器工作過程如下:;“開始”鍵后,定時器開啟,數(shù)碼管顯示定時時間并進行逆行計數(shù),默認(rèn)情況下定時時間為1分鐘“暫停”鍵,則暫停計時,數(shù)碼管顯示“”;,可通過鍵盤上的數(shù)字鍵重新設(shè)定定時時間;,按下“開始”鍵則定時器按照重新設(shè)定的定時時間開始定時,若沒有設(shè)置新的定時時間,則從暫停時的時間點繼續(xù)定時。矩陣鍵盤由GPIO00~GPIO03輸入,GPIO50~GPIO53輸出。系統(tǒng)工作是通過編程選擇5倍頻的PLL鎖相環(huán)使得DSP工作在最高主頻150MHz。再對數(shù)字信號進行修改、刪除、強化,并在其他系統(tǒng)芯片中把數(shù)字?jǐn)?shù)據(jù)解譯回模擬數(shù)據(jù)或?qū)嶋H環(huán)境格式。與以往的定點DSP相比,該 器件的精度高,成本低, 功耗小,性能高,外設(shè)集成度高,數(shù)據(jù)以及程序存儲量大,A/D轉(zhuǎn)換更精確快速等。首先為定時器0設(shè)置定時初值,并開啟定時器使其計數(shù)。只有CPU定時器0和定時器1可以供用戶使用。先給定時器分頻器TDDRH : TDDR賦值,然后裝載入預(yù)定標(biāo)計數(shù)器PSCH:PSC中,每隔一個SYSCLKOUT脈沖,PSCH : PSC中的值減1。當(dāng)32位計數(shù)器寄存器TIMH:TIM中的值遞減到零時,定時器0會產(chǎn)生一個中斷TINT,并傳送給PIE, PIE外設(shè)中斷擴展模塊PIE一共可以支持96個不同的中斷,并把這些中斷分成了12個組,每個組有8個中斷,而且每個組都被反饋到CPU內(nèi)核的INT1~INT12這12條中斷線中的某一條上。圖23