从RVDS(ARM RealView Development Suite)迁移到RealView微控制器开发套件(MDK-ARM)
RealView微控制器开发套件(MDK-ARM)提供了一系列的功能,非常适合于标准的微控制器(MCU)设备,使用户更快、更容易的进行项目开发。本应用笔记介绍如何将ARM RealView Development Suite(RVDS)项目导入到MDK-ARM中。
MDK-ARM详细介绍:http://www.myir-tech.com/products/arm/mdk-arm/index.htm
RVDS详细介绍:http://www.myir-tech.com/products/arm/rvds/index.htm
Tool Component |
RealView Development Suite (RVDS) |
RealView Microcontroller Development Kit (MDK-ARM) |
---|---|---|
Compiler | RVCT C/C++ Compiler, armcc | RVCT C/C++ Compiler, armcc |
Assembler | RVCT ARM Assember, armasm | RVCT ARM Assember, armasm |
Linker | RVCT ARM Linker, armlink | RVCT ARM Linker, armlink |
IDE | CodeWarrior | μVision |
Debugger | RealView Debugger | μVision |
Simulator | RealView ISS | μVision |
Cores Supported | All ARM Cores | N/A |
Devices Supported | N/A | >150 ARM based MCU's (www.keil.com/arm/chips.asp) |
这两款产品(RVDS和MDK-ARM)使用相同的RealView编译工具,这样转换起来并不困难。而它们的不同之处是,项目的处理和目标调试的接口:
- RVDS中的IDE/调试器支持所有ARM内核(ARM7TDMI,ARM966E-S等),是内核定制的。
- μVision IDE/调试器针对特定的微控制器,这在创建项目时选择。
要将RVDS项目转换到MDK-ARM,需按照以下步骤:
- 创建一个新的项目,并指定目标设备
- 将汇编源文件和C源文件添加到项目
- 配置设备的具体参数并输入内存配置
- 选择工具特定选项,如编译器优化级别
- 重新编译项目
步骤1:创建一个新的项目
转换项目的第一步是,在μVision RealView MDK-ARM(IDE)上创建一个新的项目,并选择正确的目标设备。
创建新项目
打开µVision.
- 使用Project - New Project创建一个新项目。
- 从设备Database中选择目标设备。
- 提示将启动代码复制到项目文件夹中
- 如果已经有了启动代码,点击NO并且添加该启动代码(添加方法见下一步)。
- 如果没有,点击YES导入制定的启动代码到项目中。
步骤2:将源文件添加到项目
下面需要增加你的C源代码文件,并重新编译新的项目。
添加项目源代码
- 右击 “Source Group 1”
- 选择 “Add Files to Group 'Source Group 1' ”
- 浏览C文件并添加到项目中。
步骤3:配置设备参数
设备相关的内存映射和调试参数需要进行配置,以符合你的项目。
使用 Project - Options for Target来打开选项。
为项目配置正确的设备属性,如XTAL或存储区。
- 在Debug 标签. 为选项配置 Simulator 或者 ULINK ARM Debugger.
步骤4:选择工具特定选项
使用Project - Options for Target 对话框中的选项,进行配置 C/C++(编译器)、ASM(汇编)和连接器。
RealView MDK和ARM RVDS一样,也使用RealView编译工具。配置C/C++,汇编,连接器选项,以匹配以前的RVDS项目。
- 有两种方法创建scatter文件:
- 如果选择Use Memory Layout from Target Dialog,µVision会根据上面的步骤创建scatter文件。
- 如果已经有了scatter文件,则关闭 Use Memory Layout from Target Dialog,然后选择scatter文件。
步骤5:重新编译项目
使用Project - Build target生成应用程序,这将生成可执行映像文件。该项目现在可以用μVision调试器连接模拟器或ULINK ARM调试器进行测试和验证。
要在目标硬件上进行测试,需连接ULINK仿真器,然后使用Flash - Flash Download命令下载应用程序。如果更改Flash编程选项,可在项目Project - Options for Target - Utilities - Settings进行配置。
使用Debug - Start/Stop Debug Session 启动程序调试,它同样可以测试程序。
下表简要介绍了几个调试命令。
调试命令 | 描述 |
---|---|
![]() ![]() ![]() |
调试器命令允许您单步执行代码,设置断点,并运行目标程序。ISD51可配置Flash断点,即使你设置断点也允许实时执行程序代码。 |
![]() |
Watch窗口允许您查看多组程序变量 |
![]() |
目前的程序行(汇编语言或C语言)都标有一个黄色的箭头。你可以使用 Show next statement 按钮来查看源代码。 |
从RVDS(ARM RealView Development Suite)迁移到RealView微控制器开发套件(MDK-ARM)相关推荐
- RealView Development Suite 4.0 Professional安装
我所做的嵌入式系统以ARM为主,用的开发工具是ADS1.2,这套工具说实话不甚好用,尤其是用过了Eclipse编写Java和C的程序以后,对ADS的编辑器CodeWarrior简直到了深恶痛绝的地步, ...
- 基于VS Code搭建通用ARM微控制器开发平台
基于VS Code搭建通用ARM微控制器开发平台 Data Author Version Note 2022.04.12 Dog Tao V1.0 Release as V1.0 - 使用基于STM3 ...
- 基于ARM Cortex-M4处理器的32位RISC微控制器
Spansion是全球最大的专门提供闪存解决方案的公司.几乎所有电子设备中都会用到闪存产品,如手机.汽车.打印机.网络设备.机顶盒.高清电视.游戏机及其他电子消费品.如今人们不论在家中.办公室或是外出 ...
- RVDS-RealView Development Suite 4 0 Professional软件
RVDS-RealView Development Suite 4.0 Professional软件 RealView Development Suite 4.0 Professional 软 ...
- 痞子衡嵌入式:ARM Cortex-M内核那些事(2)- 第一款微控制器
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是第一款Cortex-M微控制器. 1.天生荣耀:ARM Cortex-M处理器由来 ARM公司自2004年推出ARMv7内核架构时,摒弃 ...
- 清华大学视频:ARM微控制器与嵌入式系统
清华大学视频课件:ARM微控制器与嵌入式系统(2017) 本课程课程要求学生具备C语言编程基础,在课程中逐步讲解ARM微控制器(单片机)与嵌入式系统,面向实践安排教学,鼓励动手实践和自由创新,适合想参 ...
- toad dba suite for oracle 12,Toad DBA Suite 和Toad Development Suite的区别
这两个版本都包括了Toad.Sql Optimizer.Data Modeler.Toad DataAnalysi.Konwledges等基本软件.DBA版又增加了Spotlight On Oracl ...
- 从应用迁移到平台微认证:鲲鹏技术解读
摘要:山西鲲鹏开发训练营主要分为鲲鹏生态介绍.鲲鹏应用代码迁移指导.C/C++和 Java 代码迁移沙箱实践及微认证几大环节. 8 月 27 日,华为 DevRun 开发者沙龙来到太原,在山西转型综合 ...
- 意法半导体STM32 ARM Cortex 32位微控制器
STM32系列32位微控制器基于Arm® Cortex®-M处理器,旨在为MCU用户提供新的开发自由度.它包括一系列产品,集高性能.实时功能.数字信号处理.低功耗/低电压操作.连接性等特性于一身,同时 ...
最新文章
- Mac OS X安装Git
- C#中Socket多线程编程实例
- 直播预告:基于强化学习的关系抽取和文本分类 | PhD Talk #18
- 蓝桥杯 历届试题 九宫重排 (bfs+康托展开去重优化)
- php crypt mysql password_使用PHP 5.5的password_hash和password_verify函数
- Pandas时序数据处理入门
- console中应用MFC类的方法
- jquery mysql表格_使用jQuery设计数据表格:设计表格基类
- sql语句分析是否走索引_mysql sql语句执行时是否使用索引检查方法
- vue ui创建项目时ERROR Failed to get response from Error: JAVA_HOME is not set./vue-cli-version-marker
- [kuangbin带你飞] 专题一 简单搜索 题解(超详细注释,史上最强题解)
- XXX集团财务决策支持系统的起因(系列二)
- 配置项目构建完成后文件移动---- Jenkins自动化部署学习笔记(三)
- Android开发之so文件使用方法详解
- 【process on】 怎么绘制直线
- python语音播报天气预报_Python3爬虫之自动查询天气并实现语音播报
- STM32中的串口通信的基础知识
- 【徒手训练】来自美国特种部队的徒手三角肌训练法
- Vivado中Simulator仿真软件的使用
- JS中 new FormData() - FormData对象的作用及用法
热门文章
- Mybatis-plus进阶之分布式id生成
- 并行计算模型有哪些?
- 宿主机(Windos)上文件上传至Ubuntu (linux)
- 东风风神S30 1.5MT 模仿中进步
- 百度全民小视频主播火热招募中,星球传媒教你如何实现自己的主播梦
- 接口Mock测试结合postman运用
- SD-WAN设备白盒刷机
- 搞点Python骚操作,自动美化excel表格
- LaTex书写日文教程 / upLaTex、pLaTex的使用 / latex配置日语编译环境方法
- 2020 CCF 非专业级别软件能力认证第一轮(CSP-S) 提高级 C++ 语言试题