I have explored, does Go support on Micro Controller Unit. Got some info that is TinyGo. Have doubt is TinyGo equivalent to Golang which support in Linux.
1
There are 1 best solutions below
Related Questions in GO
- How do I get all the attributes of an XML element using Go?
- Type cast custom types to base types
- Why are Revel optional func parameters in controller not working? CRUD code redundancy
- Streaming commands output progress
- single ampersand between 2 expressions
- golang goroutine use SSHAgent auth doesn't work well and throw some unexpect panic
- How do I do a literal *int64 in Go?
- Emulating `docker run` using the golang docker API
- How to print contents of channel without changing it
- Golang time zone parsing not returning the correct zone on ubuntu server
- Is os.File's Write() threadsafe?
- How to get the pointer of return value from function call?
- How do I represent an Optional String in Go?
- Fibonacci in Go using channels
- Boltdb-key-Value Data Store purely in Go
Related Questions in MCU
- Would IIC SCL signals trigger MCU to enter debug mode when the IIC SCL pin and the STLINK SWCLK pin are connected to the same GF pin?
- How can I use STM32 sleep mode with UART
- Detecting SCL/SDA ports
- ESP32 Microcontroller ADC conversion problems
- Average values in c, without exceeding value data type?
- Union in bit field for mcu register mapping in C++
- C++ Virtual destructors ROM usage
- Configurations variables removed by compiler
- STM32H743ZI Nucleo seems unable to transmit via FDCAN 2?
- download file from BAIDU
- How to understand the return value of uxtaskgetstackhighlwatermark()
- MCUxpresso imr rt - Position Independent Code result in mem fault on free rtos task activation
- Why this MX_RTC_Init() function in STM32F4 make program stuck?
- Can Python do Factory Method design pattern?
- Difference between events and interruptions
Related Questions in TINYGO
- Minimize integer round-off error in PLL frequency calculation
- Use tinygo to compile arm binary from x64 Linux : undefined reference problems
- How to get buttons working on Badger2040 in Tinygo
- Can Golang (Win11) send messages to a TinyGo USB HID device (Badger2040)
- How to return object from tinygo webassembly target
- CompileError: WebAssembly.instantiate(): param count of 1055 exceeds internal limit of 1000 @+219
- How to use .witx definitions for Go code generation to use with TinyGo WebAssembly targeting WASI?
- Failed to link whem trying to flash code to esp32 with tinygo
- Is it possible to make a Go binary smaller by compiling it with TinyGo?
- Does go supports in MCU?
- How to decode a JWT token with TinyGo
- Golang Bluetooth adapter.Scan stops by itself
- How do I make --import-memory work for WASM compiled by tinygo
- How do I control PWM output on Arduino using TinyGo
- How to write in tinygo bluetooth with response?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
The short answer: Yes, when using TinyGo.
The long answer: As of the time writing TineGo directly supports more than 70 different microcontroller boards. And about 65 different peripheral devices.
TinyGo is a new Compiler, which is written in Go that consumes normal Go code. It also makes use of the LLVM compiler toolchain to be able to emit the binaries needed for microcontrollers. Using TinyGo you can shrink a simple HelloWorld program from ~1MB binary size to about 480 bytes on an Arduino UNO.
TinyGo has reimplemented large parts of the Go standard libary, but not everything. Check out this site for more details on the support of std libraries.
IDE Integration: In order to achieve a nice developer experience, the TinyGo Team does also provide a VSCode Extension, which provides functionality to switch the context to your currently used board. That way the go language server and intellisense etc. are enabled to help you out while coding.
Also Jetbrains is working on a Goland Extension, which provides atleast the same functionality as the VSCode extension, if not even a little bit more.
Summary: TinyGo is not yet an in place replacement for Go, but you can already build really great things using TinyGo. If you want to start with microcontroller projects and want to use Go then chose TinyGo.