《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

相关文章

基于 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语言风格的格式化方法

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Spring 依赖注入与循环依赖总结

《Spring依赖注入与循环依赖总结》这篇文章给大家介绍Spring依赖注入与循环依赖总结篇,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. Spring 三级缓存解决循环依赖1. 创建UserService原始对象2. 将原始对象包装成工

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块