Choose a Controller

In the Controller module you can view the library of different controllers available, define their configuration Parameters and view the functionality of their Pins.

Currently STM32F091 by STMicroelectronics is supported  by SENSE's library.

  • Parameters: The controllers have some fixed values and some that can be configured. The configuration parameters of the controller in SENSE's library are:
  1. Hardware Clock - describes the Clock Base Rate
  2. div - describes the frequency division of the Base Clock
  3. cth - describes the Charge Phase length
  4. ctl - describes the Transfer Phase length
  5. max_counts - The max count error prevents long acquisition times resulting from a faulty capacitive sensing channel. It consists of specifying a maximum count value for the analog I/O group counters. As soon as an acquisition group counter reaches this maximum value, the ongoing acquisition is stopped
  6. delay - describes the delay of the acquisition process before it starts

Basic tuning purpose:

  • Ensure a complete charge and transfer sequence
  • Choose an ideal pulse duration.
  • If the charge and transfer is not complete: Increase duration of the pulses from controller’s parameters: cth, ctl and/or div

Basic tuning values:

  • Pins: The Pins have a predefined functionality and purpose, as they are set by the manufacturer of the MCU. In order for you to be able to properly configure the controller, you need understanding of how those Pins interact with the sensor.

In the name G1_IO1, G1_IO2 etc, the number G1 represents the group of the Pin. Each group is assigned to the same sampling capacitor (IO1), however, they don't work at the same time. We have the IO2 Pin charge and discharge on the sampling capacitor. Then we have IO3 and then IO4.  
Furthermore, each Pin is assigned to a bank. Pins connected to the same bank are set to active simultaneously. 

Did this answer your question?