I am wanting to use the interrupt of a touch screen interface instead of having LVGL constantly polling it to see if there are any touches that are occurring.
What MCU/Processor/Board and compiler are you using?
ESP32
What LVGL version are you using?
9.0
What do you want to achieve?
Stop LVGL from polling the touch screen driver
What have you tried so far?
Nothing, in the process of collecting information to see if it can be done.
Your code is just structured slightly differently to my example(I have changed my original post for simplicity), for your code this should work:
lv_timer_del( indev_drv.read_timer );
To send touch coordinates, you would need to write the coordinates to the variables which are updated by your my_touchpad_read() function and then call lv_indev_read_timer_cb( NULL );
There is no mechanism to send coordinates directly to a widget that I am aware of this is best left to the internals of LVGL in my opinion, can you describe what you are trying to achieve?
The method described above would emulate a touch or a click on the screen where ever you would like then the internals of LVGL work out which widget the click has hit etc.
As long as you don’t release your finger from the touch, you can still control a widget even when your finger is no longer within the widget’s area.
This is actually undesired for me. How can this be deactivated?