Есть интересная библиотека Bluetooth пульта для фотокамеры Canon на ESP32. Пытаюсь сделать пользовательский блок, но не понятно, что делать с void blink(){ digitalWrite(LED, !digitalRead(LED));}. Помогите разобраться.
Ссылка на библиотеку https://github.com/maxmacstn/ESP32-Canon-BLE-Remote
Пример кода из библиотеки. Его и пытаюсь реализовать через блок.
#include "CanonBLERemote.h"
#include <Arduino.h>
#include "Ticker.h"
#define LOG_LOCAL_LEVEL ESP_LOG_INFO
#include "esp_log.h"
#include <esp32-hal-log.h>
#define SHUTTTER_BTN 14
#define FOCUS_BTN 12
#define LED 2
String name_remote = "ESP32 Remote";
CanonBLERemote canon_ble(name_remote);
Ticker blinker;
void blink(){
digitalWrite(LED, !digitalRead(LED));
}
void setup()
{
Serial.begin(115200);
esp_log_level_set("*", ESP_LOG_INFO);
pinMode(SHUTTTER_BTN, INPUT_PULLUP);
pinMode(FOCUS_BTN, INPUT_PULLUP);
pinMode(LED, OUTPUT);
digitalWrite(LED, HIGH);
canon_ble.init();
delay(1000);
// Pairing
if(digitalRead(SHUTTTER_BTN) == LOW ){
blinker.attach_ms(200,blink);
// pair() function should be called only when you want to pair with the new camera.
// After paired, the pair() function should not be called.
do{
Serial.println("Pairing...");
}
while(!canon_ble.pair(10));
blinker.detach();
digitalWrite(LED, HIGH);
}
delay(1000);
Serial.println("Setup Done");
}
void loop()
{
// Shutter
if (digitalRead(SHUTTTER_BTN) == LOW){
Serial.println("Shutter pressed");
digitalWrite(LED, LOW);
if(!canon_ble.trigger()){
Serial.println("Trigger Failed");
}
digitalWrite(LED, HIGH);
}
// Focus
else if (digitalRead(FOCUS_BTN) == LOW){
Serial.println("Focus pressed");
digitalWrite(LED, LOW);
if(!canon_ble.focus()){
Serial.println("Focus failed");
}
digitalWrite(LED, HIGH);
}
}
Bluetooth пульт для фотокамеры на ESP32
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
-
- Полковник
- Сообщения: 3357
- Зарегистрирован: 24 дек 2016, 16:55
- Откуда: Уфа
- Имя: Айдар
- Благодарил (а): 12 раз
- Поблагодарили: 100 раз
- Контактная информация:
Re: Bluetooth пульт для фотокамеры на ESP32
Засуньте в функцию.Axel писал(а): 27 сен 2024, 11:27 Есть интересная библиотека Bluetooth пульта для фотокамеры Canon на ESP32. Пытаюсь сделать пользовательский блок, но не понятно, что делать с void blink(){ digitalWrite(LED, !digitalRead(LED));}. Помогите разобраться.
Re: Bluetooth пульт для фотокамеры на ESP32
Вопрос к знатокам. Реально ли на один контроллер залить два разных пульта (две разные библиотеки)?
Есть библиотека для смартфона и отдельная библиотека для фотокамеры. Обе по отдельности работают хорошо.
Одновременная синхронизация со смартфоном и фотокамерой не планируется. Только либо смартфон, либо камера. Но реализовать это на одной ESP32 пока не получается. Возможно это сделать?
Есть библиотека для смартфона и отдельная библиотека для фотокамеры. Обе по отдельности работают хорошо.
Одновременная синхронизация со смартфоном и фотокамерой не планируется. Только либо смартфон, либо камера. Но реализовать это на одной ESP32 пока не получается. Возможно это сделать?
Re: Bluetooth пульт для фотокамеры на ESP32
Подскажите, пожалуйста, в каком направлении копать? Как включить нужный пульт? Оба пульта на разных пинах. Скетч компилируется и загружается без ошибок. Подключается к смартфону без проблем. Но сразу после подключения начинаются несанкционированные нажатия.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя