Появился в версии 7.
Ну во первых для иполнения кода это не критично)))).
Код: Выделить всё
int val = a+b+c;
Код: Выделить всё
int val =
Код: Выделить всё
+
Код: Выделить всё
+
Код: Выделить всё
;
Это есть в планах, но пока не реализовано. В будущем будет. Честно говоря просто реализовать это достаточно сложно.Gordon0007 писал(а): ↑13.08.2020{, 09:35}Так же есть предложение добавить информацию номера версии блока, допустим есть проект в нем уже вставил ПБ и как бы пользовался этим блоком и нашел ошибку когда начал другой проект. Вернулся к старому проекту, а программа предлагает обновить ПБ так как есть более свежая версия ПБ.
Код: Выделить всё
#include <GyverPWM.h>
void setup() {
pinMode(3, OUTPUT);
pinMode(5, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
// Данные функции убирают один ШИМ выход у 8-ми битных таймеров, оставляя нам ШИМ пины D3, D5, D9 и D10 на ATmega328
// запустить ШИМ на D3 с частотой 66.666 Гц, режим FAST_PWM
PWM_frequency(3, 66666, FAST_PWM);
// запустить ШИМ на D5 с частотой 25'000 Гц, режим CORRECT_PWM. Сломает millis()!
PWM_frequency(5, 25000, CORRECT_PWM);
// запустить ШИМ на D9 с частотой 150'000 Гц, режим FAST_PWM
PWM_frequency(9, 150000, FAST_PWM);
// запустить ШИМ на D10 с частотой 150'000 Гц, режим FAST_PWM
PWM_frequency(10, 150000, FAST_PWM);
// пины 9 и 10 работают на одной частоте, запустить на разных не получится!
}
void loop() {
PWM_set(3, analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит)
PWM_set(5, analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит)
PWM_set(9, analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит)
PWM_set(10, 255 - analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит)
}
Если хотите что бы значения параметра было независимым для каждого экземпляра блока то эти параметры необходимо создавать в параметрах каждого экземпляра.Ardudue писал(а): ↑20.08.2020{, 13:43}support, сделал ПБ для расширения частоты PWM по этому примеру:Но когда ставлю два ПБ, то pin на всех ПБ автоматом ставится одинаковый , при чем тот который самый последний установил. Gyver PWM V2 FLP704.flpСпойлерПоказатьКод: Выделить всё
#include <GyverPWM.h> void setup() { pinMode(3, OUTPUT); pinMode(5, OUTPUT); pinMode(9, OUTPUT); pinMode(10, OUTPUT); // Данные функции убирают один ШИМ выход у 8-ми битных таймеров, оставляя нам ШИМ пины D3, D5, D9 и D10 на ATmega328 // запустить ШИМ на D3 с частотой 66.666 Гц, режим FAST_PWM PWM_frequency(3, 66666, FAST_PWM); // запустить ШИМ на D5 с частотой 25'000 Гц, режим CORRECT_PWM. Сломает millis()! PWM_frequency(5, 25000, CORRECT_PWM); // запустить ШИМ на D9 с частотой 150'000 Гц, режим FAST_PWM PWM_frequency(9, 150000, FAST_PWM); // запустить ШИМ на D10 с частотой 150'000 Гц, режим FAST_PWM PWM_frequency(10, 150000, FAST_PWM); // пины 9 и 10 работают на одной частоте, запустить на разных не получится! } void loop() { PWM_set(3, analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит) PWM_set(5, analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит) PWM_set(9, analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит) PWM_set(10, 255 - analogRead(0) / 4); // заполнение регулируем потенциометром на А0 (8 бит) }
Надо так
БП ШИМ.PNG
Код: Выделить всё
// заполнение регулируем потенциометром на А0 (8 бит)
Спасибо. Слона то я и не заметил.Naladchik писал(а): ↑16.10.2020{, 11:57}1-я страница этой же темы сообщение №15, уже было.
viewtopic.php?f=112&t=6485#p91211
Код: Выделить всё
#include <SPI.h>
#include <Adafruit_PCD8544.h>
#include <Adafruit_GFX.h>
Код: Выделить всё
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <Adafruit_PCD8544.h>
Так вроде так и задумано. Из справки:
И все более старые блоки перестанут работать ))
Как правило новые библиотеки поддерживают функции предыдущих версий.
rw6cm, отличный вариант! Тем более FLProg уже создает такую временную папку. Осталось только сложить в нее все библиотеки из блоков проекта.
Если библиотека из ПБ будет попадать во временную папку со скетчем, путаницы уже не будет.