基于ARM的LED燈綜合試驗(yàn)_第1頁(yè)
基于ARM的LED燈綜合試驗(yàn)_第2頁(yè)
基于ARM的LED燈綜合試驗(yàn)_第3頁(yè)
基于ARM的LED燈綜合試驗(yàn)_第4頁(yè)
基于ARM的LED燈綜合試驗(yàn)_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、重慶交通大學(xué)信息學(xué)院設(shè) 計(jì) 性 實(shí) 驗(yàn)報(bào)告成績(jī):班級(jí):2011級(jí)通信工程2班學(xué)號(hào):姓名:實(shí)驗(yàn)所屬課程:ARM嵌入式系統(tǒng)基礎(chǔ)教程實(shí)驗(yàn)室(中心):信息科學(xué)與工程學(xué)院軟件中心指導(dǎo)教師:實(shí)驗(yàn)時(shí)間:2013年11月1日gt - aC. Ut It一、課程設(shè)計(jì)題目基于ARM的LED燈綜合實(shí)驗(yàn)本實(shí)驗(yàn)是嵌入式系統(tǒng)基礎(chǔ) B課程的設(shè)計(jì)性實(shí)驗(yàn),可以兩人一組進(jìn) 行實(shí)驗(yàn),但每個(gè)人單獨(dú)遞交實(shí)驗(yàn)報(bào)告。同組人:9劉海東本實(shí)驗(yàn)包含三個(gè)模塊:1. 運(yùn)用LED燈進(jìn)行ASCII碼表的顯示。要求:使用8個(gè)LED燈顯示 09、az, AZ的ASCII碼的顯示。每一個(gè) ASCII碼值顯示510 秒,每一個(gè)ASCII值進(jìn)行切換時(shí),點(diǎn)亮8號(hào)L

2、ED燈。2. 運(yùn)用LED燈自由制作流水燈顯示。要求:自行設(shè)計(jì)流水燈的樣式, 但不能雷同(同組人員也不能雷同)。3. 使用按鍵功能,實(shí)現(xiàn)模塊1和模塊2之間的切換。二、題目分析1. 對(duì)使用的ARM芯片的基本情況進(jìn)行分析此次實(shí)驗(yàn)采用的實(shí)驗(yàn)箱是 MagicARM2200-S實(shí)驗(yàn)箱。MagicARM2200-S實(shí)驗(yàn)箱是由廣州周立功單片機(jī)發(fā)展有限公司開(kāi)發(fā)的 一款可使用卩C/OS-II和卩CLinux雙操作系統(tǒng)、集眾多功能于一身 的ARM教學(xué)實(shí)驗(yàn)開(kāi)發(fā)平臺(tái)。實(shí)驗(yàn)箱的主板上帶有充足的存儲(chǔ)資源 (PSRAM NAND FLASHNOR FLASHY E2PROM等),具有以太網(wǎng)接口、MODE接口、IDE硬盤接口、

3、CF卡接口、PS/2接口,5.2英寸320X 240彩色液晶屏(帶觸摸屏),可使用JTAG仿真調(diào)試。靈活的跳線 選擇(I/O 與功能電路的連接),外設(shè)PACK和 GPIO輸出接口,非常 適用于教學(xué)實(shí)驗(yàn)。有著完全自主設(shè)計(jì)的軟硬件、擁有自主版權(quán)的JTAG 仿真技術(shù),支持 ADS1.2集成開(kāi)發(fā)環(huán)境及PHILIPS所有通用ARM微 控制器的仿真和開(kāi)發(fā)。MagicARM2200-S實(shí)驗(yàn)箱的硬件電路主要由 DeviceARM2200嵌入 式工控板(即核心板)、實(shí)驗(yàn)箱主板、電源板和各種 PACK板等組成, 以下將分別說(shuō)明DeviceARM2200嵌入式工控板的硬件結(jié)構(gòu)和 MagicARM2200-S實(shí)驗(yàn)箱主

4、板各部分電路的原理設(shè)計(jì)。2. 分析LED燈、按鍵和ARM芯片的鏈接情況。MagicARM2200-S 實(shí)驗(yàn)箱主板上具有 8位動(dòng)態(tài)LED數(shù)碼管和16個(gè)按鍵,使用了 I2C接口的鍵盤與LED驅(qū)動(dòng)芯片ZLG7290進(jìn)行控 制,電路如圖1.15所示。ZLG7290是一款功能強(qiáng)大的鍵盤與LED驅(qū)動(dòng)芯片,最大支持64個(gè)按鍵及8位共陰LED數(shù)碼管。JP10可以 斷開(kāi)這一部分電路與 LPC2200的連接。ZLG7290的電源采用3.3V, 使用DeviceARM2200的nRST_OUT信號(hào)控制 ZLG7290復(fù)位,在系統(tǒng) 復(fù)位時(shí)將同時(shí)復(fù)位ZLG7290由于ZLG7290采用3.3V電源,為了提 高LED數(shù)碼

5、顯示的亮度,LED限流電阻R94R101的阻值選用220 Q。16個(gè)按鍵分別與ZLG7290的SEGA SEGB引腳連接,這樣做的 好處就是鍵盤的掃描值是連續(xù)的,即S1S16按鍵的掃描值為1 16,方便應(yīng)用程序的設(shè)計(jì)。ZLG7290的鍵盤中斷輸出信號(hào)與LPC2200 的中斷引腳 P0.30/EINT3相連,當(dāng)有按鍵按下時(shí),ZLG7290將會(huì)輸 出中斷信號(hào)通知LPC2200注意:使用鍵盤電路時(shí),要將電源跳線JP9短接,將JP10跳線器短接。三、功能設(shè)計(jì)模塊一:運(yùn)用LED燈進(jìn)行ASCII碼表的顯示。要求:使用 8個(gè) LED燈顯示09、az, AZ的ASCII碼的顯示。每一個(gè) ASCII碼值 顯示5

6、10秒,每一個(gè)ASCII值進(jìn)行切換時(shí),點(diǎn)亮8號(hào)LED燈。模塊二:運(yùn)用LED燈自由制作流水燈顯示。8個(gè)LED燈編號(hào)從左 到右依次為0,123,4,5,6,7。然后設(shè)計(jì)的流水燈樣式為編號(hào)之和為7的兩個(gè)燈同時(shí)亮,燈亮的結(jié)果顯示就是燈從兩邊向中間靠攏亮,然 后再分別向兩邊擴(kuò)散。模塊三:使用按鍵功能,實(shí)現(xiàn)模塊 1和模塊2之間的切換。四、詳細(xì)設(shè)計(jì)模塊一:運(yùn)用LED燈進(jìn)行ASCII碼表的顯示。在此模塊中,先行 設(shè)計(jì)一個(gè)ASCII碼表的顯示函數(shù),然后在主函數(shù)中調(diào)用。該函數(shù)流程 圖如下所示:開(kāi)始參數(shù)ASCII碼值m和字符數(shù)nj<m+nyesk=ji=0i<8noyesIO1CLR=DISP_TABi

7、*(k%2);k=k/2k=0noyesj+gt i aC. Ut ItnoDelayNS(10);IO1SET =Oxffffffff;IO1CLR = DISP_TAB7;DelayNS(10);IO1SET = 0xffffffff;key=0returni+結(jié)束模塊二:運(yùn)用LED燈自由制作流水燈顯示。在該模塊中采用自 編函數(shù),然后在主函數(shù)中調(diào)用。該流水燈函數(shù)流程圖如下所示:開(kāi)始定義int i,jj=7noj>=0return 0i<8J yesnoi+j=7| yes訃IO1CLR = DISP_TABi;IO1CLR = DISP_TABj;DelayNS(10);IO1

8、SET = 0xffffffff;結(jié)束nokey=1gt i aC. Ut It模塊三:使用按鍵功能,實(shí)現(xiàn)模塊1和模塊2之間的切換。該模塊采用了中斷知識(shí),采用軟件消除按鍵抖動(dòng),該部分的代碼如下:/*等待外部中斷信號(hào)恢復(fù)為高電平(若信號(hào)保持為低電平,中斷標(biāo)志會(huì)一直置位)*/while( (EXTINT&1<<3)!=0 )EXTINT = 1<<3; / 清除 EINT3 中斷標(biāo)志,1<<3 等價(jià)于 0x08for(j = 0; j < Oxfff; j+); /軟件延時(shí)消除按鍵抖動(dòng)VICVectAddr = 0; / 向量中斷結(jié)束對(duì)于按鍵key

9、的設(shè)置,采用自編函數(shù),然后在模塊一和模塊二中 的函數(shù)調(diào)用該按鍵key。整個(gè)函數(shù)流程圖如下所示:no(EXTINT &1<<3)!=0yesno key=0yesno結(jié)束在程序開(kāi)始的地方定義了全局變量key=1,此變量用于按鍵值的設(shè)置。然后在主函數(shù)中對(duì)引腳和中斷進(jìn)行設(shè)置,該部分的代碼如下:gt - aC. Ut ItPINSEL1 = Ox;IO1DIR = LEDCON; / 配置 LED 控制 I/O 方向IRQEnable(); / 開(kāi) IRQ 中斷PINSEL1 = 3<<8; /設(shè)置管腳連接,P0.20設(shè)置為EINT3/*打開(kāi)EINT3中斷(使用非向量I

10、RQ) */VICIntSelect = 0x; /設(shè)置所有中斷分配為 IRQ中斷VICDefVectAddr = (in t)IRQ_Ei nt3; /設(shè)置中斷服務(wù)程序地址EXTMODE = 0x00; / 設(shè)置EINT3中斷為電平觸發(fā)模式EXTINT = 1<<3; / 清除 EINT3 中斷標(biāo)志VICIntEnable = 1<<17; / 使能 EINT3 中斷,EINT3 在 Bit17 上nokey=1yes調(diào)用ASCII碼輸出 函數(shù)outputASCII('0',10);outputASCII('a',26);outputA

11、SCII('A',26);主函數(shù)的流程圖如下所示:開(kāi)始PINSEL 仁Ox;IO1DIR = LEDCON;IRQEnable();PINSEL1 = 3<<8;VICIntSelect=Ox;VICDefVectAddr(int)IRQ_Eint3;調(diào)用流水燈函數(shù)lsd()EXTMODE = 0x00;EXTINT = 1<<3;VICIntEnable=1<<17;return(0)結(jié)束gt i aC. Ut It五、總結(jié)1. 描述實(shí)驗(yàn)的過(guò)程首先啟動(dòng) ADS1.2 IDE集成開(kāi)發(fā)環(huán)境,使用 ARM Executable Image for

12、 MagicARM2200工程模板建立一個(gè)工程。按照要求以及為 了簡(jiǎn)化程序,采用了分模塊編寫函數(shù)、在主函數(shù)中調(diào)用的方法。然后 根據(jù)實(shí)驗(yàn)要求在在user組中的main.c中編寫主程序代碼。之后進(jìn)行 編譯,糾正錯(cuò)誤,觀察LED燈顯示的樣式,看是否符合程序要求, 若是不滿足,則進(jìn)行修改。對(duì)于模塊的切換,使用按鍵控制,通過(guò)采 用中斷和函數(shù)結(jié)合的方式,編寫后編譯糾正錯(cuò)誤。經(jīng)過(guò)多次的驗(yàn)證確 定程序無(wú)誤后向老師演示,合格后提交程序代碼。2. 記錄實(shí)驗(yàn)中遇到的問(wèn)題首先在實(shí)驗(yàn)過(guò)程中,一開(kāi)始因?yàn)閷?duì)LED燈閃爍原理不了解,結(jié) 果導(dǎo)致ASCII碼值得輸出有問(wèn)題,然后經(jīng)過(guò)和同組人員的討論以及同 學(xué)的講解,成功的解決了該

13、問(wèn)題。其次是在設(shè)計(jì)流水燈的樣式時(shí),因?yàn)樘脹](méi)用C語(yǔ)言編程,導(dǎo)致出現(xiàn)一些語(yǔ)法錯(cuò)誤以及邏輯上的錯(cuò)誤,在重新理了思緒之后找到了 錯(cuò)誤并進(jìn)行了糾正。又因?yàn)橐O(shè)計(jì)與其他同學(xué)的樣式不同, 這就增加 了一定的難度,最后在同組人員的合作下,設(shè)計(jì)出了屬于各自的流水 燈樣式。最后是兩個(gè)模塊之間的切換要使用到按鍵,一開(kāi)始對(duì)于該按鍵的使用無(wú)法與程序聯(lián)系到一起,就算指導(dǎo)書上有關(guān)于該按鍵的實(shí)驗(yàn), 但 是看不懂。因此在按鍵這個(gè)模塊花費(fèi)了很多時(shí)間。 然后有同學(xué)的講解知道了該按鍵的設(shè)計(jì)方式,但是在切換的時(shí)候依舊無(wú)效。同組人員便 在老師的講解下說(shuō)將按鍵有關(guān)的一點(diǎn)代碼移動(dòng)到函數(shù)循環(huán)內(nèi)部去, 之 后便解決了這些問(wèn)題。最主要的是實(shí)驗(yàn)室

14、的機(jī)器有很多壞的, 加上人 很多,很難找到機(jī)器進(jìn)行實(shí)驗(yàn)。3. 評(píng)價(jià)和同組人員的合作情況在此次實(shí)驗(yàn)中,和同組人員充分發(fā)揮了合作能力。不懂的地方會(huì) 一起討論,針對(duì)錯(cuò)誤會(huì)一起糾正,在討論無(wú)果后會(huì)一起去請(qǐng)教同學(xué)。 在設(shè)計(jì)流水燈的時(shí)候,雖然是我在寫代碼,但是設(shè)計(jì)樣式的時(shí)候同組 人員有提供很有建設(shè)性的建議,這對(duì)于完成實(shí)驗(yàn)有很大幫助。在按鍵 切換模塊這一模塊,對(duì)于按鍵切換無(wú)效這點(diǎn)是由同組人員請(qǐng)教老師才 成功解決的。而且,整個(gè)實(shí)驗(yàn)過(guò)程中,沒(méi)有因?yàn)榉噶撕芏噱e(cuò)誤進(jìn)行爭(zhēng) 執(zhí),合作很和諧。4. 對(duì)本次實(shí)驗(yàn)的總結(jié)與提高由于有了前幾次次實(shí)驗(yàn)操作的基礎(chǔ)和自己課后的相關(guān)練習(xí),因此在此次實(shí)驗(yàn)中,發(fā)現(xiàn)并糾正錯(cuò)誤的能力提高,對(duì)于實(shí)

15、驗(yàn)的步驟比之前 運(yùn)用的更加熟悉,對(duì)程序的理解能力也大大地提高, 整體說(shuō)來(lái)難度沒(méi) 有之前的大。主要是在創(chuàng)新設(shè)計(jì)這方面不好,因?yàn)閱问窃O(shè)計(jì)不同樣式 的流水燈這個(gè)模塊就用了很多時(shí)間,因?yàn)樵O(shè)計(jì)出的樣式是同學(xué)重復(fù)過(guò) 的。這足以體現(xiàn)我們的創(chuàng)新能力不夠高。在寫程序的時(shí)候經(jīng)常犯錯(cuò), 有時(shí)候會(huì)寫不出來(lái),這說(shuō)明我們的編程能力有待提高, 以后會(huì)增強(qiáng)練 習(xí)的。當(dāng)然,在本次實(shí)驗(yàn)操作過(guò)程中,熟悉和掌握了 MagicARM2200-S 教學(xué)實(shí)驗(yàn)開(kāi)發(fā)平臺(tái);初步學(xué)習(xí)了在實(shí)驗(yàn)中自己也有一定的收獲。 還學(xué) 了新的知識(shí),就是對(duì)于模塊間的切換。之前一直不知道 LED燈旁邊 的key鍵的作用,此次實(shí)驗(yàn)用該鍵實(shí)現(xiàn)兩個(gè)模塊的切換,并且是通過(guò)

16、寫程序來(lái)控制key對(duì)應(yīng)的功能,讓我們明白了 key鍵和程序間的關(guān)系。 在這個(gè)過(guò)程中,因?yàn)橹R(shí)的匱乏,不得不查閱了一些資料來(lái)彌補(bǔ)。通過(guò)這次課程設(shè)計(jì),提高了我動(dòng)手、思考和解決問(wèn)題的能力。平 時(shí)總是在課本上看到一些理論知識(shí),但是總覺(jué)得沒(méi)有深入到大腦中, 而且很多看不懂。此次實(shí)驗(yàn)的操作,讓我深入地了解了一些引腳、中 斷、寄存器等知識(shí),而且還可以加深對(duì)這些功能的印象。在編寫程序 的過(guò)程中,總覺(jué)得自己的思路是正確的,但是結(jié)果編譯錯(cuò)誤。這不僅 說(shuō)明了自己的編程能力不夠,也說(shuō)明了思維不夠符合邏輯,因此在糾 正錯(cuò)誤的同時(shí)也在鍛煉自己的思維能力、思考能力以及思維能力。動(dòng)手的過(guò)程是真正能學(xué)到東西的過(guò)程。比如說(shuō) GPIO控制功能, 雖然老師上課講的很詳細(xì),但是沒(méi)有自己動(dòng)手去做,沒(méi)有親自去體會(huì), 根本就沒(méi)有學(xué)到這些知識(shí)。在課堂上,可能根本就不知道 GPIO控制 怎么和LED燈的閃爍聯(lián)系起來(lái)。因此,實(shí)踐才是學(xué)習(xí)的最根本方式。 在設(shè)計(jì)流水燈樣式的時(shí)候,同學(xué)之間會(huì)有重復(fù)的,但是每個(gè)人的程序 代碼肯定是不同的,程序的簡(jiǎn)單復(fù)雜也不同,這也告訴我們思路

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論