




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
qr京誨詳大學(xué)《嵌入式系統(tǒng)》設(shè)計報告學(xué)生姓名Adao(學(xué)號)所在學(xué)院 數(shù)學(xué)與計算機學(xué)院所在班級 計科1141指導(dǎo)教師成績TOC\o"1-5"\h\z課程設(shè)計目的 1系統(tǒng)分析與設(shè)計 1系統(tǒng)結(jié)構(gòu)圖 1\o"CurrentDocument"原理圖 2實現(xiàn)過程 2實驗效果 3代碼分析 4系統(tǒng)測試出現(xiàn)的問題和解決的方案 5系統(tǒng)優(yōu)缺點 5心得體會 6參考文獻 6雙按鍵控制流水燈系統(tǒng)開發(fā)課程設(shè)計目的本次課程設(shè)計目的主要是對之前所學(xué)習(xí)的STM32的某個實驗進行更深入的學(xué)習(xí)與了解,弄懂引腳,端口等相關(guān)的配置,對實驗原理和具體實現(xiàn)有一定的理解,能做到自己通過原理圖和使用庫函數(shù)等把功能實現(xiàn)出來。我選擇的是EXTI-外部中斷實驗并加以整合,具有一定實用功能的系統(tǒng),可以對外提供服務(wù)。系統(tǒng)分析與設(shè)計本課程設(shè)計所定義的系統(tǒng)主要功能為,通過兩個按鍵KEY1(PA0)、KEY2(PC13)可以實現(xiàn)對流水燈進行同步控制,即一個開關(guān)控制產(chǎn)生的燈的狀態(tài)可以被另一個開關(guān)去改變,按鍵控制需要對兩個按鍵的端口,引腳等進行相關(guān)配置,并在兩個引腳的中斷服務(wù)程序中完成對流水燈狀態(tài)同步控制的操作。本還想通過使用SysTick(系統(tǒng)滴答定時器)功能對流水燈進行精確定時,但由于時間比較匆促,最終沒有實現(xiàn)。系統(tǒng)結(jié)構(gòu)圖main流水燈按鍵引卿配置 中斷服務(wù)程序圖3-1系統(tǒng)結(jié)構(gòu)圖4.原理圖5.實現(xiàn)過程5.實現(xiàn)過程1、 GPIO的輸入模式有上拉輸入模式、下拉輸入模式、浮空輸入模式和模擬輸入模式。GPIO中的每個引腳可以通過配置端口配置寄存器來配置它的模式。每個引腳的模式由寄存器的4個位控制。上拉/下拉輸入模式:1000浮空輸入模式:0100模擬輸入模式:00002、 STM32的所有GPIO都可以用作外部中斷源的輸入端°STM32的中斷由中斷控制器NVIC處理。STM32的中斷向量具有兩個屬性,一個為搶占屬性,另一個為響應(yīng)屬性,其屬性編號越小,表面它的優(yōu)先級別越高。搶占屬性會出現(xiàn)嵌套中斷。3、 編寫NVIC_Configuration()函數(shù)配置NVIC控制器的函數(shù)。4、 調(diào)用GPIO_EXTILineConfig()函數(shù)把GPIOA、Pin0和GDIOC、PIN13設(shè)置為EXTI輸入線。5、 填寫EXTI的初始化結(jié)構(gòu)體,然后調(diào)用EXTI_Init()把EXTI初始化結(jié)構(gòu)體的參數(shù)寫入寄存器。編寫EXTI_PA0_Config()函數(shù)完成各種需要的初始化。6、 在啟動文件中找到對應(yīng)的中斷服務(wù)函數(shù)的名字,然后編寫中斷函數(shù)。6.實驗效果圖6-1按鍵前效果圖圖6-2按鍵后效果圖代碼分析u8_flag1=1; /*定義控制標(biāo)志1*/u8_flag2=1; /*定義控制標(biāo)志2*/while(1)(if(_flag1==_flag2)(LED1_ON;}else(LED1_OFF;}}兩個控制標(biāo)志分別受兩個按鍵控制,只有兩者相等時則流水燈才可以進行工作。按鍵中斷服務(wù)程序,完成標(biāo)志位的修改voidEXTI0_IRQHandler(void)(if(EXTI_GetITStatus(EXTI_Line0)!=RESET)〃確保是否產(chǎn)生了EXTILine中斷(//LED1開關(guān)修改標(biāo)志位if(_flag1==1)(_flag1=0;}else(_flag1=1;}EXTI_ClearITPendingBit(EXTI_Line0);//清除中斷標(biāo)志位}}voidEXTI15_10_IRQHandler(void)(if(EXTI_GetITStatus(EXTI_Line13)!=RESET)//確保是否產(chǎn)生了EXTILine中斷(//LED1開關(guān)修改標(biāo)志位if(_flag2==1)(_flag2=0;}else(_flag2=1;}EXTI_ClearITPendingBit(EXTI_Line13); //確保是否產(chǎn)生了EXTILine中斷}}系統(tǒng)測試出現(xiàn)的問題和解決的方案問題一是,中斷服務(wù)程序忘記編寫,整合的過程中頭文件沒有定義相關(guān)的函數(shù),external全局變量編寫代碼過程中出現(xiàn)函數(shù) implicitdeclarationoffunction‘EXTI_PC13_Config()’isinvalidinC99的警告。原因是所引入的頭文件中缺少對相應(yīng)函數(shù)的聲明,在所包含的頭文件中添加相關(guān)函數(shù)的聲明即可。一個源文件需要引用另一個源文件中定義的全局變量需要在自身源文件的開頭使用external聲明。問題二是,在編寫KEY2(PC13)的中斷服務(wù)程序后,發(fā)現(xiàn)按下KEY2時,燈并沒有熄滅,經(jīng)檢查,原來是voidEXTI_PC13_Config(void)里的staticvoidNVIC_Configuration()函數(shù)配置的NVIC_InitStructure.NVIC_IRQChannel還是KEY1的中斷源,最后我選擇不再編寫兩個staticvoidNVIC_Configuration()函數(shù),只寫一個,通傳參的不同來區(qū)別是到底是KEY1的還是KEY2的中斷源請求,從而作出相應(yīng)的響應(yīng)。系統(tǒng)優(yōu)缺點本系統(tǒng)的優(yōu)點是在單按鍵的基礎(chǔ)上做了一點小小的創(chuàng)新,可以實現(xiàn)雙按鍵開關(guān)同步控制,使得不同位置的兩個開關(guān)都可以控制流水燈的狀態(tài)。缺點是while(1)里需要判斷標(biāo)志位的改變與否,效率稍微降低了一點。心得體會課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程。隨著嵌入式技術(shù)在日常生活中的地位日益凸顯,這對我們這些學(xué)習(xí)有關(guān)網(wǎng)絡(luò)以及計算機專業(yè)的學(xué)生來說既是一種挑戰(zhàn),又是一個難得的機會。通過這次嵌入式的課程設(shè)計讓我們初步了解了STM32庫開發(fā)的方便性和強大性,掌握了一些編程能力,與此同時,我還學(xué)到了一些專業(yè)知識之外的東西,激發(fā)了我濃厚的興趣,這對將來的學(xué)習(xí)是很有幫助的。這次課程設(shè)計不僅考察了我們對課堂上所學(xué)專業(yè)知識的理解程度,也鍛煉了我們的動手能力。提高了我們獨立思考文理,解決問題的能力。總體上看,我覺得這次課程設(shè)計是我自身的知識豐富了不少,但同時也發(fā)現(xiàn)了自己的不足之處。例如在動手方面,和知識融合方面,不能與實踐相結(jié)合。軟件操作不夠熟練,不能靈活運用。是我了解要先學(xué)好理論知識才能很好地與實踐相結(jié)合,才能熟練地運用到生活中,希望以后的學(xué)習(xí)生活中在這些方面能夠做到更好。參考文獻劉火良
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工智能算法法律規(guī)制構(gòu)建研究
- 鈦石膏鈣鐵-鈣硫分離與在PVC中應(yīng)用工藝研究
- 網(wǎng)絡(luò)聘用合同范本
- 音樂達人合作合同范本
- 濰坊裝修合同范本
- 家政服務(wù)員四級習(xí)題
- 買租廠房合同范本
- 銷售警示標(biāo)識合同范本
- 2025年軋鋼導(dǎo)衛(wèi)裝置合作協(xié)議書
- 科技創(chuàng)新能力與企業(yè)盈利能力的關(guān)系研究
- 2024年互聯(lián)網(wǎng)金融客服培訓(xùn)中的法律知識教學(xué)
- 高鐵隧道勞務(wù)分包合同范本(2篇)
- GB/T 44826-2024生物制造丙交酯
- 老舊小區(qū)電梯更新改造方案
- 某醫(yī)院食堂餐飲服務(wù)投標(biāo)方案(技術(shù)方案)
- 中小河治理工程監(jiān)理規(guī)劃(城鄉(xiāng))
- 多發(fā)性硬化診斷與治療指南(2023版)解讀
- 2024新版(外研版三起joinin)三年級英語上冊單詞帶音標(biāo)
- 工程質(zhì)量控制流程圖
- 現(xiàn)代家政導(dǎo)論-課件 1.2.2認識現(xiàn)代家政的特點和功能
- 汽車保險與理賠課件 3.4認識新能源汽車車上人員責(zé)任保險
評論
0/150
提交評論