Page 29 of 39
Re: Универсальный синтезатор Si570/Si5351
Posted: 28 Jul 2021, 09:56
by SWL
Ок, спасибо.
Re: Универсальный синтезатор Si570/Si5351
Posted: 28 Jul 2021, 22:38
by UR5FFR
Не, так не будет работать. Вот как надо
Code: Select all
static byte last_bands = 0xFF;
byte bands = 0;
long freq = trx.state.VFO[trx.GetVFOIndex()];
if (freq > 1810000 && freq < 2000000 ) bands = 160;
else if (freq > 3500000 && freq < 3800000 ) bands = 80;
else if (freq > 7000000 && freq < 7200000 ) bands = 40;
else if (freq > 14000000 && freq < 14350000 ) bands = 20;
else if (freq > 21000000 && freq < 21450000 ) bands = 15;
if (bands != last_bands) {
// очищаем
drawBtn(0, 35, 55, 33, " ", ILI9341_BLACK, ILI9341_BLACK);
// рисуем
tft.setTextColor(ILI9341_WITE);
tft.setFont(&Tahoma18);
tft.setTextSize(1);
tft.setCursor(0, 70);
tft.print(bands);
// запоминаем что нарисовали
last_bands = bands;
}
Re: Универсальный синтезатор Si570/Si5351
Posted: 28 Jul 2021, 22:43
by UR5FFR
Но можно еще проще - trx.BandIndex содержит номер диапазона от 0.
Code: Select all
static *char[] bands = {"160","80","40","20","15"};
static byte last_bands = 0xFF;
if (trx.BandIndex != last_bands) {
// очищаем
drawBtn(0, 35, 55, 33, " ", ILI9341_BLACK, ILI9341_BLACK);
// рисуем
drawBtn(0, 35, 55, 33, bands[trx.BandIndex], ILI9341_BLACK, ILI9341_BLACK);
// запоминаем что нарисовали
last_bands = trx.BandIndex;
}
Re: Универсальный синтезатор Si570/Si5351
Posted: 29 Jul 2021, 05:58
by SWL
Спасибо, вечером проверю.
Привязки к бэндам не хочу, так как в пределах одного бэнда (прописанного в скетче) могут встречаться и любительские и вещательные ( например диапазон 7....8 МГц зашит в синтезатор).
И в зависимости от частоты индицируется 40м аматорский или
41м вещательный. Т.е. я хочу индицировать то, что пропишу сам в соответствии с частотой. И в пределах одного бэнда может быть несколько разных индикаций. Причем даже если в разных диапазонах (в конце одного и начале другого) лежит нужная мне индикация, то она включится именно от частоты.
Re: Универсальный синтезатор Si570/Si5351
Posted: 30 Jul 2021, 08:46
by SWL
Здравствуйте, Андрей!
Проверил, все работает.
Добавил код для отображения буквы "М" ниже индикации диапазона ( иначе "М" закрывает часть десятков МГц, если в один ряд) и отмену индикации, если находимся между индицируемыми диапазонами (иначе индицировало "0" все время, кроме индикации диапазонов).
Большое спасибо за помощь!
Code: Select all
if (bands != last_bands) {
drawBtn(0, 35, 45, 50, " ", ILI9341_BLACK, ILI9341_BLACK);
tft.setTextColor(ILI9341_YELLOW);
tft.setFont(&Tahoma18);
tft.setTextSize(1);
tft.setCursor(5, 60);
tft.print(bands);
tft.setCursor(10, 80);
tft.print("M");
if (bands !=0 ) {
tft.setTextColor(ILI9341_YELLOW);
tft.setFont(&Tahoma18);
tft.setTextSize(1);
tft.setCursor(5, 60);
tft.print(bands);
}
else {
drawBtn(0, 35, 45, 50, " ", ILI9341_BLACK, ILI9341_BLACK);
}
last_bands = bands;
}
Re: Универсальный синтезатор Si570/Si5351
Posted: 30 Jul 2021, 10:39
by UR5VCP
Прилетел мне вместо сишек, которые выехали из литвы 10 числа, индикатор, размером 0,91дюйма, и пока жду код для прошивки и сишки (прошивки фронтенда) то думаю присобачить два индикатора, один 16*2 а второй на 0,9дюйма. На нем частоту хочу БАЛЬШИМИ циферками, а на втором рит сплит и всякие прочее. В задуманной мной хотелке )) не надо сметра или ксв шкалы, ибо будет аналоговый прибор со стрелочкой.
Собственно вопрос: Андрей Николаевич, оно получится? В АТУ100 точно такой же индикатор, смотреться на панели будет классно! только вот можно на одну шину их посадить? по идее да...
Re: Универсальный синтезатор Si570/Si5351
Posted: 30 Jul 2021, 10:55
by UR5FFR
Получится. Но код писать я не буду

Re: Универсальный синтезатор Si570/Si5351
Posted: 31 Jul 2021, 09:31
by UR5VCP
UR5FFR wrote:Получится. Но код писать я не буду

неее, это я сам )) Врядли кому такой вариант пригодится ) Очень уж специфично я задумал... Я в плане того что на шине оно дружить все вместе будет? Просто подключить второй тип дисплея надо, ну а вывод то уже другое дело, разберусь.
Re: Универсальный синтезатор Si570/Si5351
Posted: 31 Jul 2021, 14:57
by UR5FFR
На шине они не конфликтуют - адреса разные
Re: Универсальный синтезатор Si570/Si5351
Posted: 10 Aug 2021, 15:32
by SWL
Добрый день, Андрей!
Можно ли как-то присобачить вот это
https://robotchip.ru/obzor-sensornogo-datchika-ttp223/
на замену кнопкам без лишней возни с кодом и железом?
12-ти кнопочная клавиатура.
Может через диодный кодер?