Обновить сборку прошивки 166, TESTLAMP и кодировку исходников
Перенести настройки выпуска в JSON, добавить переносимый сценарий сборки и проверки BIN. Обновить конфигурации CCS, исходники в UTF-8, обработку TESTLAMP, образы прошивки и регрессионные проверки.
This commit is contained in:
+15
-6
@@ -1,7 +1,7 @@
|
||||
/* Логика пульта и индикации. cpu_timer1_isr_PULT выбирается
|
||||
* только для dsk_EPLT; для нагрузки работает обработчик из measure.c.
|
||||
* Lonely относится к активности обмена, не к задержке пуска СИФУ.
|
||||
* Не смешивать функции двух режимов при изменении общего таймера.
|
||||
/* Логика пульта и индикации. cpu_timer1_isr_PULT выбирается
|
||||
* только для dsk_EPLT; для нагрузки работает обработчик из measure.c.
|
||||
* Lonely относится к активности обмена, не к задержке пуска СИФУ.
|
||||
* Не смешивать функции двух режимов при изменении общего таймера.
|
||||
*/
|
||||
#include "DSP2833x_Device.h" // DSP2833x Headerfile Include File
|
||||
#include "DSP2833x_SWPrioritizedIsrLevels.h"
|
||||
@@ -43,6 +43,7 @@ interrupt void cpu_timer1_isr_PULT(void)
|
||||
static int cownt=0,count_bright;
|
||||
unsigned int light=0, i;
|
||||
unsigned int Alone = 20*READY_FREQ;
|
||||
static unsigned int test_lamp_hold_ticks = 0; // Считает длительность непрерывного нажатия GPIO26 в тиках READY_FREQ; насыщение на пороге исключает переполнение при долгом удержании.
|
||||
|
||||
EALLOW;
|
||||
CpuTimer1.InterruptCount++;
|
||||
@@ -60,8 +61,8 @@ interrupt void cpu_timer1_isr_PULT(void)
|
||||
|
||||
toggle_ONLINE();
|
||||
|
||||
toggle_RES_OUT_1(); // типа это готовность
|
||||
toggle_RES_OUT_2(); // на всакий
|
||||
toggle_RES_OUT_1(); // Формирует на резервном выходе 1 меандр с частотой READY_FREQ/2 (500 Гц) для контроля работы таймера пульта.
|
||||
toggle_RES_OUT_2(); // Дублирует переключения таймера на резервном выходе 2 с частотой READY_FREQ/2 (500 Гц) для контроля активности пульта.
|
||||
|
||||
if(++Lonely > Alone) Lonely = Alone;
|
||||
|
||||
@@ -74,6 +75,14 @@ interrupt void cpu_timer1_isr_PULT(void)
|
||||
|
||||
if(++cownt>2) cownt=0;
|
||||
|
||||
if(GpioDataRegs.GPADAT.bit.GPIO26) // Единица GPIO26 означает нажатие TESTLAMP, как и бит 4 Inputs; таймер измеряет удержание независимо от загрузки main.
|
||||
{ // Накапливает время текущего нажатия перед включением местного теста ламп.
|
||||
if(test_lamp_hold_ticks < 2U * (unsigned int)READY_FREQ) // Две секунды при частоте READY_FREQ Гц соответствуют 2000 тикам текущего таймера 1000 Гц.
|
||||
test_lamp_hold_ticks++; // Добавляет один период таймера (1 мс); после достижения порога счётчик сохраняет значение до отпускания.
|
||||
} // Завершает обработку удерживаемой кнопки.
|
||||
else test_lamp_hold_ticks = 0; // При отпускании обнуляет время, чтобы отдельные короткие нажатия не складывались в длинное.
|
||||
bTestLamp = (test_lamp_hold_ticks >= 2U * (unsigned int)READY_FREQ); // Включает местный тест после 2 с удержания и выключает при отпускании; короткое нажатие остаётся сигналом сброса для основного контроллера.
|
||||
|
||||
if(cTestLamp|bTestLamp)
|
||||
{
|
||||
what_is();
|
||||
|
||||
Reference in New Issue
Block a user