中南大学单片机实验报告-中南大学嵌入式系统实验报告_第1页
中南大学单片机实验报告-中南大学嵌入式系统实验报告_第2页
中南大学单片机实验报告-中南大学嵌入式系统实验报告_第3页
中南大学单片机实验报告-中南大学嵌入式系统实验报告_第4页
中南大学单片机实验报告-中南大学嵌入式系统实验报告_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

CENTRALSOUTHUNIVERSITY

实验报告

课程名称:嵌入式系统开发

姓名:

任课教师:

学院:信息科学与工程学院

专业班级:物联网工程

2016年12月

目录

实验一ARM汇编指令...........................................1

1.实验目的.................................................1

2.实验设备................................................1

3.实验内容................................................1

1)实验A——完成运算x+y,把结果存入堆栈寄存器(R13)中1

2)实验A运行截图......................................1

3)实验B一一完成运算8x+y/201Tox01+(zand0xFF+y/2)/2,将

结果保存在R2中............................................6

4)实验B运行截图......................................6

实验二ARM处理器工作模式......................................13

1实验目的................................................13

2实验设备................................................13

3实验内容.................................................13

4实验截图................................................14

1)进入系统模式.......................................17

2)初始化系统模式下的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进入未定义模式....................................24

12)初始化未定义模式下的寄存器R13-R14.................................24

5实验心得................................................25

实验三C语言程序(一)........................................26

1实验目的................................................26

2实验设备................................................26

3实验内容................................................26

4实验截图................................................26

实验四c语言程序实验(二)....................................35

1实验目的................................................35

2实验设备................................................35

3实验内容................................................35

4实验截图................................................35

5实验心得................................................45

实验五汇编和C语言的相互调用实验..............................45

1实验目的................................................45

2实验设备................................................45

3实验内容................................................46

4实验截图................................................46

5实验心得................................................56

实验六综合编程实验............................................57

1实验目的................................................57

2实验设备................................................57

3实验内容................................................57

4实验截图................................................57

5实验心得................................................66

11

实验一ARM汇编指令

1.实验目的

(1)初步学会使用ADS1.2集成开发环境及ARM软件模拟器;

(2)通过实验掌握简单ARM汇编指令的使用

2.实验设备

(1)硬件:PC机

(2)软件:ADS1.2集成开发环境,Windows98/2000/NT/XP

3.实验内容

(1)熟悉ADS开发环境,并使用LDR/STR和MOV等指令访问寄存器或

存储单元;

(2)使用ADD/SUB/LSL/LSR/AND/ORR/等指令完成基本数学逻辑运算。

1)实验A——完成运算x+y,把结果存入堆栈寄存器(R13)中

在该实验中主要是通过MOV/STR/LDR/ADD等指令来完成基本的加操作运

算。

2)实验A运行截图

-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

令对应的代码

一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标而

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)实验B--完成运算8x+y/2orr0x01+(zand0xFF+y/2)/2,将结果保存

在R2中

通过使用MOV/STR/LDR/ORR/LSR/ADD等指令完成简单的加操作运算。

4)实验B运行截图

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. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论