freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

嵌入式實(shí)驗(yàn)報(bào)告小編整理-資料下載頁(yè)

2025-10-12 09:25本頁(yè)面
  

【正文】 斷事件,設(shè)置觸發(fā)條件。配置中斷分組(NVIC),并使能中斷,編寫中斷服務(wù)函數(shù)。四.實(shí)驗(yàn)設(shè)備硬件部分:PC計(jì)算機(jī)(宿主機(jī))、亮點(diǎn)STM32實(shí)驗(yàn)板、JLINK、示波器。軟件部分:PC機(jī)WINDOWS系統(tǒng)、MDK KEIL軟件、ISP軟件、串口調(diào)試助手。五.實(shí)驗(yàn)步驟 使用ISP下載到實(shí)驗(yàn)板 測(cè)試運(yùn)行結(jié)果記錄實(shí)驗(yàn)過(guò)程,撰寫實(shí)驗(yàn)報(bào)告六.實(shí)驗(yàn)結(jié)果及測(cè)試源代碼:打開(kāi)串口助手。七.實(shí)驗(yàn)總結(jié)首先需要將IO設(shè)置為中斷輸入口: 1)初始化 IO 口為輸入。2)開(kāi)啟 IO 口復(fù)用時(shí)鐘,設(shè)置 IO 口與中斷線的映射關(guān)系。3)開(kāi)啟與該 IO口相對(duì)的線上中斷/事件,設(shè)置觸發(fā)條件。4)配置中斷分組(NVIC),并使能中斷。5)編寫中斷服務(wù)函數(shù)。這一節(jié),使用的是中斷來(lái)檢測(cè)按鍵,通過(guò) WK_UP 按鍵實(shí)現(xiàn)按一次 LED0 和 LED 1 同時(shí)翻轉(zhuǎn),按 KEY0 翻轉(zhuǎn) LED0,按 KEY1 翻轉(zhuǎn) LED1。試驗(yàn)中外部中斷函數(shù)不能進(jìn)入的原因分析 : 1)GPIO或者AFIO的時(shí)鐘沒(méi)有開(kāi)啟。2)GPIO和配置的中斷線路不匹配。3)中斷觸發(fā)方式和實(shí)際不相符合。4)中斷處理函數(shù)用庫(kù)函數(shù)時(shí),寫錯(cuò),經(jīng)??赡艹霈F(xiàn)數(shù)字和字母之間沒(méi)有下劃線。5)外部中斷是沿觸發(fā),有可能不能檢測(cè)到沿,比如 中斷線是低電平(浮空輸入),觸發(fā)是下降沿觸發(fā),可能會(huì)出現(xiàn)一直是低電平,高電平的時(shí)候是一樣的情況,電平持續(xù)為高電平。6)沒(méi)有用軟件中斷來(lái)觸發(fā)外部中斷,調(diào)用函數(shù)EXTI_GenerateSWInterrupt;,因?yàn)檐浖袛嘞扔谶呇刂袛嗵幚怼*?dú)立看門狗實(shí)驗(yàn)一. 實(shí)驗(yàn)簡(jiǎn)介獨(dú)立看門狗(IWDG)由專用的低速時(shí)鐘(LSI)驅(qū)動(dòng),即使主時(shí)鐘發(fā)生故障它也仍然有效。窗口看門狗由從APB1時(shí)鐘分頻后得到的時(shí)鐘驅(qū)動(dòng),通過(guò)可配置的時(shí)間窗口來(lái)檢測(cè)應(yīng)用程序非正常的過(guò)遲或過(guò)早的操作。二.實(shí)驗(yàn)?zāi)康耐ㄟ^(guò)編程,編寫一個(gè)獨(dú)立看門狗驅(qū)動(dòng)程序三.實(shí)驗(yàn)內(nèi)容啟動(dòng) STM32 的獨(dú)立看門狗,從而使能看門狗,在程序里面必須間隔一定時(shí)間喂狗,否則將導(dǎo)致程序復(fù)位。利用這一點(diǎn),我們本章將通過(guò)一個(gè) LED 燈來(lái)指示程序是否重啟,來(lái)驗(yàn)證 STM32 的獨(dú)立看門狗。四.實(shí)驗(yàn)設(shè)備硬件部分:PC計(jì)算機(jī)(宿主機(jī))、亮點(diǎn)STM32實(shí)驗(yàn)板、JLINK。軟件部分:PC機(jī)WINDOWS系統(tǒng)、MDK KEIL軟件、ISP軟件、串口調(diào)試助手。五.實(shí)驗(yàn)步驟,編寫?yīng)毩⒖撮T狗驅(qū)動(dòng)程序。建立和配置工程 編寫代碼使用ISP下載到實(shí)驗(yàn)板記錄實(shí)驗(yàn)過(guò)程,撰寫實(shí)驗(yàn)報(bào)告六.實(shí)驗(yàn)結(jié)果及測(cè)試源代碼:在配置看門狗后,看到LED0 不停的閃爍,如果WK_UP 按鍵按下,就喂狗,只要WK_UP 不停的按,看門狗就一直不會(huì)產(chǎn)生復(fù)位,保持LED0 的常亮,一旦超過(guò)看門狗定溢出時(shí)間(Tout)還沒(méi)按,那么將會(huì)導(dǎo)致程序重啟,這將導(dǎo)致LED0 熄滅一次。七.實(shí)驗(yàn)總結(jié)通過(guò)本次實(shí)驗(yàn),我掌握了啟動(dòng)獨(dú)立看門狗的步驟: 1)向 IWDG_KR 寫入 0X5555。2)向 IWDG_KR 寫入 0XAAAA。3)向 IWDG_KR 寫入 0XCCCC。通過(guò)上面 3個(gè)步驟,啟動(dòng) STM32 的看門狗,從而使能看門狗,在程序里面就必須間隔一定時(shí)間喂狗,否則將導(dǎo)致程序復(fù)位。利用這一點(diǎn),本章通過(guò)一個(gè)LED 燈來(lái)指示程序是否重啟,來(lái)驗(yàn)證 STM32 的獨(dú)立看門狗。在配置看門狗后,LED0 將常亮,如果 WK_UP 按鍵按下,就喂狗,只要 WK_UP 不停的按,看門狗就一直不會(huì)產(chǎn)生復(fù)位,保持 LED 0 的常亮,一旦超過(guò)看門狗溢出時(shí)間(Tout)還沒(méi)按,那么將會(huì)導(dǎo)致程序重啟,這將導(dǎo)致 LED 0 熄滅一次。第四篇:嵌入式實(shí)驗(yàn)報(bào)告西安郵電大學(xué)嵌入式處理器及應(yīng)用實(shí)驗(yàn)報(bào)告書學(xué)院名稱學(xué)生姓名專業(yè)名稱班級(jí): : : :實(shí)驗(yàn)一ADS 集成開(kāi)發(fā)環(huán)境練習(xí)一、實(shí)驗(yàn)?zāi)康模毫私釧DS 集成開(kāi)發(fā)環(huán)境的使用方法。二、實(shí)驗(yàn)內(nèi)容:。,并添加到工程中。三、實(shí)驗(yàn)步驟: IDE集成開(kāi)發(fā)環(huán)境,選擇File—New,使用ARM Executable Image工程模板建立一個(gè)工程,工程名稱為ADS?!O(shè)置直接添加到項(xiàng)目中,輸入程序代碼。 New,對(duì)于中文支持不完善,因此建議修改字體。選擇Edit—Perferences,在Font選項(xiàng)設(shè)置字體為Fixedsys,Script為CHINESE_GB2312。建議在Tab Inserts Spaces前打勾,使Tab鍵插入的是多個(gè)空格?!狣ebugRel Settings,在DebugRel Settings對(duì)話框的左邊選擇ARM Linker項(xiàng),然后在Output頁(yè)設(shè)置連接地址ROBase 為0x40000000,RW Base 為0x40003000,在Options頁(yè)設(shè)置調(diào)試入口地址Image entry point 為 0x40000000?!狹ake,將編譯鏈接整個(gè)工程?!狣ebug,或單擊快捷鍵F5,IDE環(huán)境就會(huì)啟動(dòng)AXD調(diào)試軟件。四、程序清單:AREAExample1,CODE,READONLY。聲明代碼段Example1ENTRY。標(biāo)識(shí)程序入口CODE32。聲明32 位ARM 指令STARTMOVR0,15。設(shè)置參數(shù)MOVR1,8ADDSR0,R0,R1。R0 = R0 + R1BSTARTEND五、心得體會(huì):通過(guò)本次實(shí)驗(yàn),我熟悉了ADS 集成開(kāi)發(fā)環(huán)境,學(xué)會(huì)了怎樣建立工程,在工程里面建立文件和進(jìn)行最基本的運(yùn)行操作。我感觸最深的是每次軟件的開(kāi)始使用是最關(guān)鍵的,想要掌握一個(gè)軟件的使用必須進(jìn)行多次的練習(xí),多練幾遍自然而然的會(huì)熟練的操作。實(shí)驗(yàn)二存儲(chǔ)器訪問(wèn)指令練習(xí)實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模? 集成開(kāi)發(fā)環(huán)境及ARMulator軟件仿真。,并能編寫簡(jiǎn)單的匯編程序。二、實(shí)驗(yàn)內(nèi)容:,將數(shù)據(jù)加1,若結(jié)果小于10,則使用STR指令把結(jié)果回寫原地址;若結(jié)果大于或等于10,則把0寫回原地址。 ,單步、全速運(yùn)行程序,設(shè)置斷點(diǎn),打開(kāi)寄存器窗口(Processor Registers)監(jiān)視R0和R1的值,打開(kāi)存儲(chǔ)器觀察窗口(Memory)監(jiān)視0x40003100上的值。三、實(shí)驗(yàn)步驟: ,使用ARM Executable Image工程模板建立一個(gè)工程Instruction2。,編寫實(shí)驗(yàn)程序,然后添加到工程中。 為0x40000000,RW Base 為0x40003000。設(shè)置調(diào)試入口地址Image entry point 為 0x40000000。,選擇Project —Debug,啟動(dòng)AXD進(jìn)行軟件仿真調(diào)試。(Processor Registers),選擇Current 項(xiàng)監(jiān)視R0和R1的值。打開(kāi)存儲(chǔ)器觀察窗口(Memory)設(shè)置觀察地址為0x40003100,顯示方式Size為32Bit,監(jiān)視0x40003100地址上的值。四、程序清單:COUNTEQU0x40003100。定義一個(gè)變量,地址為0x40003100AREAExample2,CODE,READONLY。聲明代碼段Example2ENTRY。標(biāo)識(shí)程序入口CODE32。聲明32 位ARM 指令STARTLDRR1,=COUNT。R1 MOVR0,0。R0 STRR0,[R1]。[R1] LOOPLDRR1,=COUNTLDRR0,[R1]。R0 ADDR0,R0,1。R0 CMPR0,10。R0 與 10 比較,影響條件碼標(biāo)志MOVHSR0,0。若R0 大于等于 10,則此指令執(zhí)行,R0 STRR0,[R1]。[R1] BLOOPEND五、心得體會(huì):通過(guò)本次實(shí)驗(yàn),讓我更深一步的了解了ADS 集成開(kāi)發(fā)環(huán)境及ARMulator軟件仿真。通過(guò)對(duì)程序的解讀,我掌握一些匯編指令的寫法,同時(shí)也提高了我的讀程序的能力。本次實(shí)驗(yàn)中我遇到了一個(gè)問(wèn)題,在工程里加載文件的時(shí)候,沒(méi)注意文件的后綴應(yīng)為“。S”,結(jié)果造成文件加載失敗。實(shí)驗(yàn)三數(shù)據(jù)處理指令練習(xí)實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?。二、?shí)驗(yàn)內(nèi)容:。、SUB、AND、ORR、CMP和TST等指令完成數(shù)據(jù)加減運(yùn)算及邏輯運(yùn)算。三、實(shí)驗(yàn)步驟:1),使用ARM Executable Image 工程模板建立一個(gè)工程Instruction3。2) ,編寫實(shí)驗(yàn)程序,然后添加到工程中。3)設(shè)置工程鏈接地址RO Base為0x40000000,RW Base為0x40003000。設(shè)置調(diào)試入口地址Image entry point 為 0x40000000。4)編譯鏈接工程,選擇Project —Debug,啟動(dòng)AXD進(jìn)行軟件仿真調(diào)試。5)打開(kāi)寄存器窗口(Processor Registers),選擇Current 項(xiàng)監(jiān)視各寄存器的值。6)單步運(yùn)行程序,觀察寄存器值的變化。四、程序清單:XEQU。定義X 的值為11YEQU。定義Y 的值為8BIT23EQU(1。定義BIT23 的值為0x00800000AREAExample3,CODE,READONLY。聲明代碼段Example3ENTRY。標(biāo)識(shí)程序入口CODE32。聲明32 位ARM 指令START。使用MOV、ADD 指令實(shí)現(xiàn):R8 = R3 = X + YMOVR0,X。R0 MOVR1,Y。R1 ADDR3,R0,R1。即是R3 = X + YMOVR8,R3。R8 。使用MOV、MVN、SUB 指令實(shí)現(xiàn):R5 = 0x5FFFFFF8y。break。case7: x = key * y。break。default: x = 168。SWITCHCASE_0CASE_2CASE_3CASE_5CASE_7。break。}。設(shè)x 為R0,y 為R1,key 為R2(x、y、key 均為無(wú)符號(hào)整數(shù))MOVR1,3。初始化y 的值MOVR2,2。初始化key 的值A(chǔ)NDR2,R2,0x0F。switch(keyamp。0x0F)CMPR2,0。case 0:CMPNER2,2。case 2:MPNER2,3。case 3:BNECASE_5ADDR0,R2,R1。x = key + yBSWITCH_END。breakCMPR2,5。case 5:BNECASE_7SUBR0,R2,R1。x = key1)*4 SvcStackSpace +(SVC_STACK_LEGTH1)*4 FiqStackSpace +(FIQ_STACK_LEGTH1)*4UndtStackSpace +(UND_STACK_LEGTH1)*4。分配堆??臻gAREAMyStacks, DATA, NOINIT, ALIGN=2UsrStackSpaceSPACEUSR_STACK_LEGTH * 4。用戶(系統(tǒng))模式堆??臻gSvcStackSpaceSPACESVC_STACK_LEGTH * 4。管理模式堆??臻gIrqStackSpaceSPACEIRQ_STACK_LEGTH * 4。中斷模式堆棧空間FiqStackSpaceSPACEFIQ_STACK_LEGTH * 4??焖僦袛嗄J蕉褩?臻gAbtStackSpaceSPACEABT_STACK_LEGTH * 4。中止義模式堆??臻gUndtStackSpaceSPACEUND_STACK_LEGTH * 4。未定義模式堆棧END五、心得體會(huì):通過(guò)本次實(shí)驗(yàn),我較好的掌握了如何使用MRS/MSR指令實(shí)現(xiàn)ARM微控制器工作模式的切換。較好的了解了在各個(gè)工作模式下的寄存器。實(shí)驗(yàn)六C語(yǔ)言程序?qū)嶒?yàn)一、實(shí)驗(yàn)?zāi)康模和ㄟ^(guò)實(shí)驗(yàn)了解使用ADS ,并進(jìn)行調(diào)試。二、實(shí)驗(yàn)內(nèi)容:編寫一個(gè)匯編程序文件和一個(gè)C程序文件。匯編程序的功能是初始化堆棧指針和初始化C程序的運(yùn)行環(huán)境,然后跳轉(zhuǎn)到C程序運(yùn)行,這就是一個(gè)簡(jiǎn)單的啟動(dòng)程序。C程序使用加法運(yùn)算來(lái)計(jì)算1+2+3+…+(N1)+N的值(N為0時(shí),結(jié)果為0;N為1時(shí),結(jié)果為1)。三、實(shí)驗(yàn)步驟:,使用ARM Executable Image 工程模板建立一個(gè)工程ProgramC。,編寫實(shí)驗(yàn)程序,然后添加到工程中。 Base為0x40000000,RW Base為0x40003000。設(shè)置調(diào)試入口地址Image entry point 為 0x40000000。:選擇Edit—DebugRel Settings,在DebugRel Settings對(duì)話框的左邊選擇ARM Linker項(xiàng),然后在Layout頁(yè)設(shè)置Object/,Section為Start。,選擇Project—Debug,啟動(dòng)AXD進(jìn)行軟件仿真調(diào)試?!癇 Main”處設(shè)置斷點(diǎn),然后全速運(yùn)行程序。單步運(yùn)行程序,判斷程序是否跳轉(zhuǎn)到C程序中運(yùn)行。選擇Processor Views—Variables打開(kāi)變量觀察窗口,觀察全局變量的值,然后單步/全速運(yùn)行程序,判斷程序的運(yùn)算結(jié)果是否正確。四、程序清單:define uint8unsigned chardefine uint32unsigned intdefine Nuint32 sum。// 使用加法運(yùn)算來(lái)計(jì)算 1+2+3+...+(N1)+N 的值。(N0)void Main(void){ uint32 i。sum = 0。for(i=0。i{ sum += i。}while(1)。}簡(jiǎn)單的起動(dòng)代碼。起動(dòng)文件。初始化 C 程
點(diǎn)擊復(fù)制文檔內(nèi)容
數(shù)學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1