Embedded 微控制器编程开发工具的入门问题

Embedded 微控制器编程开发工具的入门问题,embedded,arm,microcontroller,cortex-m,Embedded,Arm,Microcontroller,Cortex M,我最近被分配了一项微控制器编程任务。我需要在设备上编程 我读了一些关于Microchip Technology的MPLAB IDE X的编程教程,因为它似乎包含了最多的信息,但看起来IDE只适用于Microchip产品 我应该为MKL05Z32VFM4选择什么开发工具?是否有通用的IDE和模拟器环境?有一些教程让我开始看吗 我为一个基本问题道歉。我是一个体面的通用软件开发人员,但我对这个领域非常陌生 那是Cortex-M0设备。你可以在网上找到很多信息。你可以从六点开始。就工具链而言,gcc和c

我最近被分配了一项微控制器编程任务。我需要在设备上编程

我读了一些关于Microchip Technology的MPLAB IDE X的编程教程,因为它似乎包含了最多的信息,但看起来IDE只适用于Microchip产品

我应该为MKL05Z32VFM4选择什么开发工具?是否有通用的IDE和模拟器环境?有一些教程让我开始看吗


我为一个基本问题道歉。我是一个体面的通用软件开发人员,但我对这个领域非常陌生

那是Cortex-M0设备。你可以在网上找到很多信息。你可以从六点开始。就工具链而言,gcc和clang都是自由的,支持ARM,可以很好地工作。你也可以用ARM的工具,如果你喜欢的话。用于调试的JTAG将花费您的成本-大多数人使用ARM内部的RealView调试器或Lauterbach提供的Trace32。我还使用了Abatron的BDI3000。

(如果你打算使用一些商业工具链,如Keil、IAR或类似的东西,这篇文章将部分无用)

对于ARM Cortex设备,您有很多选择(;如果您想进行一些自动翻译,可以查看我的网站-我写了一篇关于(开源)的教程)ARM的工具链——不幸的是,它没有翻译成英语,所以你必须使用google translate。你可能会发现还有一些其他有用的资源,特别是我的模板/示例项目(下载中)。如果您曾经使用过Eclipse、Makefile和GCC,那么整个主题对您来说应该很简单。大多数示例项目将接近您所需要的,但您可能应该检查示例STM32(any)-这是Cortex-M3,以及示例LPC1114-这是Cortex-M0

至于模拟器,我个人认为它们不值得麻烦,最近的GCC工具链禁用了它,因为它是唯一的指令模拟器,您将无法轻松模拟外围设备。如果您想模拟指令,只需为PC编写代码,因为它将以同样的方式工作(;如果你需要在真正的硬件上检查一些东西,你可以使用GDB和JTAG。只要它不是一些非常昂贵的专有设计(你可以再次检查我的网站以获得其他选项),这些工具几乎是免费的——OpenOCD(GDB服务器)是开源的,你可以购买基于FTx232的JTAG(OpenOCD最流行的一种)起价约30美元

大型商业工具链有时会有带有外设模拟的模拟器,但这些模拟器的成本为几千欧元/年(

谷歌搜索“ARM Cortex”,关键词包括:toolchain、gcc、openocd、debugging、jtag等,查找一些文章——网络上有很多这样的文章

你的问题非常笼统,很难回答,因为我们不知道你将使用什么工具,你是否计划使用一些外部库,你将用这些设备做什么工作等等

根据我的经验,与嵌入式世界的接触对PC软件开发人员来说通常是一个巨大的冲击。它的工作原理基本相同,但由于资源有限,你真的应该做不同的事情。你没有“+无限”在RAM中,通常应该尝试在ROM中安装很多东西。当然,这里只有C和C++,但是在C++中,你不应该使用它的一些特性(异常,RTTI,IOFROW,STL的部分……),动态分配内存不是一个好主意(用你提到的芯片-4KB RAM——我认为这是毫无疑问的)。

你提到的芯片非常小,所以它可能会是一个更大的冲击(


试着问一些具体的问题,并提供更多关于你的项目的细节,这样我们就可以给出更详细的答案(;

它看起来像飞思卡尔MCU。飞思卡尔的IDE选择CodeWarrior。

一个好的起点是零件制造商的网站,通常他们会有工具或链接到推荐的第三方以及应用程序说明和库。从页面开始


飞思卡尔自己的CodeWarrior工具是基于Eclipse的。

我不会说“大多数人使用RealView”,这对“大多数人”来说太贵了……对不起,我是说“RealView或trace32”。不过这只是我的经验。你知道一些(好的)吗更便宜的替代方案?我在回答中提到了一个免费/便宜的解决方案——GDB、OpenOCD和基于FTx232的JTAG。我也不同意“大多数人”使用realview和trace32.我想说大多数人使用openocd和一种便宜的基于ftdi的jtag设备,这种设备经常出现在这类硬件的eval板上。看起来CodeWarrior不是免费的(实际上相当昂贵)。还有其他选择吗?@CodeNoob:你明确没有要求免费!我发布的链接包括至少两个选择的链接。Keil MDK-ARM和IAR的EWBARM工具的免费/评估版本适用于32K代码,因此适合你的角色,但不适用于商业开发,但既然你想要免费,这可能不是对于商业用途?你当然可以使用GCC,例如提供商业、评估和免费的“lite”工具链。你听说过CoIDE()吗?你觉得它怎么样?我听说过,但在我和它的作者“讨论”之后(从第11篇文章开始)不久前,我从未被感动去调查此事。最终,除了IAR和ARM(拥有Keil,Keil也是如此),和Green Hills,包括CooCox在内的大多数开发工具都在幕后使用GCC工具链。任何特定IDE的附加值都是可变的。Rowley Associates是您可能会看到的另一个供应商;不同之处在于,虽然它使用GCC,但它们有自己的调试器和C/C++库。嗨,Freddie,通过谷歌搜索我会发现。你认为呢你想到那个IDE了吗?嗨,弗雷迪,再次感谢你的回复。你能看看我的新q吗