【问题标题】:Simulating Circuits and Programming Micro-controllers over Linux在 Linux 上模拟电路和编程微控制器
【发布时间】:2011-05-10 20:33:24
【问题描述】:

我即将完成一个控制机械臂的微控制器项目。我的问题是@MS Windows 有 MikroElectronica (IDE: MicroC) 将 .c 编译为 Hex 将十六进制放入 Proteus 并进行模拟。然后使用带有 CD 的特殊 (PCB) 套件(携带 windows 软件),我将放置微芯片并安装 hex 文件或其他任何东西。

首先是对女士的尊重,但我只是讨厌它!我喜欢 Ubuntu/linux 和开源,我需要专家在“步骤”中告诉我如何以最小的复杂性完成前面提到的 linux。

和我一起的机电工程师总是吹嘘女士很容易。我想向他们展示计算机科学专家如何使用开源技术以及它的强大和可靠性。

请帮忙!

【问题讨论】:

  • 您是在寻找特定的微控制器工具等,还是想证明开源 linux 与 windows 一样简单,有时甚至更容易。在很多地方,开源会更容易,有时不会,但是针对特定板的特定库/rtos 的特定工具,您可能会被锁定在 Windows 中,或者 linux 解决方案可能会很痛苦。
  • 我相信高科技c编译器有一个linux版本,很确定他们是这样做的,就像我在被microchip收购之前使用他们的arm工具一样。那里有大量的图片用户,其中一部分是 linux 用户。那里可能有很多图片汇编器和图片模拟器。

标签: c linux compiler-construction embedded pic


【解决方案1】:

您希望通过在 Linux 上运行专为其他操作系统设计的产品来展示 Linux 的强大功能吗?这些工具很有可能在Wine 中工作。

或者您可以使用Hi-Tech C 作为编译器并尝试gEDA 进行模拟。如果您正在使用 16 位 PIC:s,也可以在 Linux 上编译 Microchip C30。无论如何,这可能不像使用开箱即用的 Windows 工具那么简单。不过,这将更具教育意义。

【讨论】:

  • 我更喜欢 verilator 而不是 icarus verilog,但两者都很好。根据图片在verilog中找到图片克隆或只是创建自己的图片并不是什么大任务,它是一个简单的指令集。外围设备可能需要比核心更多的工作。 verilator 让跨越硬件/软件边界变得超级容易,您可以通过这种方式模拟电路板/系统的其余部分。
  • 那么从你的链接中,微芯片开源了他们的一些工具吗?
  • @dwelch,是的,“用于 PIC24 MCU 和 dsPIC DSC 的 MPLAB C 编译器”基于 gcc,编译器源代码可用。不过,他们还没有发布他们的 libc 源代码。
【解决方案2】:

如果您可以灵活选择 AVR,那么您将拥有免费的 GCC 编译器和编程工具。所有开源和 Linux/Mac 友好。更多信息请访问 www.avrfreaks.com。

【讨论】:

    【解决方案3】:

    Here 是 Linux 上 PIC 的编译器、链接器和模拟器教程。 Here 是使用 SDCC c 编译器的一种。当你搜索 linux pic 时,Google 会抛出很多网站。

    【讨论】:

      【解决方案4】:

      就我而言,我在 Linux 上对 Microchip dsPIC 进行交叉编译和编程,但这并不简单。这是重要的步骤

      首先,我从 Microchip 源代码构建了 C30 工具链(您需要在给定的源代码上应用一些补丁才能对其进行编译)。 获得工具链二进制文件后,您将需要特定的 Microchip MCU 资源。这些是在 win32 上安装 C30 时附带的。我将这些文件从 Windows 安装文件夹复制到我的 linux 文件系统中。 在这里你应该可以通过命令行编译和链接一些 C & ASM 代码到一个 hex 文件。

      第二步,我想在 Eclipse IDE 中构建我的项目。为此,我们“只需”编写几个 makefile 来调用我们的新 C30 工具链。

      第三步,将 .hex 编程到您的微芯片 MCU 上。有两种方法可以做到。如果您有 Pickit2,Microchip 提供了一个命令行工具来使用它。我个人有一个 ICD2 编程器。我使用 Piklab 项目中提供的命令行工具。

      现在我没有任何工具可以在 Linux 下使用我的 ICD2 进行调试。 现在 Microchip 提供了一个带有“Mplab X”的替代 IDE,它基于 Netbeans (sick),应该可以在 Linux 和 MacOS 下工作。不过这个项目好像还在开发中,不知道是不是真的有用。

      【讨论】:

        猜你喜欢
        • 2010-09-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-01
        • 1970-01-01
        • 2021-12-03
        • 1970-01-01
        相关资源
        最近更新 更多