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
相关文章:
MDK(μVsion3)问题总结及解决方法
问题 1:MDK 工具的 CARM 编译器? 我原来对 CARM 编译器比较熟悉,想用 CARM 编译器编译工程,但是却弹出一个不能执 行“cc”的错误,到 KEIL 网站查下才知道原因:由于 CARM 编译器是比较老的编译器࿰…...

手眼标定学习笔记
目录 标定代码: 手眼标定原理学习 什么是手眼标定 手眼标定的目的 eye in hand eye to hand AXXB问题的求解 标定代码: GitHub - pumpkin-ws/HandEyeCalib 推荐博文: https://zhuanlan.zhihu.com/p/486592374 手眼标定原理学习 参…...

Dell戴尔XPS 16 9640 Intel酷睿Ultra9处理器笔记本电脑原装出厂Windows11系统包,恢复原厂开箱状态oem预装系统
下载链接:https://pan.baidu.com/s/1j_sc8FW5x-ZreNrqvRhjmg?pwd5gk6 提取码:5gk6 戴尔原装系统自带网卡、显卡、声卡、蓝牙等所有硬件驱动、出厂主题壁纸、系统属性专属联机支持标志、系统属性专属LOGO标志、Office办公软件、MyDell、迈克菲等预装软…...

【第8章】SpringBoot实战篇之文章分类(上)
文章目录 前言一、后端代码1. CategoryController2. service3. CategoryMapper4. Category 二、测试1. 失败(校验)2.正常 总结 前言 从这开始进入文章相关的接口开发,本章主要介绍定义文章分类接口和新增文章分类 建表语句和测试用例,在SpringBoot专栏首…...
【QT】Qt Plugin开发
目录 插件是什么QT插件是什么 为什么要有插件开发插件开发优势插件和动态库区别 Qt PluginQT插件类型QT插件开发流程QT插件应用QT插件JSON文件 参考文章 插件是什么 插件(Plug-in,又称addin、add-in、addon或add-on,又译外挂)是一种遵循一定规范的应用程序接口编写出来的程序。…...
快速了解GPU分布通信技术:PCIe、NVLink与NVSwitch
在现代高性能计算和深度学习领域,GPU的强大计算能力使其成为不可或缺的工具。然而,随着模型复杂度的增加,单个GPU已经无法满足需求,需要多个GPU甚至多台服务器协同工作。这就要求高效的GPU互联通信技术,以确保数据传输…...

Python对获取数据的举例说明
当使用Python来获取数据时,有许多不同的方法和库可以根据你的需求来选择。以下是一些常见的示例,说明如何使用Python来从各种来源获取数据。 1. 从网站或API获取JSON数据 你可以使用requests库从网站或API获取JSON格式的数据。例如,从某个API…...

JVMの垃圾回收
在上一篇中,介绍了JVM组件中的运行时数据区域,这一篇主要介绍垃圾回收器 JVM架构图: 1、垃圾回收概述 在第一篇中介绍JVM特点时,有提到过内存管理,即Java语言相对于C,C进行的优化,可以在适当的…...
人工智能就业方向有哪些?
人工智能就业方向有哪些? 随着人工智能技术的不断发展,其应用领域也越来越广泛。对于想要进入人工智能领域的年轻人来说,选择一个合适的职业方向是至关重要的。今天给大家介绍六个热门的人工智能就业方向,分别是机器学习工程师、自然语言处理…...

自定义类型:枚举和联合体
在之前我们已经深入学习了自定义类型中的结构体类型 ,了解了结构体当中的内存对齐,位段等知识,接下来在本篇中将继续学习剩下的两个自定义类型:枚举类型与联合体类型,一起加油!! 1.枚举类型 …...
负载均衡加权轮询算法
随机数加权轮询算法 public int select() {int[] weights {10, 20, 50};int totalWeight weights[0] weights[1] weights[2];// 取随机数int offset ThreadLocalRandom.current().nextInt(totalWeight);for (int i 0; i < weights.length; i) {offset - weights[i];i…...

PyTorch 相关知识介绍
一、PyTorch和TensorFlow 1、PyTorch PyTorch是由Facebook开发的开源深度学习框架,它在动态图和易用性方面表现出色。它以Python为基础,并提供了丰富的工具和接口,使得构建和训练神经网络变得简单快捷。 发展历史和背景 PyTorch 是由 Fac…...

1千2初中英语语法题库ACCESS\EXCEL数据库
英语语法是针对英语语言进行研究后,系统地总结归纳出来的一系列语言规则。英语语法的精髓在于掌握语言的使用。比如词类有名词、代词、数词、感叹词等,时态有一般状态、进行状态、完成状态和完成进行状态四种,语态有主动语态、被动语态等。 …...

高德面试:为什么Map不能插入null?
在 Java 中,Map 是属于 java.util 包下的一个接口(interface),所以说“为什么 Map 不能插入 null?”这个问题本身问的不严谨。Map 部分类关系图如下: 所以,这里面试官其实想问的是:为…...
MySQL数据库主从配置
MySQL主从配置 1. 修改数据库my.cnf文件 修改数据库my.cnf文件,在文件中添加如下内容,其中主数据库的server-id必须要比从库的更小。 # 注册集群id server-id101 # 开启二进制日志文件 log-binmysql-bin # 设置日志格式 binlog-formatrow # 开启中继日…...
测试工程师经常使用的Python中的库,以及对应常用的函数
os (操作系统接口) 该库提供了许多与操作系统交互的函数,如文件处理、目录操作、进程管理等。 常用功能包括: os.name: 获取操作系统的名称。 os.path: 用于操作文件路径的模块,如os.path.join拼接路径。 os.mkdir: 创建目录。 os.remove: 删…...

【frp】服务端配置与systemd启动
ini配置的方式已经废弃。官方文档是toml 。阿里云ecs 部署服务端参考大神的文章 使用Frp配置内网访问(穿透) 0.54 版本 我现在用最新的0.58版本。systemd apt install systemdfrp服务端配置 /root/frp目录 vim frps.toml#服务绑定的IP与端口 bindAddr = "0.0.0.0" …...

计算机网络学习实践:模拟RIP动态路由
计算机网络学习实践:模拟RIP动态路由 模拟动态路由RIP协议 1.实验准备 实验环境:华为模拟器ENSP 实验设备: 3个路由器,3个二层交换机(不是三层的),3个PC机 5个网段 192.168.1.0 255.255.…...
详解 Flink 的常见部署方式
一、常见部署模式分类 1. 按是否依赖外部资源调度 1.1 Standalone 模式 独立模式 (Standalone) 是独立运行的,不依赖任何外部的资源管理平台,只需要运行所有 Flink 组件服务 1.2 Yarn 模式 Yarn 模式是指客户端把 Flink 应用提交给 Yarn 的 ResourceMa…...

【UE5.1 角色练习】11-坐骑——Part1(控制大象移动)
前言 在上一篇(【UE5.1 角色练习】10-物体抬升、抛出技能 - part2)基础上创建一个新的大象坐骑角色,并实现控制该角色行走的功能。 效果 步骤 1. 在商城中下载“African Animal Pack”资产和“ANIMAL VARIETY PACK”资产导入工程中 2. 复…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...

51c自动驾驶~合集58
我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...

Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...

让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
css3笔记 (1) 自用
outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size:0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格ÿ…...

html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...