首页 > 编程语言 >ADS环境下的ARM汇编程序设计实验报告

ADS环境下的ARM汇编程序设计实验报告

时间:2024-07-31 21:55:14浏览次数:15  
标签:00 ADS 汇编程序 编译 E8 ARM 调试

ADS环境下的ARM汇编程序

    

一、 实验目的

1.了解 ARM汇编语言的基本框架,学会使用ARM的汇编语言编程。

2.熟悉ADS1.2下进行汇编语言程序设计的基本流程;

3. 了解AXD中调试功能。

二、 实验环境

硬件:PC机

软件:ADS1.2

三、 实验任务与步骤

实验任务

1、在ADS中新建工程,并设置开发环境

2、在Code Warrior环境中编辑、编译和链接汇编语言程序,并生成可执行文件

        ①在AXD中调试汇编程序。

        ②使用命令行界面编辑、编译和链接汇编程序。

实验步骤

1、 新建工程

打开 Code Warrior ,选择 File->New(project) 选项,使用 ARM Executable Image 模版新建一个工程。

2、设置编译和链接选项

在菜单栏 Edit-DebugRel Settings 里进行设置。由于我们使用的是模拟机,设置汇编语言编译器 Assembler 的模拟处理器架构为Xscale;在 ARM Linker 中,选择 output 选项卡并选择 Linktype为 Simple 类型,确认 RO Base 为 0x8000,修改 RW Base 为0x9000。

3、 添加源程序文件

ARM 汇编程序源文件后缀名为.S 大小写均可。确保添加入当前工程复选框选上。

4、 编辑源程序代码

5、 编译汇编源代码文件

右击.S 文件,选择 Compile,如果没有成功会弹出错误和警告窗口。成功生成.O 目标代码文件。

6、 编译整个工程

选择 Project Make 进行整个工程的编译。可以在目录空间查看是否生成了映像文件.axf。

7、 确认调试目标设置

设置目标处理器型号。

8、 运行映像文件

如果 load image 是灰色,options -> configure target -> ARMUL(没有目标板)然后点 OK 就可以加载 AXF 文件了

9、 调试准备

在 AXD 中,打开各个观察窗口,做调试准备。选择 Processor Views Registers 选项,打开 ARM 寄存器显示窗口。调整窗口大小,使得Current 节点的 R0~R2 寄存器可见。选择 Processor Views Memory 选项,打开 ARM 存储器显示窗口。在 Start Address 输入框中输入准备查看的内存区域首地址 0x9000。

10、调试映像文件

打开调试窗口。为了便于调试,观察各个寄存器和存储器的变化情况。

11、运行程序观察记录结果

在 AXD 中,选择 Execute Step 选项,或者 F10 键,单步运行程序,查看相关寄存器和存储器相应地址上的变化。

按下F10

寄存器地址变化:

r0

r1

r2

0x00000000

0x00000000

0x00000000

0x00000000

0x00000001

0x00000001

0x00000001

0x00000001

0x00000002

0x00000003

0x00000002

0x00000003

0x00000003

0x00000006

0x00000003

0x00000006

0x00000004

0x0000000A

0x00000004

0x0000000A

0x00000005

0x0000000F

0x00000005

0x0000000F

0x00000006

0x00000015

0x00000006

0x00000015

0x00000007

0x0000001C

0x00000007

0x0000001C

0x00000008

0x0000001C

0x00000008

0x00009000

存储器地址变化:

Address

0

1

2

3

4

5

6

7

8

9

a

b

c

d

e

f

0x00009000

10

00

FF

E7

00

E8

00

E8

10

00

FF

E7

00

E8

00

E8

1C

00

00

00

00

E8

00

E8

10

00

FF

E7

00

E8

00

E8

标签:00,ADS,汇编程序,编译,E8,ARM,调试
From: https://blog.csdn.net/qq_55543315/article/details/140831087

相关文章

  • 【2024最新版】超详细Python+Pycharm安装保姆级教程,Python+Pycharm环境配置和使用指南
    本文将从Python解释器安装到Pycharm专业版安装和配置汉化等使用都进行了详细介绍,希望能够帮助到大家。Python解释器&Pycharm安装包&Pycharm破姐插件我都打包好了。这份完整版的Python安装包已经上传至CSDN官方,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费获取......
  • HarmonyOS应用开发学习-HarmonyOs概述
    HarmonyOs概述HarmonyOs是一款面向万物互联时代的、全新的分布式操作系统在传统的单设备系统能力基础上,HarmonyOs提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持手机、平板、智能穿戴、智慧屏、车机、PC、智能音箱、耳机、AR/VR眼镜等多种终端设备,提供全场景(......
  • HarmonyOS 集成 Flutter 问题记录
    1、DevEco-Studio升级到DevEco-StudioNEXTDeveloperBeta25.0.3版本之后报错:>hvigorERROR:Schemavalidatefailed.Detail:Pleasecheckthefollowingfields.{instancePath:'modules[2].srcPath',keyword:'pattern',params:{pa......
  • 基于ads1292的心电信号采集之芯片关键点备忘
    一前记团队在作基于ads1292的心电数据采集时候,遇到了一些问题。这里做一个记录和备忘。也希望能帮的到同样遇到困难的朋友。 二关注点1reset引脚不能悬空,这个悬空的时候,笔者发现ads1292无法正常工作。  2.start信号在单独使用的时候,不要接GND......
  • 无法在 Pycharm 上安装软件包
    我正在尝试为我正在处理的项目安装tmdb3或tmdbv3api。我使用pycharm作为我的IDE,并且我有一台Windows笔记本电脑。但当我尝试下载它时,我总是遇到错误,而且我不知道该怎么办。我使用命令提示符安装了两者,我相信一切都运行良好。问题是当我尝试在pycharm中使用它时。如果我......
  • 类型提示在 pycharm 2018.1 中并不总是有效?
    我今天开始使用类型提示。在阅读了有关类型提示的文档后,我尝试编写一些愚蠢的示例来检查它是如何工作的,但被困在像这样简单的事情上。a:int=7.33我没有收到任何警告或错误。一切都正常,就像我没有使用类型提示一样。我期待一个警告,说浮点数不能分配给intvar。我尝......
  • 类字段/实例变量的 Pycharm 类型提示
    每当我们在Java中需要一个新对象时,我们都会声明类型和名称,选择是否为其提供初始值。在Python中我们不能这样做,因为我们没有声明类型。我怎样才能解决这个问题,因为如果没有声明类型;我没有收到任何代码完成提示。就像特定对象的字段或我们可以在该对象上调用的任何方法一样........
  • Python 环境配置(一)Python、Anaconda、Pycharm的安装
    Python环境配置(一)Python、Anaconda、Pycharm的安装本人之前已安装一次,此次为卸载之后的重新安装。。。一、Python1、下载下载官网:下载链接:DownloadPython|Python.org勾选添加到路径(环境变量)next如图所示之后点close关闭2、验证win+Rcmd:python退出ex......
  • Pycharm 设置 yaml 格式接口测试用例模板 (python+pytest+yaml)
    前言初次编写的伙伴们可能对yaml格式不太熟悉,自己写yaml用例的时候,总是格式对不齐啊记不住设定好的关键字啊等等等琐事是我们可以在pycharm上设置用例模块,通过快捷方式调用出对应的模块,达到高效写用例的目的。 pycharm操作集:1、File-Settings(快捷键Ctrl+Alt+S) 2、Live......
  • PyCharm 在有效代码上显示“无法读取属性”
    我们来看下面的代码:importtypingdefmake_getter(field:str)->typing.Callable[['A'],int]:defgetter(self:'A')->int:returnint(self.dict[field])returngetterdefmake_setter(field:str)->typing.Callable[[......