版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
CENTRALSOUTHUNIVERSITY
實(shí)驗(yàn)報(bào)告
課程名稱:嵌入式系統(tǒng)開(kāi)發(fā)
姓名:
任課教師:
學(xué)院:信息科學(xué)與工程學(xué)院
專業(yè)班級(jí):物聯(lián)網(wǎng)工程
2016年12月
目錄
實(shí)驗(yàn)一ARM匯編指令...........................................1
1.實(shí)驗(yàn)?zāi)康?................................................1
2.實(shí)驗(yàn)設(shè)備................................................1
3.實(shí)驗(yàn)內(nèi)容................................................1
1)實(shí)驗(yàn)A——完成運(yùn)算x+y,把結(jié)果存入堆棧寄存器(R13)中1
2)實(shí)驗(yàn)A運(yùn)行截圖......................................1
3)實(shí)驗(yàn)B一一完成運(yùn)算8x+y/201Tox01+(zand0xFF+y/2)/2,將
結(jié)果保存在R2中............................................6
4)實(shí)驗(yàn)B運(yùn)行截圖......................................6
實(shí)驗(yàn)二ARM處理器工作模式......................................13
1實(shí)驗(yàn)?zāi)康?...............................................13
2實(shí)驗(yàn)設(shè)備................................................13
3實(shí)驗(yàn)內(nèi)容.................................................13
4實(shí)驗(yàn)截圖................................................14
1)進(jìn)入系統(tǒng)模式.......................................17
2)初始化系統(tǒng)模式下的R0-R14寄存器....................18
3)切換到FIQ模式.....................................19
4)初始化FIQ模式下特有的寄存器R8-R14................................19
5)切換到中止模式.......................................20
7)切換到管理模式.......................................22
8)初始化管理模式下特有的寄存器R13-R14.............................22
9)切換到IRQ模式......................................23
10)初始化IRQ模式下的R13-R14..............................................23
11)J進(jìn)入未定義模式....................................24
12)初始化未定義模式下的寄存器R13-R14.................................24
5實(shí)驗(yàn)心得................................................25
實(shí)驗(yàn)三C語(yǔ)言程序(一)........................................26
1實(shí)驗(yàn)?zāi)康?...............................................26
2實(shí)驗(yàn)設(shè)備................................................26
3實(shí)驗(yàn)內(nèi)容................................................26
4實(shí)驗(yàn)截圖................................................26
實(shí)驗(yàn)四c語(yǔ)言程序?qū)嶒?yàn)(二)....................................35
1實(shí)驗(yàn)?zāi)康?...............................................35
2實(shí)驗(yàn)設(shè)備................................................35
3實(shí)驗(yàn)內(nèi)容................................................35
4實(shí)驗(yàn)截圖................................................35
5實(shí)驗(yàn)心得................................................45
實(shí)驗(yàn)五匯編和C語(yǔ)言的相互調(diào)用實(shí)驗(yàn)..............................45
1實(shí)驗(yàn)?zāi)康?...............................................45
2實(shí)驗(yàn)設(shè)備................................................45
3實(shí)驗(yàn)內(nèi)容................................................46
4實(shí)驗(yàn)截圖................................................46
5實(shí)驗(yàn)心得................................................56
實(shí)驗(yàn)六綜合編程實(shí)驗(yàn)............................................57
1實(shí)驗(yàn)?zāi)康?...............................................57
2實(shí)驗(yàn)設(shè)備................................................57
3實(shí)驗(yàn)內(nèi)容................................................57
4實(shí)驗(yàn)截圖................................................57
5實(shí)驗(yàn)心得................................................66
11
實(shí)驗(yàn)一ARM匯編指令
1.實(shí)驗(yàn)?zāi)康?/p>
(1)初步學(xué)會(huì)使用ADS1.2集成開(kāi)發(fā)環(huán)境及ARM軟件模擬器;
(2)通過(guò)實(shí)驗(yàn)掌握簡(jiǎn)單ARM匯編指令的使用
2.實(shí)驗(yàn)設(shè)備
(1)硬件:PC機(jī)
(2)軟件:ADS1.2集成開(kāi)發(fā)環(huán)境,Windows98/2000/NT/XP
3.實(shí)驗(yàn)內(nèi)容
(1)熟悉ADS開(kāi)發(fā)環(huán)境,并使用LDR/STR和MOV等指令訪問(wèn)寄存器或
存儲(chǔ)單元;
(2)使用ADD/SUB/LSL/LSR/AND/ORR/等指令完成基本數(shù)學(xué)邏輯運(yùn)算。
1)實(shí)驗(yàn)A——完成運(yùn)算x+y,把結(jié)果存入堆棧寄存器(R13)中
在該實(shí)驗(yàn)中主要是通過(guò)MOV/STR/LDR/ADD等指令來(lái)完成基本的加操作運(yùn)
算。
2)實(shí)驗(yàn)A運(yùn)行截圖
-r20x000000005ENTRY
-r30x00000000?6MOVSP,Istack-top
0x000000007MOVR0,以
8SIRR0,(SP]
-r50x00000000
9MOVR0#y
,,r60x00000000r
10LDRRI,[SP]
0x00000000
?-r7ADDR0,R0,RI
-r80x0000000012SIRR0,[SP]
??r90x0000000013stop
-rlC0x0000000014Bstop
1rli0x0000000015END
16
--rl20x00000000
-rl30x00000000
令對(duì)應(yīng)的代碼
一1140x00000000V
11
getImageFiles3
17TDMI-MemoryStartiddr<[Ox££O
?Hex-Noprefix|Tab2-Hex-b3-Hx-NoT
dress
IOOOCFFOE7FF0010E800E8E7JF0010E80CE00
?0001000E7FF0010E800EZ00EJFF0010E80CE00
17TDMI-MemorySt,§ddr帆4
-Hex-Noprefix|/ab2-Hex?人。prefix|Tab3-He-No
dress08
IOOOEOOOE3A0DD40E3A0002DE58DOOOO£3AC0040
iQOOeOlOE59D1000E0800001E58DOOOOEAFFFFFE
2
4AREAstartrCODE,READONLY
5ENTRY
0X0000002DL
6MOVSP.#scack_top
0x00000000otvoeoao[0xe3a0dd40]movr13,*0x1000
0x000000007**MOVR0,.x
0x000000000C008004[0xe3a0002d]movrO,*0x2d
0x000000008STRR0,[SP]
0x000000000C008008|;0xe58d0000]strrO,(rl3,*0]
0x000000009MOVR0,,y
0x000000000C00800C[0xe3a00040)movr0,?0x40
ICLDRRI,[SP]
0x00000000
0C008010(0xeS9dl000]Idrrl,(rl3,#C]
0x0000000011ADDR0,R0,RI
0x000000000C008014(0xe0800001)addrO,rO,rl
0x0000000012STRR0,[SP]
0x000000000C008018(0xe58d0000)strrO,(rl3,#0]
0x0000100013stop
0x0000000014Bscop
stop(Oxeafffffe)bstop
0x00008008
ISEND
nzcvqIFt__SV^1€
nzcvqift_Re.
PC指向下一條指令的地址
rgetImageFiles
S7TDMI-MemoryStartftddr^Ox^FO-H
S7TDMI?MemoryStartiddr4OxSOdO±l
b1-Hex-Noprefix|Tab2?Hex-Nc^prefix^Tab3-Hex-Noprefix|Tab4-Hex-Noprefi
idreas|______048|c—|_______________________________
30308000E3A0DD40E3A0002DE58D0000E3A00040
30308010E59D1000E0800001E58D0000EAFFFFFE
ste?Registers
④ARM7TDMI?E:\ads1.2\projec\test\asm1_a.s
egisterValue
5ENTRY
K7TIWI-Registers6J40VSP,#stack_top
/00008000[0xe3a0dd40]movr13,#0x1000
egiater|Valu.|A/7MOVR0,?x
|-r50x00000000?800008004[0xe3a0002d]movrO,10x2d
|-r70x000000007STRR0,[SP||
prB0x00000000/00008008[0xe58d0000]strIO,(r13r#0)
j-r)0x00000000/9HOVROr#y
brio0x00000000/0000800c[Oxe3aOOO4O]movzO,10x40
10LDRRl,[SP|
F-rLl0x0000000000008010[Oxe59dlOOO]Idrrl,[rl3,10]
prL20x00000^00/IllADDRO,RO,R1
j-rL30x00001000/
00008014[0xe0800001]addrOfrO,rl
;rL40x00000000^
12STRR0r[SP|
卜p:0x00008004r00008018[0xe58d0000]strrO,[rl3,<0]
hcosrnzcvqIFt_SVt13stop
14Bscop
Lsoarnzcvqift_Re;
stop[Oxeafffffe]bstop
User/System{...}v15END
3
J
—<■??
ICurrent{...)5ENTRY
pxO0x0000004I6MOVSP,#3tack_top
pxl
0x00000000^x00008000[0xe3a0dd40]movrl3r#0x1000
卜r20x000000007MOVR0,#x
|-i30x00000000"9Q008004[0xe3a0002d]movr0,#0x2d
x40x00000000STRR0,[SP]
0000800^4^xe58d0000]strr0,[rl3<0]
占50x00000000r
9、MOVRO#y
卜160x00000000r
0000800c[0xe3a00040]movr0#?0x40
占70x0000000010LDRRI,[SP]
Px80x0000000000008010(0xe59dl000)Idr[rl3,10]
0x0000000011ADDRO,RO,RI
H1100x00000000v00008014[0xe0800001]add
12STRR0,[SF]
00008018[0xe58d0000]strrO,[rl3<0]
argetImageFilesr
13stop
iUIVII-rviemory|VAAC*-m
'ab1-Hex?NoprefHex-NoTab3-Hex-NoTao4-Hex-Nopr
Address0/48c
xCOOOOFFOE7FF0010/E800E800E7FF0010E800E800
xCOOOlOOO0000002DE800E800E7FF0010E800E800
XCOOOIOIOE7FF0010E800E800E7FF0010E800E800
XC0001020E7FF0010E800E800E7FF0010E800E800
*J
4AREAstart,CODE,READONLY
卜Current{..J5ENTRY
hrO0x00000040
6MOVSPr#stack_top
FT10X0000002D00008000[0xe3a0dd40]movrl3f#0x1000
卜H2OxOO<bOOO8^7MOVR0r*x
00008004[0xe3a0002d]movrO,#0x2d
卜工30x00(00000■
STRR0[SP]
卜"OxOOC000007r
0$Q08008[0xe58d0000]strrO[rl3#0]
j--T50x00(00000rr
9MOVR0#y
j-r6r
OxOOC000000000800c妝?3a00040]movrO,10x40
Hr7oxoocoooN10、LDRRI,[SP]
I~~r80x00(0000000008010[0xe59dl000]Idrrl,[rl3,#0]
kr90x00(0000011ADDRO,RO,RI
V
AvnnrAAAAA,00008014[0xe0800001]addr0rr09rl
12STRRO,[SP]
00008018[05<e58d0000]strrO,(r13#0]
PargetImageFile』|.』r
13StCD
■t
RM7TDMI-MemoryStart鼠dr標(biāo)而
Fab,-Hex?Noprefx|Tab2-Hex-Noprefix|Tab3-Hex-Noprefix|Tab4-Hex-Nopre
Address048c
?xOOOOOFFOE7FF0010E800E800E1FF0010E800E800
IXOOOOIOOO0000002DE800E800E1FF0010E800E800
IXOOOOIOIOE7FF0010E800E800E1FF0010E800E800
X00001020E7FF0010E800E800E1FF0010E800E800
4
giscerValueA6MU/tstack_top
00008000[0xe3a0dd40]movrl3f10x1000
:urrent{?..)7MOVR0,”
rC1Ox0000006D^?00008004[0xe3a3002d]movr0,IOx2d
Prl0x0000002D、8STRR0,[SP]
kr;0x00000000
00008008[0xe58d0000]strr0r(r13r10]
卜-r30x00000000M07R0rfy
0Q0Q800c[0xe3a90040]movr010x40
卜0X00000000r
|-r50x0000000010LDRRI,[SP]
0000801OXPxe59dl000]Idrrl,|rl3,?0]
E0x0000000011、ADDR0,R0,RI
0x000000000^008014[0xe0830001]addrO,rO,rl
i--r€0x0000000012STRR0,[SP]
|-r$0x00000000
400008018[0xe58d0000]strr0r[rl3r*0]
1一.1八AvnnnAAAnAv13stop
14Bstop
rgelImageFiles4|>stop[Oxeafffffe]bstop
15END
UUUUOUUU[UACOaUUU**UJ1UUVLXOYUAXUUU
Current{.?.)r
7MOVR0rfx
-z00x0000006、00008004[0xe3a0002d]movr0,?0x2d
-xioxooooooai\8STRR0,[SP]
'、
一12OxOOOOOOOD00008008[0xe58d0000]szrr0,[r13r#0]
\\9MOVRO#y
-z3OxOOOOOOCK)r
一I40x00000000uQ00800c[0xe3a00040]movr0,10x40
lO'vLDRRI,[SP]
-i5OxOOOOOOdO0000^0[0xe59dl000]Idrrl,[rl3,10]
-z6OxOOOOOOpO11ADDR0,R0,RI
—l7OxOOOOOODO
00008014;5^e0800001]addr0rr0,rl
-z80x0000000012、STRR0,[SP]
一19oxooooodoo00008018[0xe58d0000]strr0,(rl3,10]
AAvAnnAnAnnv13stop
I
f14Bstop
“getImageFilesI■I,,scop|[0xeafffffe]bscop
15END
M7TDMI-MemoryStart£dr帆££0JJ
3bl-Hex-Noprefix!|Tab2-Hex-Noprefix|Tab3-Hex-Noprefix|Tab4-Hex-Nopref
address014sc
[OOCOOFFOE7FF001QLE800E800E7FF0010E800E800
cOOCOlOOO0000006DE800E800E7FF0010E800E800
rnnrnininF^FFnninrpnnronnFTTrnmnronnronn
5
3)實(shí)驗(yàn)B--完成運(yùn)算8x+y/2orr0x01+(zand0xFF+y/2)/2,將結(jié)果保存
在R2中
通過(guò)使用MOV/STR/LDR/ORR/LSR/ADD等指令完成簡(jiǎn)單的加操作運(yùn)算。
4)實(shí)驗(yàn)B運(yùn)行截圖
xvnriiimx-negisrers
MOVR0,#X
RegisterValueA
*00008000[0x^3a0002d]mov
-rll0x00000000MOVR0,R0,LSL
?rl20x0000000000008004[?xela00400)movrO,rO,Isl18
-rl3CxOOOOOOOOMOVR1,#Y
Hrl40x0000000000008008[0xe3a01040]movnr#0x40
-PC0x0000800010ADDR2,RO,R1,LSL
000080[0xe0802081]addr2,r0,rllai*1
cpsrnzcvqIFt_SVir
11MOVSP,00X1000
spsrnzcvdiftJRe
00008010[0xe3a0dd40]movrl3,10x1000
B-User/System{...
STRR2,[SP]
□F】Q{...
000X)8014[0xe58d2000]strz2t[r13,#0]
BlFQ{..J11
IRM7TDMI-MemoryStartiddr4Oxfi_±1
Tabi-Hex-NoprefixITab2-Hex/Hex-NoTab4-Hex-Noprefix
Address/04L8c
OxOOOOOFFOE7ET0010E800EajOE7FF0010E8OOE8OO
0x00001000E7BF0010E80OEJOOE7FF0010E8OOE8OO
£800/800
0x00001010E7FF0010E7FF0010E8OOE8OO
0x00001020EyFFOOlOE80/JE800E7FF0010E8OOE8OO
由舞都排址1000璇,
kRM7TDMI-林神密道力E3A0002DK
Tabi-HexQ。prefixJab2-Hex-Noprefix|Tab3?Hex-Noprefix|Tab4-Hex?Noprefix
Address0J48c
0x00008000E3A0002"E1A00400E3^01040E0802081
0x00008010E3A0DD40E58D2000E3A00057E20000FF
0x00008020E3A01040E08020A1E59D0000E3AO1OO1
0x00008030E1800001E1A01002E08020A1EAFFFFFE
6
RegisterValue5AREAstartl,CODE,READONLY
*1.1I
3-Ciirr.nt___f—X_______116ENTRY
_[ValueA
Register5AREAstartlrCODErREADONLY
6ENTRY
□Current(...)
7MOVRO,?X
,rO0x00002000^j一
J0xe3a0002d]movrC,*0x2d
rl0x00000000
8MOVRO,RO,LSL*8
??r21^(00000000
00008004[0xela00400]movrCrrO,lsl#8
-r30x000000009MOVRI,OY
-r40x000000004/00008008|;0xe3a01040]movrl,?0x40
/10
--rS0x00000000ADDR2,RO,R1,LSL*1
/0000800c
-r60x00000000[0xe0802081]addr2rrOrrlrIsln
f11MOVSP#0X1000
0x00000000r
00008010[0xe3a0dd40]movrl3#0x1000
???re0x00000000r
/12STRR2,(SR〕
-r90x0000000000008014[0xeS8d2000]strr2,[rl3,#0]
rlO0x00000000
/13MOVRO,tZ
-rll0x0000000000008018[0xe3a00057]movrO,#0x57
-rl20x0000000014ANDR0rR030XFF
,rl30x000000000000801c[0xe20000ff]andrCrrOr#Oxff
0x00000000/MOVRl#Y
-rl415r
0x00008008*00008020[0xe3a01040]mov口,?0x40
-pc
16ADDR2,RO,R1,LSR*1
?cpsrnzcvqIFt_SV
00008024[0xe08020al]addr2,rO,tlrIsr*1
spsrnzcvqiftRe.1rTnoDArcci
7MOVROtX
0x00002000r
00003000:Jxe3a0002d]mcvrOIOx2d
0x00000040r
MOVR0,R0,L3L
0x0000000^
0xela00400]mcv
0x00000000
0x0000000000008008[0xe3a01040]mcvrl,IOx4O
0x0000000010ADDR2,R0,R】,LSL#1
0000300c[0xe0802081]acdr2r0,rl,lsl*L
i-r60x00000000nr
/MOVSP,tOX1COO
i-r70x00000000
/00003010[0xe3a0dd40]movrl3,#0x1000
0x00000000
!-r2STRR2[SP]
j-r90x00000000r
/00003014[0xe58d2000]strr2f:rl3r<0]
prlO0x0000000013MOVRO"Z
j-rll0x0000000000003018[0xe3a00057]mcvrOr10x57
j-rl20x0000000014ANDRO,RO*CXFF
/r
OOOOBOlc[0xe20000ff]ar.drO,rOtOxff
i-rl30x00000000/f
J-rl40x00000000df15MOVR1,tY
l-pcoxooooeooc900008020[0xe3a01040]mcvrl,10x40
16ADDR2,R0,R],LSR+1
r-cpsrnzcvqIFt_SVi
00003024[0xe08020al]acdr2,rOrrlrIsr#L
:一spsrnzcvqift_Re;m??nreel
7
uirent6EliTRY
7MOVRO,*X
一10Ox0OOO2DOO
00008000[0xe3a0002d]movrO,#0x2d
一ri0x00000040
8MOVRO,RO,LSI#8
占2
0x00002比0^^00008004[0xela00400]movrO,rd,Isl*8
-
占30x00000000MOVR1,*Y
-r40x00000000oooo8tn>e-4fixe3a01040]movrlr#0x40
'ADDR2,
~r50x0000000010ROrRl,LSL*1
—r60x000000000000800c[0xe0802081]addr2,rOrrl,lsl*1
iiMOVSP,miooo
一r70x00000000
■f/00008010[0xe3a0dd40]movrl3,10x1000
-t80x00000000
/12STRR2,[SP]
一
190x00000000/00008014(0xe58d2000]3ZTr2,(rl3,10]
LEO0x00000000/13MOVRO,?Z
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年借殼上市業(yè)務(wù)合作框架協(xié)議
- 2025年健康食品代理委托協(xié)議
- 2025年地暖安裝協(xié)議
- 2025年出售合同解約協(xié)議書(shū)
- 2025年保密協(xié)議約定規(guī)范規(guī)則
- 2025年增資協(xié)議訂立簽字合同
- 2025年兒童房家具定制協(xié)議
- 2025年數(shù)據(jù)中心裝修升級(jí)與物業(yè)安全保障合同3篇
- 二零二五版鋼材貿(mào)易融資及風(fēng)險(xiǎn)管理合同3篇
- 2025年度新能源儲(chǔ)能技術(shù)研發(fā)承包合同范本4篇
- 2024年發(fā)電廠交接班管理制度(二篇)
- 《數(shù)學(xué)課程標(biāo)準(zhǔn)》義務(wù)教育2022年修訂版(原版)
- 農(nóng)機(jī)維修市場(chǎng)前景分析
- HG+20231-2014化學(xué)工業(yè)建設(shè)項(xiàng)目試車規(guī)范
- 匯款賬戶變更協(xié)議
- 電力系統(tǒng)動(dòng)態(tài)仿真與建模
- 蝦皮shopee新手賣家考試題庫(kù)及答案
- 四川省宜賓市2023-2024學(xué)年八年級(jí)上學(xué)期期末義務(wù)教育階段教學(xué)質(zhì)量監(jiān)測(cè)英語(yǔ)試題
- 價(jià)值醫(yī)療的概念 實(shí)踐及其實(shí)現(xiàn)路徑
- 2024年中國(guó)華能集團(tuán)燃料有限公司招聘筆試參考題庫(kù)含答案解析
- 《紅樓夢(mèng)》中的男性形象解讀
評(píng)論
0/150
提交評(píng)論