單片機STM32試驗報告_第1頁
單片機STM32試驗報告_第2頁
單片機STM32試驗報告_第3頁
單片機STM32試驗報告_第4頁
單片機STM32試驗報告_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

實驗報告名級號師蔣昭立電科1601課程名稱:單片微機原理與車載系統(tǒng)名級號師蔣昭立電科1601學(xué)生班學(xué)指導(dǎo)2018年12月17日

實驗1GPIO實驗實驗?zāi)康?)熟悉MDK開發(fā)環(huán)境;2)掌握STM32單片機的GPIO使用方法。實驗設(shè)備一臺裝有Keil和串口調(diào)試軟件的計算機;2)一套STM32F103開發(fā)板;3)STlink硬件仿真器?;緦嶒瀮?nèi)容1)熟悉MDK開發(fā)環(huán)境,參考《STM32F1開發(fā)指南(精英版)-寄存器版本_V1.0》第3章,安裝MDK并新建test工程,運行例程,在串口窗寬觀察結(jié)果,并記錄如下:從圖片可以看出,例程運行成功,沒有錯誤。組心羋 「|/Viuan他口uainc?c!iaifaPMs-a組心羋 「|/Viuan他口uainc?c!iaifaPMs-aIhlft9ej!U^Ewfc'S-.-二dirtu|F-_dimlJllLta?h<EH.。STMiffl(h.lWUb-IVSIlMtaJ冊—4lJhtm口uw4(-EjUURUmre1.c□irfmUIgU口ijrafipw.rtmNHtac□PT?二TnJx二u工ug、i:,."3PT0二 -CFTOfpi■工dSGWHi,(;P1O-Inxt:(G?IC?SMPWIn±e3?w?ui3g二NrimSEC4r時恒JinjSjrGr1口二ZnxcScx3rww.GF工口二9±a'--3工Q_將PKiIfiiE3EmeTti7*Fj-2)按鍵輸入實驗,《STM32F1開發(fā)指南(精英版)-寄存器版本_V1.0》第8章。實現(xiàn)功能:3個按鈕(KEY_UP、KEY0和KEY1),來控制板上的2個LED(DS0和DS1)和蜂鳴器,其中KEY_UP控制蜂鳴器,按一次叫,再按一次停;KEY1控制DS1,按一次亮,再按一次滅;KEY0則同時控制DS0和DS1,按一次,他們的狀態(tài)就翻轉(zhuǎn)一次。理解連續(xù)按概念及其實現(xiàn)代碼。參數(shù)mode為0的時候,KEY_Scan函數(shù)將不支持連續(xù)按,掃描某個按鍵,該按鍵按下之后必須要松開,才能第二次觸發(fā),否則不會再響應(yīng)這個按鍵,這樣的好處就是可以防止按一次多次觸發(fā),而壞處就是在需要長按的時候比較不合適。當(dāng)mode為1的時候,KEY_Scan函數(shù)將支持連續(xù)按,如果某個按鍵一直按下,則會一直返回這個按鍵的鍵值,這樣可以方便的實現(xiàn)長按檢測。寄存器方法實現(xiàn)不支持連續(xù)按的關(guān)鍵代碼,以及程序運行后的效果。

由程序可知,給KEY_Scan函數(shù)輸入的值為0,為不支持連按模式。飛一77按遑理不一笑至臂"技術(shù)支持:www.openedv.conli0(X31-52ie17isis20li0(X31-52ie17isis20Stra.32Clacklnit(9)?..系釬紀■尹設(shè)專delay^inix后打; 〃鬼Bf初始化LZD_lELtO; ”航站花與LED連接的硬件接口BEEP_Imt[); 〃初庭在旺百器域□KEYJaxtO; ”初始化與技鍍連揍的55件揍口LEDO*uI "光點亮空燈vhile(1)21廣:(23 lre7"PX^_Sc*n(0>; 〃得莖灌不23 ifCie*?)24; \2S srwlcchIkey)24El (” 於口號WKUEPRE5:;£’攔言.?暮嗎器Z8 BSEP-!BE:EP;29 break;30 aajeKEYW_PRE5:〃控制LEM)翻軾31 LEDO-!LEDO;32 breat;33 caseKEYl^FRES;,,投,.ZEDJL翻轉(zhuǎn)34 IXD1?!LED1;35 bE&&lc:3? caseREYO_PRESt〃同時拄糊jLEDC,LEM甄轉(zhuǎn)37 LEDO-rLEDO?99 L£B1^*LED1:35 break;40 )41 )elsedelay_m3(X0>;^2 14m}寄存器方法實現(xiàn)支持連續(xù)按的關(guān)鍵代碼,以及程序運行后的效果。由程序可知,給KEY_Scan函數(shù)輸入的值為1,為支持連按模式。utl3?尸”utl3?尸”£七32_匕工白亡匕_1十上t(£|:d*la^_init(72)}LED_Iriit();BEEP_Init();KKTTnit():ITDO=.;while(1J〃先苴亮燈rtkey.hM〃虹工EKTEK哉軀STIU2開盤權(quán)實驗3一技捷軸入實驗$J技術(shù)支持iwv,op?uerfv.gm門廣州內(nèi)星翼電子科技有限公司mtmain(vo.id)〃菜就時鐘設(shè)過〃強時初始住〃旬宿化與L£D連揍的硬件塞口〃初始it豌叫翳確口〃布始比與接縫連接的廢井接口kty-KEYS&an{11-事婪苒[直士門匕;)switch,上>.聿放母菖器G”W?<UP_FfiES:

BE£r=!aEEP;.聿放母菖器匕HEak;-e.aeKEY2FRES:LEM=!岳叫匕£*&k;caseKEYl_JflE5:控法.LEM幃轉(zhuǎn)LED1"!LEHj上工噌士上;—.KEYJFRES: 司時齊二;LE::,LEM賓廷LEDC=!IXDO;LED1=?LED1;仁工之jk;3)采用庫函數(shù)方法實現(xiàn)按鍵輸入實驗,參考《STM32F1開發(fā)指南(精英版)-庫函數(shù)版本_V1.0》第8章。庫函數(shù)實現(xiàn)不支持連續(xù)按的關(guān)鍵代碼,以及程序運行后的效果。由程序可知,給KEYScan函數(shù)輸入的值為0,為不支持連按模式。

Jkey-t_Jtrit.*£f3.include"key<h":〃£4BHTRKjg電lenu3開發(fā)便實船5e〃按神翊入實驗〃技術(shù)支持:www-openedv.uomJ,L用丙是冠電子科技青愛公司jlflcoiaxn(vo工d〉uEJtwy-"j:rr.322:l--ck二t.二匚』,〕:deiay_iniT:廣二”LED_LnitH:BEEF_Imc():KEi_initu:LED0°.:uhile(1>”系統(tǒng)時鐘設(shè)置”延時初始比〃列始比與LED連摟的硬件莊”系統(tǒng)時鐘設(shè)置”延時初始比〃列始比與LED連摟的硬件莊□//初始化痛鳴器??凇俺跏蓟c按厘逢夠的硬蚌接口“先點亮遼力switch(key)caaeNKnP_FRES:『?控二.’班省招SEEP-1SEEPrtreat;caseKE¥2_PRES;"控明LEDO和話LEKj^rLZDO;creaK;ces?KEY1_FRES;『『控乎,1工朝祥LEDl'-!LED!;bceakrcaseKEY<jERE5:「司時E3=.L£0.??工E。.可轉(zhuǎn)LED1"!LEQlrB^eak;Jelsedelaymsj#;庫函數(shù)實現(xiàn)支持連續(xù)按的關(guān)鍵代碼,以及程序運行后的效果。由程序可知,給KEY_Scan函數(shù)輸入的值為1,為支持連按模式。u93cey=;u93cey=;⑷:〃系皖時針設(shè)置"延醒柘始化“朝始化與LED逐排的展序猥口“初始化蟀鳴懸鴕口"召始出與按潼連接的屈件援口〃先點亮紅燈€find..:J*_ti-7療ALIEKEK戰(zhàn)/57?式開發(fā)報宴器Ja〃技提知人實驗9〃技術(shù)支持二WKW-optnediTrcottAQ〃L州市星翼電孑科技有限公司LiLHCIL3IB^VCildJStmlS_ClGClr^Imtde-lay_lHit("2);LED_Imt(k:aE.EF_IniT;();KLY_Iha^(k;LE.&Q=;曰y=KE^_Scant); /,'=全盤逋if信1](key!caseWKUF_PRE5: 丈7三金士雪3EEF-'5EEF;bcsakr-K£Y2_FH£fi,,控刷LEDQ的轉(zhuǎn)LEDO-FLE^OJbreafcrcaseKEYLPRZSi〃控制LEDL四,LEDl-rLEDl;tzeak?CMCKEIO_PRES:“同時控耐IX口口,LEIH翻轉(zhuǎn)LtDQ*1LEOO;LEDl-rLEDI;break;Idelay_ms(i1.4創(chuàng)新實驗內(nèi)容在1.3實驗步驟的基礎(chǔ)上,通過修改代碼,實現(xiàn)如下功能:1)按下任意一個按鍵,蜂鳴器響x下后停止,然后DS0閃爍y次,DS1閃爍z次(x、y、z分別為你學(xué)號的末3位的數(shù));由我學(xué)號最后三位為119,所以蜂鳴器響1下后停止,然后DS0閃爍1次,DS1閃爍9次。

器計數(shù)500ms之后,程序?qū)⑻鲅h(huán),去執(zhí)行定時器里面的程序,實現(xiàn)DS1的反轉(zhuǎn)二器計數(shù)500ms之后,程序?qū)⑻鲅h(huán),去執(zhí)行定時器里面的程序,實現(xiàn)DS1的反轉(zhuǎn)二步由*T-H二工UpdateMMHi□CORE田U.FM通r:一CJJDMI■」ilhA由HU口aVAilE實驗2定時器實驗2.1實驗?zāi)康?)理解定時器工作原理;2)掌握STM32定時器的使用方法。實驗設(shè)備一臺裝有Keil和串口調(diào)試軟件的計算機;一套STM32F103開發(fā)板;STlink硬件仿真器。基本實驗內(nèi)容1)定時器中斷實驗,參考6TM32F1開發(fā)指南(精英版)-庫函數(shù)版本_V1.0》第13章,利用TIM3的定時器中斷來控制DS1的翻轉(zhuǎn),在主函數(shù)用DS0的翻轉(zhuǎn)來提示程序正在運行。通過本例程,理解定時器中斷原理,記錄關(guān)鍵代碼,寫出定時器中斷過程:開始程序會一直執(zhí)行死循環(huán)里面的代碼,讓LED0不斷的亮然后熄滅來提示程序正在運行。當(dāng)計數(shù)。運時號」中r段各程序■■■:i (viz-lij.nt (void)ulE1edOp1";uartinir;(_1S2<j.nt (void)ulE1edOp1";uartinir;(_1S2<j); .,聿口*二赤化,為工:父1、LED_In±t(); OLED端口初里化TlM3_FWM_Init(---')); ,■不一底-P誦1?傳方「三匚二二GF審波while(1)2)PWM輸出實驗,參考《STM32F1開發(fā)指南(精英版)-庫函數(shù)版本_V1.0》第14章,使用TIM3的通道2,把通道2重映射到PB5,產(chǎn)生PWM來控制DS0的亮度。通過本例程,理解定時器PWM輸出功能的使用方法,記錄關(guān)鍵代碼,寫出STM32定時器PWM輸出實現(xiàn)過程:本實驗通過重映射復(fù)用功能,將TIM3的通道2,把通道2重映射到PB5引腳,通過PWM的高低電平來控制DS0的亮度,電平為高電平時為亮,低電平時為熄滅,由主函數(shù)的程序可以看出,隨著led0pwmval的數(shù)越大,PWM輸出的占空比就越大,此時燈就越亮?!筸amiJtin^r.CAiAJAftii4*■***!*■.?*■tkAttfrfl+■■*■高■1■■AL工EUTEFn塞二三松五三£P(guān)WM瑜出實驗技術(shù)支持工www,openedif,com海寶店鋪:sard.taobao.ecm關(guān)注截信公眾平臺簟信號,例正點痍子3廣州巾星武電子科技有猥公司作者t正點原字VALIEirrEKdelay_ir.sU.);工工(dir)ledOpwnivaL++;elzeledQipwnivflL--;xf(ledOj^wnral>7199)"L。;〃最大可以取1到9。%即周期為9。。if(ledOpwmva1=j)dir=l;TIMSe^CGiT^are2(TIM3rledurwinvalj;3)定時器輸入捕獲實驗,參考《STM32F1開發(fā)指南(精英版)-庫函數(shù)版本_V1.0》第15章,利用TIM5的通道1(PA0)做輸入捕獲,捕獲PA0上高電平的脈寬(用WK_UP按鍵輸入高電平),通過串口打印高電平脈寬時間。通過本例程,掌握定時器輸入捕獲實現(xiàn)過程,記錄關(guān)鍵代碼,并寫出捕獲輸入實現(xiàn)原理:

SiLTENTEH戰(zhàn)我5TM開發(fā)板實驍1口曾入捕奈實日技術(shù)克特:wwBopinrdvPgm鼻寶店鋪iHEtp£//elboard.caoteaei.c-om關(guān)注,信公眾平臺串倩號土■正點原孑J免費獲由15TK二資料.廣州市呈鳳電子科技*展公司X7ia2。作4K正點序X7ia2。eKnerrsllSTEM5CBi2_CAFTuRE_5IA;.時1摘棄優(yōu)態(tài)externul£TIK3CMl_CAPTCmZ_VAL;『J輸入摘亞優(yōu)Ieignum(v-old)32t?i=pwi>:.3位電鹿優(yōu)先飯deLay_lnlE|).3位電鹿優(yōu)先飯icrityGroupCcntig|iacmity^roup_2);,士戈:「「中斷/二H二/應(yīng)拒占t上至£,uarr2i.Klc(L152OGJ; 〃廢口?朽砧比為:15』8LID_Jn.l.t.Uj //LE1地口初施4tTIM2_FWH_I:ni門JB; //不分梵甘PW[算五T2000/ifl99+l>-.5OKhzTIHS二區(qū)工二止工匕1溷WFF乙二■馬:〃以gZ的姣志汁效while(1)delay_3LBi|lu)『阻tew二喜(2ITIH3FTIH_G<tC*ptUTc21TIH3J+i)?it(TC*ptui*21TIH3:■—■■jJTlH_5et:COTP4F?2(TIM3,?if(TI.MSCM1_CaFTUM_STAtjX二U卜門成功??蒞到了1一次:上升沿tEmp-TIMG1_3ETOM_5TJUjK.3F;Eemp?*55536 溢出時尚總和tunpd-HHKSeHJL_CAFnraZ_W;//得變總的高電平時間pzin^fi"High;td.小訃口乙虧七即上打打沖后的浮百邛時司TIM8田「OLEFTRE_5TAY;兒開這下一二搞裝2.4創(chuàng)新實驗內(nèi)容在1.3實驗步驟的基礎(chǔ)上,通過修改代碼,實現(xiàn)如下功能:1)通過定時器相關(guān)功能實現(xiàn)控制蜂鳴器音調(diào)。查找資料理解蜂鳴器發(fā)出不同音調(diào)的控制原理,按下某個按鍵,實現(xiàn)“多來米發(fā)梭拉西”的發(fā)聲;10

3EEF-'BEEF;delayu5(_ );dtlAyHj)t)delaym}:for3EEF-'BEEF;delayu5(_ );dtlAyHj)t)delaym}:for(d-);d<. j;d4^)delayus{1'.<'.j))BEEF-BEEF;d^layus(-j0);耳EE”?BEEF;for?":,;H".也也上|1timerc」itmJ2f1OM_trm,(實驗3ADC及顯示實驗實驗?zāi)康?)理解ADC工作原理;2)掌握STM32ADC的使用方法。實驗設(shè)備一臺裝有Keil和串口調(diào)試軟件的計算機;11

一套STM32F103開發(fā)板;STlink硬件仿真器?;緦嶒瀮?nèi)容1)ADC實驗,參考《STM32F1開發(fā)指南(精英版)-庫函數(shù)版本_V1.0》第22章,將利用STM32的ADC1通道1采樣外部電壓值(注意:輸入電壓不能超過3.3V?。⒃赥FTLCD模塊上顯示出來。ADC輸入端口查找請參考《STM32F1開發(fā)指南(精英版)-庫函數(shù)版本_V1.0》第2章實驗平臺硬件資源詳解。通過本例程,理解ADC原理,記錄關(guān)鍵代碼,寫出ADC采樣實現(xiàn)過程:通過Get_Adc_Average函數(shù)可以獲得由通道1采樣得到的采樣值,然后經(jīng)過轉(zhuǎn)換計算輸出我們需要的數(shù)字量電壓值。I5tH32flOMad[.c□Arc ;打串口桶站址為工mg//leM□初的比rxozit/CznsipCcineigliWI^fri=rxt.yil.Eauij-_3|;*□Arc ;打串口桶站址為工mg//leM□初的比LED^fnj.6:(I鼻5口_工力上匚彳?;Mc_Inxt11,LXVDr?n_caLZSi"REp;/設(shè)置字體為近色LCD_fiHwSi:rxBij,LXVDr?n_caLZSi"REp;/設(shè)置字體為近色LCD_fiHwSi:rxBij160P&0,gZdO.,16P ^BTarSJUpsrH32r]fLCD_3!icn#5!:EJ.D0*ti口『十口.金口口.二百『16.2^3Ti3T-]rLED2ShauScE,*er -er1苴,上女了的皿工EWTEK');LGD-2horw3CEUl<a<?].P110P且。Q.」d.IC, ;"起后提示電急Hjnn_cnu?"fiLnE?一設(shè)黃事依為亙色.-LJt>LGD_3h-3w36rinig彳口UPL3U.[口口.J.E.4^^―匚此口一半社:"]JLtEi±^i;3w£t:E.3.nf4EdrL&ap idpj ;utaiT?t;J上MXNGifX_Aiiu且(鈣匚_匚打上門巾1上四」1NJE^_Sftoir^iaM15fia13QP*dQEr411rLEpoT://terr^:"ifiaat;ladczKj1.a/'IC&ifi|ij1.11<:1!?匚爵呼,的L “F盤不電壓0teiqz--aicKJ匚。呼??上口白白:LG>_j5hEn51gli中工/N*二 1131f3fM二口”LEKi-iLEMrdel*y_Ea(250);2)內(nèi)部溫度傳感器實驗,參考《STM32F1開發(fā)指南(精英版)-庫函數(shù)版本_V1.0》第23章,利用STM32F1的內(nèi)部溫度傳感器讀取溫度值,并在TFTLCD模塊上顯示出來。通過本例程,理解STM32內(nèi)部溫度傳感器的使用方法,記錄關(guān)鍵代碼,寫出讀取內(nèi)部溫度傳感器溫度值的實現(xiàn)過程:12

">J門旺W苫cenp--cexfi;DCllSicwSir]li£b£hsrfpIf.rVlBrShiv5TKWI;1L? 圮JEeITEK-I;aelay_xn±E;[」rfc,IC_FTioritjUAf-">J門旺W苫cenp--cexfi;DCllSicwSir]li£b£hsrfpIf.rVlBrShiv5TKWI;1L? 圮JEeITEK-I;aelay_xn±E;[」rfc,IC_FTioritjUAf-1也工=[:.!■1HU :L£O_lEiXCOJjIzlLu仆」FOIST_G&^£:El-H£Iij支.中耳4445If 1LCD_5hcn<STixnfl(J0PUQr2DC.116.」樂酒1t/l/H"]?POIHT_CG^CBl-mJEfLCp_r51icw3Exxn.7f.地iZeUK?nLC"h皿而工jjiqt孫W*200(U比VhowSt工期中[39p^|r2QC!!L£b_jhow£tx.xnip[3Or“初地優(yōu)與上遍夜的原年壬HDC柯餡生”該■字/為虹生LCD_4nm疝n】 川顯不蹙阜比5TLCD_SIUM3flna 1-40,cawhlDO,2rl>fiBCD髓”顯示小限建分LEM-J^EMjitlay_BaU5Q|ir創(chuàng)新實驗內(nèi)容在1.3實驗步驟的基礎(chǔ)上,通過修改代碼,實現(xiàn)如下功能:1)用信號發(fā)生器輸出正弦波、三角波信號(注意峰值小于3.3V!),接入某ADC通道,在TFTLCD上動態(tài)顯示輸入數(shù)據(jù)(也可以用圖形方式顯示);在實現(xiàn)1)中功能的基礎(chǔ)上,用TFTLCD顯示溫度,并顯示自己的班級、學(xué)號、姓名等信息。13L匚D_F112L 7-3r2C<

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論