Jump to content
Electronics-Lab.com Community

Search the Community

Showing results for tags 'touch event detection'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Electronics Forums
    • Projects Q/A
    • Datasheet/Parts requests
    • Electronic Projects Design/Ideas
    • Power Electronics
    • Service Manuals
    • Theory articles
    • Electronics chit chat
    • Microelectronics
    • Electronic Resources
  • Related to Electronics
    • Spice Simulation - PCB design
    • Inventive/New Ideas
    • Mechanical constructions/Hardware
    • Sell/Buy electronics - Job offer/requests
    • Components trade
    • High Voltage Stuff
    • Electronic Gadgets
  • General
    • Announcements
    • Feedback/Comments
    • General
  • Salvage Area

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Yahoo


Skype


Location


Interests

Found 1 result

  1. Software version: Linux 4.19 Design Idea: Detect screen touch events to determine whether the screen is being used or not in an auto-break application. If the screen detects input events, it will remain on. If no touch events are received for a period of time, the screen will transition from on to a dimmed state, reminding the user that it is about to enter the screen-off mode. If no touch events occur after dimming, the screen will enter the screen-off mode. When a touch event occurs again, the screen will transition from screen-off mode to the on state. Currently, the approach to implement automatic screen-off is to treat touch events as a fixed path that can be applied to familiar boards. To enhance convenience in application, two additional alternative approaches are provided below: ▊ The first implementation method You can apply the evtest command to get the path to/dev/input/event1 (event1 is the name of the touch event on my board). You can then pass the path to your program as a parameter. For example, you can modify your program to accept command-line arguments to specify the path of the device file to open int argc, char *argv[]; Opens a file with the passed in parameters as the device file path int fd = open(argv[1], O_RDONLY); You can compile and run the program, passing it/dev/input/event1 as a command-line argument, like this: ./your_program /dev/input/event1 ▊ The second implementation method is to fix the screen touch node in the device tree. Look for the screen touch node in the device tree and note its address. On the I2C bus, the address of the touch node is simply 2-0038 So we can use grep to filter out touch nodes based on their addresses. ls -l /sys/class/input | grep "0038" | awk -F ' ' '{print $9}' | grep "event" The following command is used in the application to find the touch event based on the touch address. char *command_output = exec("ls -l /sys/class/input | grep '0038' | awk -F ' ' '{print $9}' | grep 'event'"); Use the sprintf function to splice the path containing the event, and then read the event. Examples of using Sprintf: int main() { char str[100]; int num = 123; float f = 3.14; //Write the formatted data to the string sprintf(str, "%d%.2f", num, f); //print the generated string printf("The output is. %s\n", str); return 0; }
×
  • Create New...