Giuseppe Parrello

 

Embedded Sensore Touch


Introduzione

Con questo progetto andremo a gestire un sensore Touch (Tontek TTP223-BA6), usando la scheda di sviluppo FTDI FT232H (di cui esiste una pagina dedicata su questo sito).

 

Collegamento

Il sensore Touch deve essere collegato alla scheda di sviluppo FTDI FT232H. I connettori di collegamento sono elencati qui di seguito:

Immagine Scheda FT232H Sensore Touch

FT232H - TOUCH

AD0 SIG
+5V VCC
GND GND

 

Codice Python

Per gestire il sensore Touch, è richiesta la presenza della libreria "PyFTDI".
Il seguente esempio di codice Python visualizza se viene rilevato il tocco sul sensore touch:

from os import environ
from pyftdi.gpio import GpioAsyncController
import time

_ctrl = GpioAsyncController()
url = environ.get('FTDI_DEVICE', 'ftdi:///1')
_ctrl.configure(url, direction=0b0, frequency=None, initial=0x0)
_gpio = _ctrl.get_gpio()
print("GPIO.pins = ", _gpio.pins, "(", bin(_gpio.pins), ")")
print("GPIO.all_pins = ", bin(_gpio.all_pins))
print("GPIO.width = ", _gpio.width)
direction = _gpio.direction
print("GPIO.direction (Old) = ", bin(direction))
_gpio.set_direction(0b1, 0b0)
print("GPIO.direction (New) = ", bin(_gpio.direction))
tmp = 0

try:
    while True:
       pins = _gpio.read()
       pins &= ~0xfe
       if pins != tmp:
          if pins == 0:
             print('* Sensor = untouched *')
          if pins == 1:
             print('* Sensor = touched   *')
          tmp = pins
          time.sleep(0.25)
    """Close the connection"""
except KeyboardInterrupt:
    # Capture keyboard ^C to exit the program
    print('\nYou terminated the program. The program ends!')
    _ctrl.close()