Пример нашел - ссылка. Здесь в функции BUTTON_Process() антидребезг сделан по такому принципу, без блокирующих задержек.
Я ещё два варианта нашёл:
Первый вариант.
Можно вне цикла while по таймеру определять время работы цикла for.
Здесь я выставил просто число в цикле for для демонстрации.
for(int count=0;count<6000;count++) { MX_USB_HOST_Process(); }
Надо чтоб этого времени хватало для того, чтоб код в файле usb_host.c выполнился.
Второй вариант это писать всё что нужно в файле usb_host.c.
В файле usb_host.c написание HAL_Delay(1000); не вредит инициализации USB.
while (1) { for(int count=0;count<6000000;count++) { MX_USB_HOST_Process(); } printf("HELLO\n"); HAL_Delay(1000); }
HAL_TIM_Base_Start(&htim4); while (1) { while(!(TIM4->SR & TIM_SR_UIF)) { MX_USB_HOST_Process(); } HAL_Delay(1000); printf("HELLO\n"); TIM4->SR=0; }
extern ApplicationTypeDef Appli_state; while (1) { MX_USB_HOST_Process(); if(Appli_state == APPLICATION_IDLE) { printf("IDLE\n"); } }
Не удивлюсь, если это не рабочее решение по ссылке, подход в корне кривой.
Знает кто нибудь как работать с дисплеем TFT ILI9341 без библиотек?
Как инициализировать, как пиксели выводить на экран?
Всё что нахожу, всё на библиотеках.
Мне бы понять как инициализировать и логику подсветки пикселей, а там я сам эти библиотеки напишу.
Знает кто нибудь как работать с дисплеем TFT ILI9341
Я знаю.
Драйвер на него писал на классах. Пришлось изучить.
@stm внутри всех готовых библиотек есть низкоуровневая работа с контроллером дисплея.
@aveal Это точно. Но я знаю больше. Так как внутри библиотек есть использование других библиотек, а у тех ещё дальше всё заходит. Поэтому отследить трудно, что происходит.
Я прошёлся по этой цепочке и начал понимать как это устроено на самом низком уровне. 🧐
Если будет с кем поговорить, я могу отдельную тему создать по этому дисплею.
Тема интересная, а информации мало на эту тему.
Я начал понемногу этот клубок распутывать, но пока что я в самом начале.
Тем и лучше, значит в теме будет всё от начала и до конца))
@stm Могу статью написать. Только это не раньше вторника, если не забуду.
Ещё у меня есть начало статьи по теории вывода текста на подобные экраны.
@aveal С Вас структура поиска статей, о которой мы разговаривали. Извините, что здесь напоминаю. Но если это воплотить, думаю многим будет интересно.