Пока что испытал вот такой скетч:
Здесь у нас обычный инвертор, только с защитой от бесполезной посадки аккумулятора, отключение катушки после 1 секунды простоя.
Вместо digitalWrite применил GPOS/GPOC вот отсюда, как утверждает автор, это позволяет сократить время выполнения с 910 наносекунд до 88.
Pull-up сделал не от 3.3 вольта, а сразу от 5. Как показали испытания "на столе" - так контроллер гораздо быстрее отрабатывает прерывание. Далее поднял частоту до 160 мГц в arduino IDE. Не знаю является ли это действительностью и может ли esp8266 работать на таких частотах.
Короче говоря пока тёплые дни - хочется покататься, а не разгазовывать и выность мозги соседям.
@te238s
Насчёт первого пункта не совсем понял, перетащить затвор mosfet (или его драйвер) на плюс, а контроллером шунтировать на массу?
С учётом всех изменений попробую потом добавить задержку, неплохая идея.
C++:
#define IN 4
#define OUT 5
bool interruptor;
unsigned long oldtime;
void setup() {
oldtime = micros();
pinMode(4, INPUT); // D2 from interruptor
pinMode(5, OUTPUT); // D1 To driver
pinMode(2, OUTPUT); // LED
digitalWrite(2, LOW); // LED ENABLED
}
void loop() {
interruptor = digitalRead(IN);
if(interruptor == HIGH) {
GPOC = (1 << OUT); // LOW
oldtime = micros();
}
if(interruptor == LOW && micros() - oldtime <= 1000000) {
GPOS = (1 << OUT); // HIGH
} else {
GPOC = (1 << OUT); // LOW
}
}
Вместо digitalWrite применил GPOS/GPOC вот отсюда, как утверждает автор, это позволяет сократить время выполнения с 910 наносекунд до 88.
Pull-up сделал не от 3.3 вольта, а сразу от 5. Как показали испытания "на столе" - так контроллер гораздо быстрее отрабатывает прерывание. Далее поднял частоту до 160 мГц в arduino IDE. Не знаю является ли это действительностью и может ли esp8266 работать на таких частотах.
Короче говоря пока тёплые дни - хочется покататься, а не разгазовывать и выность мозги соседям.
@te238s
Насчёт первого пункта не совсем понял, перетащить затвор mosfet (или его драйвер) на плюс, а контроллером шунтировать на массу?
С учётом всех изменений попробую потом добавить задержку, неплохая идея.