Обсуждение стабильной версии программы с номером 6.3.
в новом редакторе на такой код не будет ругаться? в 6,3,1 сейчас не пускает volatile и функции void которые декларирую до void setup()
Код: Выделить всё
#include <LiquidCrystal.h>
LiquidCrystal lcd(8,9,10,11,12,13);
volatile int val_fr = 533; // длительность полупериода f=18000000/val_fr/2(Гц),
volatile int dead_time = 91; // пауза между периодами, не должна быть меньше 92 и больше val_fr-92
byte uk=0;
int f_val, d_val;
float rpm, dtm;
// ********************************************************************
// ********************************************************************
void poluper1(void) {
PORTD&=~(1<<5); // на пин 5 лог 0
PORTD|=(1<<4); // на пин 4 лог 1, формируем первый полупериод
if(dead_time<92) {OCR1A=val_fr; uk=2;} // если пауза меньше 92 тогда она формироваться не будет
else {OCR1A=val_fr-dead_time; uk=1;} // иначе уменьшаем полупериод на длительность паузы чтоб сохранить частоту
}
void dead_time1(void) {
PORTD&=~(1<<4); // на пинах 4 и 5 лог 0, формируем dead_time паузу
OCR1A=dead_time; uk=2;
}
void poluper2(void) {
PORTD&=~(1<<4); // на пин 4 лог 0
PORTD|=(1<<5); // на пин 5 лог 1, формируем второй полупериод
if(dead_time<92) {OCR1A=val_fr; uk=0;}
else {OCR1A=val_fr-dead_time; uk=3;}
}
void dead_time2(void) {
PORTD&=~(1<<5); // на пинах 4 и 5 лог 0, формируем dead_time паузу
OCR1A=dead_time; uk=0;
}
// ********************************************************************
void (*mas[4]) (void)={poluper1, dead_time1, poluper2, dead_time2}; // массив указателей функций
// ********************************************************************
// ********************************************************************
void setup()
сделал новое описание контролера и вставил ваш файл ,все , выскочила ошибка и теперь не открывается флпрог .не может найти файл C:\Users\пк\AppData\Roaming\flprog\userControllerDescription.sixxDrMario писал(а): ↑05.05.2020{, 07:02}Прошлый файл не сохранил, но ошибка повторяется, если вставить текст в описание контроллера. Текст был с даташита контроллера, копипастил с гугл переводчика. Уже удалил все подозрительные символы но ошибка повторяется. Файл прикрепить не могу, слишком большой.
Попробуйте вставить этот текст в описание контроллера, если вылета не будет, то залью куда нибудь архив.
Не в тему. Напрягает ситуация с дозволенными размерами, попахивает старыми добрым временами и компами на Z80
Документ Microsoft Word.doc
Отправлено спустя 42 минуты 44 секунды:
Опять не в тему...
В некоторых контроллерах, например в STM32 номера выводов в портах I2C и SPI могут назначаться по выбору. Ну как в softserial выводы RX TX.
Вот пример с даташита для одного вывода SPI1_NSS/I2S1_WS, SPI3_NSS/I2S3_WS, USART2_CK, EVENTOUT
Сейчас в флпроге в кастомном контроллере можно назначить вывод только для одной какой нибудь шины. Будет возможность исправить этот недостаток?
Сегодня будет описание новой версии, как раз сейчас делаюElectronicRTC писал(а): ↑14.05.2020{, 06:57}Подскажите, где прочитать отличия от предыдущей версии.
У Вас похоже проблеммы либо с длинной пути, либо с правами на папки. Под виндой всё отлично скомпилировалось, а линукса сейчас под рукой нет. В логе показана ошибка открытия папки прилетевшая от операционной системы.
Не совсем. Попробуйте не закрывая это окно что ни будь в проекте поменять)))
Вот бы ещё сделали это окошко с закреплением поверх остальных.
Когда оно нужно, ещё раз по глазику, и оно снова покажется. Конечно удобнее всего на двух мониторах (у меня как у истинного программиста три, и то не хватает бывает)))))) )Cancertanly писал(а): ↑14.05.2020{, 10:57}Вот бы ещё сделали это окошко с закреплением поверх остальных.