《micro2440开发》第六章:micro2440 ADS单步调试总结

2024-03-15 14:48

本文主要是介绍《micro2440开发》第六章:micro2440 ADS单步调试总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

====================================================================================================================================

一、CodeWarrior使用

打开ADS程序下的CodeWarrior for ARM Developer Suite:

1.File菜单下New选项:选择ARM Executable Image,Project name和Location自己填写;eg:Project name写myled,Location选择c:\work\myled。

2.单击右键Add File添加相关源程序;eg:2440init.s、2440lib.c、2440slib.s和main.c。

3.编译和链接工程设置,Edit菜单的DebugRel Setting选项:

Target Settings中;Post-linker选ARM fromELF,其他默认。//即armlink连接器生成的是axd调试器用的axf文件(axf和elf格式基本相同);还需要通过fromelf转换工具、生成直接烧录flash的bin格式。

ARM Assembler中;Architecture or Processor选ARM920T,其他默认。  //配置ARM汇编编译器。

ARM Linker中;Simple image下RO Base选0x3000 0000,其他默认。  //配置ARM连接器将程序装载到0x3000 0000、也就是内存中运行。

ARM fromELF中;Output file name选myled.bin,其他默认。  //formelf格式转换还需转elf至bin。

4.编译和链接:Project菜单下的make选项。

结果:生成C:\work\myled\myled_Data\DebugRel\myled.bin和C:\work\myled\myled_Data\DebugRel\myled.axf。

5.Project菜单下Debug选项调出AXD Debugger。

二、AXD使用

打开ADS程序下的AXD Debugger:

1.如前边文章的《Jlink设置》:《micro2440开发》第五章:micro2440 JLINK配置。

2.Execute菜单下Go选项。

3.注意ARM79_0 raise an excption,cause:The processor was reset,解决方法:

Options菜单下的Configure Interface选项下的Session File子选项,Run Configuration Scrit打勾、并选择config.ini的路径;内容如下:

setmem 0x53000000, 0x00000000,       32
setmem 0x4a000008, 0xffffffff,       32
setmem 0x4a00001c, 0x00007fff,       32
setmem 0x48000000, 0x2212d110,       32
setmem 0x48000004, 0x00000f40,       32
setmem 0x48000008, 0x00002e50,       32
setmem 0x4800000c, 0x00002e50,       32
setmem 0x48000010, 0x00002e50,       32
setmem 0x48000014, 0x00002e50,       32
setmem 0x48000018, 0x00002e50,       32
setmem 0x4800001c, 0x00018005,       32
setmem 0x48000020, 0x00018005,       32
setmem 0x48000024, 0x00960542,       32
setmem 0x48000028, 0x00000032,       32
setmem 0x4800002c, 0x00000030,       32
setmem 0x48000030, 0x00000030,       32

原因,存储器控制器未初始化。

这篇关于《micro2440开发》第六章:micro2440 ADS单步调试总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/812322

相关文章

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

Python版本与package版本兼容性检查方法总结

《Python版本与package版本兼容性检查方法总结》:本文主要介绍Python版本与package版本兼容性检查方法的相关资料,文中提供四种检查方法,分别是pip查询、conda管理、PyP... 目录引言为什么会出现兼容性问题方法一:用 pip 官方命令查询可用版本方法二:conda 管理包环境方法

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

Java服务实现开启Debug远程调试

《Java服务实现开启Debug远程调试》文章介绍如何通过JVM参数开启Java服务远程调试,便于在线上排查问题,在IDEA中配置客户端连接,实现无需频繁部署的调试,提升效率... 目录一、背景二、相关图示说明三、具体操作步骤1、服务端配置2、客户端配置总结一、背景日常项目中,通常我们的代码都是部署到远程

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

JavaScript中的高级调试方法全攻略指南

《JavaScript中的高级调试方法全攻略指南》什么是高级JavaScript调试技巧,它比console.log有何优势,如何使用断点调试定位问题,通过本文,我们将深入解答这些问题,带您从理论到实... 目录观点与案例结合观点1观点2观点3观点4观点5高级调试技巧详解实战案例断点调试:定位变量错误性能分

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法