TinyGo, компилятор языка GO для микроконтроллеров, теперь работает на платах Arduino


Мощный, но простой в использовании, TinyGo занимает заметное место в секторе оборудования с открытым исходным кодом. О нем было хорошо сказано в интервью Рона Эванса, технолога по найму, размещенном в блоге Arduino, поскольку Arduino в настоящее время работает с TinyGo на постоянной основе.

Что такое TinyGo?

Целью TinyGo является доведение языка Go до микроконтроллера и новейших веб-браузеров, чтобы этот мощный язык мог функционировать в крошечных процессорных форматах, таких как процессоры Arduino Uno и Arm, процессоры типа Cortex-M и также BBC Micro:bit, STM32 Bluepill и некоторых других платах MCU из любого веб-браузера.

Как это работает

Это работает при помощи LLVM toolchain, и такой формат позволяет TinyGo компилировать программы на языке Go до размера, значительно меньше их первоначального размера, а затем переносить уменьшенную программу на языке Go непосредственно в микроконтроллер.

Программы для запуска в веб-браузере в формате WebAssembly

TinyGo может использоваться с WebAssembly (WASM) для программ, которые основаны на браузере, с высокопроизводительным кодом. Используйте TinyGo благодаря функции JavaScript, а затем вызовите функцию GO из WebAssembly, это не должно вызвать затруднений. GitHub предоставляет несколько файлов на нескольких языках, используя TinyGo, включая WASM (см. Ссылку ниже)

Как запустить TinyGo

Компилятор очень удобен для разработчиков, поскольку уменьшение общего размера кода, необходимого для запуска Go, помогает в тех небольших устройствах и ​​процессорах, где работают разработчики коммерческого IoT. TinyGo может быть установлен на Linux, macOS, Windows и Docker, а также из исходного кода, найденного на GitHub.

Arduino и TinyGo

TinyGo может быть в паре с Arduino Nano 33 IoT, платой с микроконтроллером SAMD21 Cortex-M0 +, а также модулем WiFi и Bluetooth. На GitHub есть пример того, как программы TinyGo могут быть перенесены непосредственно на плату, где выполнение программы осуществляется непосредственно на микроконтроллере.

Превосходные подходы к безопасности

Безопасность при разработке, развертывании и эксплуатации с использованием TinyGo — основное преимущество для периферийных вычислительных систем, которым требуется более высокий уровень безопасности. Код для TinyGo скомпилирован непосредственно в двоичный код, поэтому можно выполнить подписание кода и многие из наиболее используемых методов и подходов безопасности.

Дополнительные возможности безопасности

Кроме того, шифрование устройства выполняется между любым устройством и любым облачным хранилищем или аналитикой. TinyGo и Arduino Nano 33 IoT могут использовать стандартные API для связи SSL с облачными сервисами. Идея состоит в том, чтобы использовать такой API-интерфейс, как Paho MQTT-клиент Eclipse Foundation для Go. 

Информацию о программировании с использованием TinyGo можно найти на веб-сайте Tiny Gopher, где вы можете купить книгу или прочитайте раздел «Начало работы» на веб-сайте TinyGo. TinyGo на GitHub имеет множество кодов для разных типов ситуаций при использовании TinyGo.

Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 vote
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Inline Feedbacks
View all comments