Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

display: Interrupt driven ADC sampling for the touch screen #3

Open
wants to merge 5 commits into
base: devel
Choose a base branch
from

Commits on Nov 1, 2022

  1. display: Add fallthrough annotations to make gcc happy

    * The code is built with -Werror and newer gccs warn on implicit
      fallthrough with -Wall -Wextra, so the build failed.
    sebastianriese committed Nov 1, 2022
    Configuration menu
    Copy the full SHA
    9b408c1 View commit details
    Browse the repository at this point in the history
  2. display: Change the inline annotations

    * The build failed with linker errors with gcc 8.3 (the inline
      functions could not be linked against).
    
    * The inline annotation were removed accordingly from functions
      that are linked, while those that are only used within one
      compilation unit were marked static inline instead.
    sebastianriese committed Nov 1, 2022
    Configuration menu
    Copy the full SHA
    3848448 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2022

  1. display: Fix make -B

    * make -B did not work, because ln -s failed on existing links –
      fixed by using -f.
    sebastianriese committed Nov 9, 2022
    Configuration menu
    Copy the full SHA
    b48cc1b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aafecd3 View commit details
    Browse the repository at this point in the history
  3. display: Interrupt driven touch ADC sampling

    * Make the main loop non busy (use wfi instead).
    
    * Make the touch sampling interrupt driven.
    
    * Note: When starting with BURST_SWMODE there seem to be no ADC ready
      interrupts, so we use HWSCANMODE although we only want to sample once
      and disable the ADC in the interrupt handler.
    
    * Open question: Is there a point in not just sampling the touch screen
      in the main loop every 50ms and have the main loop wfi and be awoken
      by the systick interrupt (the ADC is pretty quick, 11 clocks of the ADC
      clock, which is 4MHz, so just 132 CPU clocks, and less than even
      a signle bit over the UART at 115200 baud). It may well be that the
      interrupt driven method burns more cycles while only marginally
      improving responsiveness (if at all).
    sebastianriese committed Nov 9, 2022
    Configuration menu
    Copy the full SHA
    c4cf6ae View commit details
    Browse the repository at this point in the history