Язык программирования Swift был разработан Apple для iOS, iPadOS, macOS, watchOS, tvOS и Linux. Язык программирования работает с фреймворками Apple Cocoa и Cocoa Touch, а также с существующим кодом Objective-C, написанным для продуктов Apple.
MadMachine создала плату для разработки на базе Arm Cortex-M7 под названием SwiftIO, специально разработанную для языка программирования Swift с помощью MadMachine IDE и инфраструктуры SwiftIO.
Технические характеристики оборудования SwiftIO:
- SoC – кроссоверный процессор NXP i.MX RT1052 Arm Cortex-M7 с тактовой частотой 600 МГц
- Системная память – 32 МБ SRAM
- Хранилище – слот для карты MicroSD с поддержкой SD-карт стандартной и большой емкости
- USB – 1x разъем Micro USB для питания, 1x разъем Micro USB для последовательной связи
- Расширение – 2x 46 GPIO разъема с 12x 12-битными аналого-цифровыми преобразователями (ADC), 4x UART, 2x CAN, 2x IIC, 2x SPI, 14x PWM
- Разное – встроенный RGB-светодиод, кнопки загрузки и сброса
- Электропитание – 5 В через порт Micro USB
- Размеры – требуется уточнение
MadMachine IDE является эквивалентом Arduino IDE для плат, совместимых с Arduino, и позволяет разрабатывать программы Swift в Mac OS X или Windows, с поддержкой Linux.
Схема архитектуры программного обеспечения показывает, что плата использует операционные системы реального времени Zephyr, а MadMachine предоставляет высокоуровневый API для управления вводом-выводом с использованием языка программирования Swift.
Поскольку MadMachine IDE еще не доступна для Linux, мы установили IDE (270 МБ) на виртуальную машину Windows, и рабочий процесс разработки похож на то, что вы делали бы с платами Arduino, поскольку полученный двоичный файл загружается на плату через кабель micro USB. Вот как выглядит скетч Blink:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
/// Turn on and off the onboard LED continuously. /// Import the library to enable the relevant classes and functions. import SwiftIO /// Initialize the onboard green LED with other parameters set to default. let green = DigitalOut(Id.GREEN) /// Blink the LED over and over again. while true { // Apply a high votage and turn off the LED. green.write(true) // Keep the light off for a minute. sleep(ms: 1000) // Apply a low voltage and turn on the LED. green.write(false) // Keep the light on for a minute. sleep(ms: 1000) } |
Вы также можете посмотреть видео ниже, чтобы узнать, с чего начать.
Вы также найдете документацию и примеры кода на Github.
Плату SwiftIO Arm Cortex-M7 можно приобрести сейчас за 68 долларов в магазине MadMachine, а также есть комплект стоимостью 118 долларов с различными компонентами, такими как зуммер, резисторы, сервопривод и т. д., позволяющий начать разработку электроники с использованием Swift. Более подробную информацию можно найти на сайте MadMachine.io.
Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.
Оригинал статьи вы можете прочитать здесь.