基于GPIO的LED流水燈設(shè)計_第1頁
基于GPIO的LED流水燈設(shè)計_第2頁
基于GPIO的LED流水燈設(shè)計_第3頁
基于GPIO的LED流水燈設(shè)計_第4頁
基于GPIO的LED流水燈設(shè)計_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上 學(xué)生課程設(shè)計題目 基于GPIO的LED流水燈設(shè)計 姓名 蔣 娜 學(xué)號 11 系 部 電子信息工程系 專業(yè) 計算機控制技術(shù) 指導(dǎo)教師 李列文 職稱 講師 2012 年 11 月 19 日長沙師范專科學(xué)校教務(wù)處制目錄看門狗的設(shè)計摘要:根據(jù)嵌入式系統(tǒng)的具體應(yīng)用特點,應(yīng)用常規(guī)看門狗芯片設(shè)計了一種看門狗電路,在未處理氣進入休眠低功耗、編程、遠程升級維護等模式時,看門狗功能被臨時屏蔽,從而保障了這些模式的正常運行,該電路已應(yīng)用在實際系統(tǒng)中,應(yīng)用效果證明了設(shè)計的有效性。關(guān)鍵詞:看門狗;低功耗;嵌入式系統(tǒng)1 設(shè)計內(nèi)容1.1 設(shè)計目的 看門狗的設(shè)計是為了實現(xiàn)一種靈活配置、多復(fù)位輸出的

2、看門狗電路(且復(fù)位時間可調(diào)),實現(xiàn)了在系統(tǒng)被復(fù)位前做好重要自愿的備份工作以滿足具體的應(yīng)用需求。1.2 設(shè)計意義 隨著電子系統(tǒng)朝規(guī)模大、體積小、速度快等特點發(fā)展,關(guān)于看門狗電路的設(shè)計也層出 不窮,以降低成本和空間,意法半導(dǎo)體退出一款看門狗定時器芯片STWD100,提供多種配置規(guī)格,超時設(shè)定包括3.4ms,6.3ms,102ms或者1.6s,另外還通過增加一個芯片使能輸入接口,以實現(xiàn)當微處理器在系統(tǒng)編程或系統(tǒng)開機期間防止自動生成復(fù)位信號,為開發(fā)人員控制和管理應(yīng)用提供了更好的靈活性。2 設(shè)計方案2.1 設(shè)計要求通常,硬件看門夠只能監(jiān)測微處理器是否正?!扒骞贰?,卻不能監(jiān)測軟件是否工作正常,特別是任務(wù)功

3、能十分正常,因此,此設(shè)計提出了一種軟件看門狗的設(shè)計思路,對軟件任務(wù)在執(zhí)行時間上進行時間約束利定時器對軟件任務(wù)計時,當任務(wù)的執(zhí)行時間超過了最大指定時間,將這個任務(wù)所使用的資源釋放,也就是將這個任務(wù)復(fù)位,等待下一次的執(zhí)行,以彌補或克服硬件看門狗電路的不足。2.2 提出的問題“看門狗”原理如圖1所示。工作正常的微處理器以T0周期頻率向看門狗電路發(fā)送復(fù)位信號即“喂狗”信號,防止其產(chǎn)生復(fù)位信號。當出現(xiàn)異常時,微處理器沒有發(fā)送喂狗信號的時間超過T1(通常,T1大于T0),即無法完成“喂狗”任務(wù),看門狗電路因“饑餓”而輸出復(fù)位信號,強制重啟微處理器,使其重新進入正常循環(huán)狀態(tài)。3 看門狗電路的設(shè)計圖2是一種基

4、于看門狗IC設(shè)計的一種嵌入式系統(tǒng)看門狗電路圖。 圖中WDI是來自微處理器的喂狗信號;MR是看門狗芯片的手動復(fù)位輸入端;WDO是看門狗芯片的超時輸出端;RST是芯片的復(fù)位信號輸出;S1是手動復(fù)位按鈕;J1是跳線; 該電路的工作狀態(tài)時序圖,如圖3所示。在T0時刻之前,S1處于閉合導(dǎo)通狀態(tài),看門狗芯片的RST輸出低電平,復(fù)位微處理器。在T0T1時刻,由于來自微處理器的WD端輸出周期性的矩形波,其周期小于看門狗電路的復(fù)位時間,看門狗電路RST輸出高電平。不會復(fù)位微處理器。在T1T2時刻,由于微處理器不再輸出清狗信號,即WDI保持低電平,引起看門狗芯片的WDO端輸出低電平,復(fù)位微處理器,此為看門狗電路正

5、常工作狀態(tài)。在T2T3時刻,為微處理器正常工作階段,按照設(shè)定的頻率發(fā)送喂狗信號,WDI端輸出矩形波,防止看門狗芯片的WDO端輸出低電平復(fù)位微處理器。在T3T4時刻,嵌入式系統(tǒng)需要改變工作狀態(tài),微處理器將進入在線編程、升級維護、休眠模式等模式時,先把V設(shè)置為高電平,然后進入相應(yīng)的運行模式,此時,微處理器講不會輸出周期性的清狗信號。在T4時刻后,當V為高電平,看門狗芯片的WDO輸出低電平。4 軟件設(shè)計4.1 程序清單/* * 文 件 名:main.功 能:運行WDT,并控制LED1-LED8顯示輸出。程序開始先對LED1-LED8閃爍控制,并進行喂 * 狗處理;然后只點亮LED1,并進入死循環(huán),等

6、待WDT復(fù)位。 * 說 明:將跳線器JP23短接,JP15全部斷開。 */ #include "config.h" #define LEDCON 0x00ff0000; /* * 名 稱:WdtFeed() * 功 能:看門狗喂狗操作。 * 入口參數(shù):無 * 出口參數(shù):無 */ void WdtFeed(void) WDFEED = 0xAA; WDFEED = 0x55; /* * 名 稱:DelayNS() * 功 能:長軟件延時,具有喂狗功能。 * 入口參數(shù):dly 延時參數(shù),值越大,延時越久 * 出口參數(shù):無 */ void DelayNS(uint32 dly)

7、uint32 i; for(; dly>0; dly-) for(i=0; i<1000; i+)WdtFeed(); /* * 名 稱:main() * 功 能:初始I/O口及WDT,然后開始先對LED1-LED8閃爍控制,并進行喂狗處理; * 然后只點亮LED1,并進入死循環(huán),等待WDT復(fù)位。 * 說 明:如果將程序燒寫到FLASH運行,WDT復(fù)位后程序會重新開始; */ int main(void) uint8 i; IO2DIR = LEDCON; WDTC = ; / 設(shè)置WDTC,喂狗重裝值 WDMOD = 0x03; / 復(fù)位并啟動WDT WdtFeed(); / 進

8、行喂狗操作 for(i=0; i<8; i+) IO2SET = 0x00ff0000; DelayNS(50); IO2CLR = 0x00ff0000; DelayNS(50); IO2SET = 0x00ff0000; IO2CLR = 0x; while(1); return(0);5 心得體會本次設(shè)計使我學(xué)到了很多的知識,相信對我以后的發(fā)展打下了良好的基礎(chǔ),不管是硬件的動手能力和軟件的編寫能力都有很大的提升。本次的設(shè)計是基于ARM7的看門狗模塊的設(shè)計。這個芯片和我以往接觸的C51系列和MSP430系列單片機都要復(fù)雜的多。不管是對寄存器的設(shè)置還是底層的開發(fā)都是龐大的工程。做完這個模塊的開發(fā),使我對ARM7系列的寄存器的使用和啟動印象深刻,這對以后開發(fā)類似的程序模塊打下堅實的基礎(chǔ)。在軟件的編寫和設(shè)計中,讓我更一步了解了ADS1.2編譯環(huán)境。學(xué)好這個軟件就是學(xué)好了一個使用的應(yīng)用技能6 參考文獻1 劉發(fā)志,張東,楊艷等,基于DM642的看門

溫馨提示

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

最新文檔

評論

0/150

提交評論