Полезная информация


Контроллеры Vesc с дисплеем LCD-8 и торксенсором.

Автор Mike 372, 12 Авг. 2023 в 00:04

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

7ambrion

Цитата: Mike 372 от 09 Апр. 2024 в 19:50Ты перенес включение светодиода после A S S = true;? Он там включается?

да, а выключение сразу после off )

Mike 372

Значит помощник включается. Похоже, в контроллер не передается. Ты buf_tx[0]= 50; на той плате делал. А на этой крутится? При этом надпись Assist на дисплее должна включаться. Она чисто по ненулевому сигналу активируется.

7ambrion

Так да, крутится и надпись есть )

Выходит какая то переменная в формуле другая и в итоге адц2 не может правильно высчитать ) если он ниже нуля то соответственно ничего не происходит, а если больше чем 255?! )

Проверил ))
0 - не крутится, надписи нет
1 - не крутитсч, надпись есть
100500 - крутится предположительно на 255, надпись есть
-1 - аналогично предыдущему варику
-100500 - аналогично


7ambrion

Было б очень логично если б где то в формуле на ноль этот adc2 умножало ) ведь только при нуле получается ничего происходит )

Mike 372

Ты помниться поднимал нижний порог до 1600. Назад откатился? Это как раз и обнуляет.

7ambrion


Mike 372

Что-то пока ничего в голову не приходит. Давай я тебе на почту отправлю все настройки дисплея с велосипеда, где эта прошивка работает. Может еще что-то оттуда подгружается. Я уж сам некоторые моменты подзабыл. С осени в код не заглялывал.

Mike 372

Уровень помощника на дисплее случаем не 0 стоит?

7ambrion

Все настройки экрана сделал идентичными - не сработало )

Уровень 5, но я и другие пробовал - тоже самое )

Mike 372

Поставь сразу после формулы
if (Ut < U_min) adc2 = P_min; 
      else {
        adc2=((Ut-U_min)/((U_max-U_min)/(P_max-P_min)))+P_min;
        adc2=50;
      }

7ambrion

Не, не сработало ) похоже

else adc2 = 0;

Который идет сразу после, перехватывает инициативу )))

7ambrion

нет, попробовал его поменять и тоже не влияет ))))

Mike 372


7ambrion

  forward2:
  if ((* == false) || (ASSIST_LEVEL == 0)) {
    adc2=0;
  } 

вот тут заместо нуля работает подставлять в adc2 числа )

Mike 372


7ambrion


Mike 372

Убери вот это:
 if ((A S S == false) || (ASSIST_LEVEL == 0)) {
И попробуй еще раз.

7ambrion

заработало )

тогда получается он по какой то причине думает что уровень ассистента всегда 0 )
а тк сверху скетча он равен нулю, то получается далее его не подхватывает с экрана )))
но почему?! )))