【问题标题】:Go port to the AVR architecture?移植到 AVR 架构?
【发布时间】:2009-11-13 01:19:58
【问题描述】:

自从我听说了谷歌的新语言 Go,我就想用它来进行微控制器编程。特别是 Atmel AVR 微控制器,例如 Atmega 系列。这种架构有 Go 端口吗?

【问题讨论】:

  • 也许你可以用 gccgo 连接它:golang.org/doc/gccgo_install.html
  • 鉴于它得到了多少关注,我认为它不会很长。 Go 看起来很酷,是我最喜欢的所有语言中最好的部分。在接下来的几年里,看看人们用它做了什么会变得很有趣。
  • Arduino Uno (ATmega 328 PU) 似乎有一个非常粗糙的端口,所以你可以通过它来寻找灵感gobot.io/documentation/platforms/arduino/#how-to-use
  • 截至 2020 年,Tinygo 支持 ATmega328P(在 Arduino Nano 开发板上),甚至对 ATtiny85 的支持有限(在 Digispark 开发板上)

标签: programming-languages go avr


【解决方案1】:

我可能回答得太晚了,但是 Go,截至 2012 年 8 月,既有默认编译器(6g、8g)和 GCC 编译器(它实际上也是官方的,但不是默认的),这意味着它支持GCC 支持的所有架构;然而,正如 Limbus 所说,Go 是针对多核计算机的。我个人认为使用 C 会得到更好的结果。如果你仍然想使用它,那很好,因为 Go 在单核应用程序中管理得很好(但不如 C)。

【讨论】:

  • 这可能是真的,但遗憾的是,我找不到任何这样做的例子。似乎没有人尝试过,但也许只是语言的名称使搜索变得困难。
  • 这个答案已经过时了。请参阅 Chris's answer 中的 tinygo 以及 embdgobot
【解决方案2】:

不,没有。见http://golang.org/doc/install.html

Go 编译器支持两种操作 系统(Linux、Mac OS X)和三个 指令集。 (amd64、386 和 arm (又名 ARM))

【讨论】:

【解决方案3】:

tinygo 是用于 AVR(Arduino 等)和其他嵌入式系统的有限 golang 编译器。它支持核心语言和标准库的子集。

【讨论】:

    【解决方案4】:

    我不认为 Go 的目的(多核/高可扩展性)与 mikrocontrollers 配合得很好。

    去问问自己为什么在微控制器上 C(甚至汇编)比 C++ 更受欢迎。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多