MDK(μVsion3)问题总结及解决方法

问题 1:MDK 工具的 CARM 编译器? 我原来对 CARM 编译器比较熟悉,想用 CARM 编译器编译工程,但是却弹出一个不能执 行“cc”的错误,到 KEIL 网站查下才知道原因:由于 CARM 编译器是比较老的编译器,并且 KEIL 公司两年前已经停止了对 CARM 编译器的维护与升级,所以目前 KEIL 公司已经没有把 CARM 编译器集成到 MDK 开发工具里面来。于是我就改用 RealView 编译工具,却发现 RealView 编译工具确实很好用,编译效率很高,不愧为业内最优秀的编译器啊,呵呵,所以 建议大家都用 RealView 编译器吧。不过现在 KEIL 网站也可以下载 CARM 编译器,版本为 2.54, 

问题 2:使用 MDK 工具将程序下载到 RAM 里面调试? MDK 支持将代码下载到 RAM 中进行调试。之前我以为只能通过编写脚本文件的方法, 后来看帮助文档才知道有一个更为快捷的方法,点下鼠标就可以了。可以有两种方法实现 RAM 下载的功能。

我们只需要简单的设置就可以实现此功能。具体方法大家可在 MDK 帮助文档里看到: MDK 帮助文档(Help)->RealView 编译工具简介->嵌入式程序->指定存储域。在这一章节 说明了将代码拷贝到 RAM 中执行的方法。也就是只要点下鼠标就可以实现的方法。 方法二 我们可以写脚本文件实现这一功能,脚本文件的写法和 ADS 或者 Embest IDE 大致相同, 只是有些格式需要稍微修改,具体写法大家可以参阅 MDK 里面的 PDF 帮助文档,文档路进 为:打开 MDK 工具->workspace->books->双击 RV Linker/Utilities 打开 PDF 文档->第五 章 Using Scatter-loading Description Files。这里面有关于脚本文件的详细讲述。 脚本文件写好以后我们需要以下步奏添加到工程中去: 1:打开“option for target” 2:在“linker”里面去掉“use memory layout for target dialog”的选择,在“scatter file” 中点击“…”指定你编写好的脚本文件的路径。单击右边的“eidt”可以编辑脚本文件。 3:单击确认 说明:选中“use memory layout for target dialog”这一项实际上是默认在“target”中对 Flash 和 RAM 的地址配置,编译链接时会产生一个默认的脚本文件。

问题 3:关于 License 的问题 我之前就因为 License 使用不当造成我的工具用不了,经过技术支持的处理才解决,所 以建议大家一定要在 License 使用上要慎重。

1、卸载 MDK 开发工具或者格式化 MDK 所在硬盘分区时一定要先卸载 License,不然就 会导致不可预料的后果,如 License 不可用或者 License 不可再申请等。 

2、License 与硬件(比如网卡 MAC 地址)是绑定再一起的,在一台电脑上使用过的 License 不能拿到另外一台电脑上使用,如果有这个需要的话,需要先卸载 License 然后再用需要使 用 License 的电脑去申请一个新的 License,但是 License 卸载次数不能超过两次。

问题 4:“Could not stop ARM device” 我在使用 LPC2364 开发板进行调试的时候,有时会出现“Could not stop ARM device,please check the JTAG cable”的现象 该现象与开发板的频率有关以及仿真器的频率有关,将 JTAG Clock 调低到 100KHz,晶振频率 设置再 12MHz 左右就可以了。我想其它板子出现此情况也可以参照这个办法吧,再不行就 干脆拔了仿真器再接上(很管用的)。

问题 5:将二进制可执行文件(bin)通过 MDK 烧写到板子里面的方法 我之前用过 ADS,想把 ADS 下面编译通过的 BIN 文件通过 MDK 下载到开发板里面去,结 果下不进去,经过咨询才知道原来是因为 MDK 暂时不支持直接烧写二进制格式的可执行文 件(bin 文件),对于二进制文件的写入方式是先将二进制文件(bin)转换为十六进制文件 (hex)。转换完成后按照以下步奏完成文件的烧写: 1、通过 Project - New Project....菜单命令产生一个μVision 工程文件; 2、在设备数据库中选择合适的微控制器,但是不要将初始化代码拷贝到工程中去; 3、在 Project - Options for Target - Output 页中输入即将生成的十六进制文件名; 4、按照配置 Flash 菜单中所述的内容设置下载工具;当使用“Flash – Download”命 令时, μVision 会将指定的十六进制文件下载到 Flash 中 。二进制到十六进制文件的转换 需要采用相关的转换程序;这个在 keil 的网站上有提供。 问题 6:调试时弹出 needs to close 对话框? 我在调试工程的时候有时会弹出“needs to close ”的提示,开始一直不知道是什么问 题,后来在网上搜索才知道该问题主要是工程代码问题,引起软件调试失败,更改程序或更 换正常程序后问题解决。 问题 8:Error:C3900:Unrecognized option '-O3'. 我使用的是 MDK 大众版,使用中曾弹出这个错误,原因是 MDK 中国版有三个版本,大 众版支持优化级别 0,企业版和专业版都能支持 0、1、2、3 四个级别,如果使用的是大众 版,选择高的优化级别是会出错的 2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/23362.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java之基础2笔记

1 类型转换 1.1 自动类型转换(隐式类型转换) 从小的数据类型到大的数据类型的转换(如 int 到 long)。 从低精度的数据类型到高精度的数据类型的转换(如 float 到 double)。 1.2 强制类型转换&#xff0…

什么是接地电阻柜呢?

接地电阻柜是一种用于保护电气设备和人身安全的设备,它可以有效地防止电气设备因接地故障而受到损害。 接地电阻柜的主要作用是将电气设备的接地电阻降低到安全范围内,以防止接地故障引起的火灾、爆炸等事故。接地电阻柜通常由接地电阻、接地母线、接地开…

pytest中钩子函数的使用

收集测试结果: 2. pytest_terminal_summary(terminalreporter, exitstatus,config) 在测试执行完毕后,用于生成并显示最终的测试摘要信息到终端,你可以实现自定义的测试报告汇总和显示。 例如:你可以在此钩子函数中计算测试用例…

TypeScript基础语法和使用规则+对象初始化

TypeScript (TS) 是一种由微软开发的开源语言,它是 JavaScript 的一个超集,添加了可选的静态类型和基于类的面向对象编程。它旨在开发大型应用程序并将 JavaScript 编译成清晰和简洁的代码。 一、基础语法和使用规则 1. 类型注解 类型注解是 TypeScri…

关于Apache Tomcat请求走私漏洞(CVE-2023-46589)

一、 基本情况 Apache Tomcat是一个流行的开源Web服务器和Java Servlet容器。 二、 漏洞描述 Apache Tomcat中修复了一个请求走私漏洞(CVE-2023-46589)。 由于Tomcat未能正确解析HTTP Trailer标头,超出标头大小限制的特制Trailer标头可能…

儿童护眼灯哪个好?带你了解适合儿童的护眼灯款式分享

儿童护眼灯哪个好?作为我们日常生活中极为实用的小家电,为了确保使用台灯时的舒适性并且保护视力,选择一款专业的护眼台灯成为了一个明智的决定。这样的台灯能够提供更舒适、均匀的照明环境,那么到底儿童护眼灯哪个好你&#xff1…

实现手机空号过滤或手机号码有效性验证

手机空号过滤或手机号码有效性验证通常涉及使用专门的API接口来查询手机号码的状态。这些API接口通常由第三方服务提供商提供,它们会与电信运营商合作或利用自己的数据库来验证手机号码是否真实存在、是否已被分配、是否处于空号状态等。 以下是一些步骤和考虑因素…

关于我做了一个python项目的总结

前言: 首先,我通过python的爬虫技术做了一个关于音乐的项目,实现的功能有搜索音乐,输出歌词,保存歌词,下载音乐 项目构思: 在刚开始时,首先是构思,构思自己要去做哪个方面的,并且要怎么去实现我想实现的功能,然后我就想到要去做一个关于音乐方面的 项目实现: 确定了自己的方向…

爬虫——有道云翻译

废话不多说直接上代码 固定文本内容 import timefrom selenium import webdriver from selenium.common.exceptions import NoSuchElementException, TimeoutException from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWai…

Day 41 NGINX详解

Nginx详解 一、HTTP协议 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。 1、HTTP 工作原理 HTTP协议通信流程 WEB Server&…

超维小课堂 | 6、MAVROS与机载电脑Jetson nano通信

MAVROS与机载电脑Jetson nano通信 ROS系统镜像——Jetson nano b01 4G 链接: 百度云镜像链接 链接:https://pan.baidu.com/s/1NoIEvVdsiYLPvVOWM98hjQ 提取码:cwkj 简介:MAVROS和Jetson nano通信,设置飞控参数和MAVROS文件&am…

Starlette

Starlette是一个轻量级的ASGI框架和工具包,主要用于构建高性能的asyncio服务。它具备以下特点: 轻量级HTTP Web框架:Starlette提供了一个简单且复杂度低的HTTP Web框架。WebSocket支持:允许在应用中实现WebSocket功能。后台任务&…

程序猿大战Python——了解Python

了解Python 编程语言的发展 目标:了解编程语言。 我们知道,咱们的日常沟通交流使用的语言:普通话。 那什么是编程语言呢? 【官方解释】编程语言是用来定义程序的语言形式,也就是说,我们可以通过编程语言…

学习使用js监测浏览器窗口大小变化

学习使用js监测浏览器窗口大小变化 在JavaScript中,可以通过监听resize事件来检测浏览器窗口的大小变化。以下是一个简单的示例代码,用于检测浏览器窗口大小的变化并在控制台输出新的窗口尺寸: javascript // 定义一个处理窗口大小变化的函数…

el-table后台接口返回数据动态合并单元格

在实际工作中&#xff0c;通常数据都是后台接口返回的&#xff0c;有时需要对数据进行合并&#xff0c;可利用el-table的span-method方法&#xff0c;结合数据处理&#xff0c;进行合并&#xff0c;如下实例 <el-table :data"dataTable"borderrow-key"id&qu…

root账号,cmd命令行能用ssh连上服务器,但是vscode连接报错Permission denied,please try again

☆ 问题描述 但是cmd能连接上 ★ 解决方案 点击 然后add到自己的配置文件下 重新选择 这个时候就会出现刚刚添加的&#xff0c;点击选择 输入密码 然后就ok了 ✅ 总结 只能说&#xff1a;玄学&#xff01;

剪画小程序:自媒体必备神器:【视频翻译】自动识别语言、翻译、配音,让外语视频秒变母语!

Hello&#xff0c;大家好呀&#xff01;我是不会画画的小画~ 今天给大家带来一款敲实用的视频翻译工具一一 小程序【剪画】 我们有很小伙伴在学习他国语言时&#xff0c;最大的障碍就是语言的问题了&#xff0c;想要 理解其中的内容&#xff0c;在这之前要下很大的功夫去掌握…

创业新风口:智能售货机的崛起

随着科技的飞速发展&#xff0c;智能售货机已经不再是简单的自动贩卖机&#xff0c;它们变得更加智能、灵活&#xff0c;能够适应各种场景需求&#xff0c;从传统的饮料、零食到新鲜水果、便当、甚至是电子产品&#xff0c;无所不包。这种24小时无人值守的商业模式&#xff0c;…

居民社区团购小程序源码系统 拼团管理+团长管理功能 带完整的安装代拿代码包以及搭建教程

系统概述 居民社区团购小程序源码系统是一款专为社区团购打造的一站式解决方案。它整合了拼团管理和团长管理等核心功能&#xff0c;能够帮助企业和创业者快速搭建自己的社区团购平台&#xff0c;实现高效运营和便捷管理。 代码示例 系统特色功能 1.拼团管理&#xff1a;支持…

工业互联网基本概念及关键技术(295页PPT)

资料介绍&#xff1a; 工业互联网的核心是通过工业互联网平台把设备、生产线、工厂、供应商、产品和客户紧密地连接融合起来。这种连接能够形成跨设备、跨系统、跨厂区、跨地区的互联互通&#xff0c;从而提高效率&#xff0c;推动整个制造服务体系智能化。同时&#xff0c;工…