Электронный компонент:Плата Arch BLE: различия между версиями
Myagkij (обсуждение | вклад) |
Нет описания правки |
||
Строка 48: | Строка 48: | ||
Вы можете открыть файл '''«main.cpp»''' и отредактировать программу. К примеру, код ниже мигает светодиодом каждые 0,1 секунды. | Вы можете открыть файл '''«main.cpp»''' и отредактировать программу. К примеру, код ниже мигает светодиодом каждые 0,1 секунды. | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
#include "mbed.h" | #include "mbed.h" | ||
Строка 91: | Строка 91: | ||
Если [[BLE]]-устройство часто отключается, стабильность соединения можно улучшить изменением параметров [[BLE]] – '''Advertising Duration''' (в файле '''«main.cpp»'''), '''Min Interval''' и '''Max Interval''' (в файле '''«nRF51822/projectconfig.h»'''): | Если [[BLE]]-устройство часто отключается, стабильность соединения можно улучшить изменением параметров [[BLE]] – '''Advertising Duration''' (в файле '''«main.cpp»'''), '''Min Interval''' и '''Max Interval''' (в файле '''«nRF51822/projectconfig.h»'''): | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
#define CFG_GAP_CONNECTION_MIN_INTERVAL_MS 20 /**< допустимый минимум для интервала соединения */ | #define CFG_GAP_CONNECTION_MIN_INTERVAL_MS 20 /**< допустимый минимум для интервала соединения */ | ||
#define CFG_GAP_CONNECTION_MAX_INTERVAL_MS 200 /**< допустимый максимум для интервала соединения */ | #define CFG_GAP_CONNECTION_MAX_INTERVAL_MS 200 /**< допустимый максимум для интервала соединения */ |
Текущая версия от 18:18, 14 мая 2023
Черновик |
Плата Arch BLE[1]
Arch BLE – это микроконтроллерная плата на базе чипсета Nordic nRF51822. Плата имеет форм-фактор Arduino и оснащена несколькими Grove-портами. Как заявляют разработчики, Arch BLE очень удобно использовать в качестве BLE-устройства (от «Bluetooth low energy», что значит «Bluetooth с низким энергопотреблением»).
Чипсет nRF51822 – многопротокольная однокристалльная ИС, предназначенная для проектов, требующих очень низкого энергопотребления. В него встроены трансивер, микроконтроллер ARM Cortex M0, 256 Кб flash-памяти и 16 Кб памяти RAM. Чипсет nRF51822 поддерживает BLE и стеки протоколов для работы в диапазоне 2,4 ГГц.
Купить плату Arch BLE можно по этой ссылке.
Особенности
- Особенности, связанные с платформой mbed
- Интерфейсная прошивка CMSIS-DAP (для микроконтроллера LPC11U35)
- Форм-фактор Arduino
- Grove-порты
- Чипсет nRF51822 производства Nordic (BLE 4.0, 2.4 ГГц, многопротокольный)
- Коннектор MicroUSB-B
Распиновка
С чего начать
- Кликните здесь, чтобы залогиниться или зарегистрироваться в mbed
- Импортируйте программу «mbed_blinky»
- Кликните по иконке Compile, которая находится вверху на панели инструментов, а затем загрузите скомпилированный HEX-файл
- Просто перетащите и бросьте загруженный HEX-файл на диск MBED
Вы можете открыть файл «main.cpp» и отредактировать программу. К примеру, код ниже мигает светодиодом каждые 0,1 секунды.
#include "mbed.h"
DigitalOut led(p30); // встроенный светодиод, подключенный к p30
int main()
{
while (true) {
led = !led;
wait(0.1);
}
}
Примечание: Если вы получите ошибку компилятора о том, что файл «device.h» не найден, попробуйте обновить библиотеку «mbed» в своей программе до последней версии.
Демо-проекты
Эта глава описывает несколько проектов, которые можно создать с помощью Arch BLE.
Лента из RGB-светодиодов, управляемая со смартфона
Сначала убедитесь, что у вас есть следующие компоненты:
- Плата Arch BLE
- Лента RGB-светодиодов с цифровым интерфейсом (можно купить, к примеру, тут)
- Смартфон с Android, поддерживающий BLE
Теперь подключите ленту к Arch BLE, как показано на схеме ниже:
Далее выполните следующие действия:
- Загрузите файл «BLE_Color_Pixels_Arch_BLE.hex»
- Скопируйте этот HEX-файл на диск MBED платы Arch BLE
- Загрузите на смартфон приложение Color Pixels Android
Если хотите модифицировать программу, кликните здесь, и она откроется в онлайн-IDE mbed.
Если BLE-устройство часто отключается, стабильность соединения можно улучшить изменением параметров BLE – Advertising Duration (в файле «main.cpp»), Min Interval и Max Interval (в файле «nRF51822/projectconfig.h»):
#define CFG_GAP_CONNECTION_MIN_INTERVAL_MS 20 /**< допустимый минимум для интервала соединения */
#define CFG_GAP_CONNECTION_MAX_INTERVAL_MS 200 /**< допустимый максимум для интервала соединения */
Игрушечная машинка, управляемая с мобильного телефона
Убедитесь, что у вас есть следующие компоненты:
Затем выполните действия, описанные в этом руководстве.
Обновление прошивки
Последняя версия прошивки для платы Arch BLE – это v0221, выпущенная 2 марта 2015 года. Чтобы узнать версию и дату выпуска своей прошивки, откройте в текстовом редакторе файл «MBED.HTM», находящийся на диске MBED.
Изменения:
- 2014-06-26 – Первая версия
- 2014-08-25 – Добавлена возможность записывать прошивку методом «drag-n-drop» (без использования Softdevice); прошивка представляет собой HEX-файл, генерируемый gcc
- 2014-10-08 – Вместо переподключения USB-порта теперь можно использовать USB EJECT INSET (прим. пер. – непонятно, что это; возможно, новая функция прошивки или функционал Windows для извлечения USB-устройства). Также увеличен размер буфера линии связи для HEX-данных (c 64 до128 байт)
- 2015-02-03 – Починен баг «Read-only file system», появляющийся на Mac OS X 10.10 Yosemite
Известные проблемы:
- Есть проблема при прямой загрузке HEX-файла на диск MBED при помощи браузера Chrome. Причина в том, что Chrome во время загрузки создает временный файл. Если используете Chrome, сохраните HEX-файл в другом месте, а затем скопируйте его на диск MBED.
Разные версии прошивок для Arch BLE:
Для того, чтобы записать прошивку, сделайте следующее:
- Зажмите кнопку на Arch BLE и включите плату
- Появится диск CRP DISABLD
Полезные ссылки
- Страница о плате Arch BLE на сайте Mbed
- Схема в PDF-формате
- Схема и файлы платы в Eagle-формате
- Прошивка для LPC11U35
- Приложение BLE Color Pixels для Android
- Исходный код BLE Color Pixels на GitHub