A simple XPT2046 chip reader designed for use with CircuitPython.
Project description
skip to docs
xpt2046-circuitpython
A CircuitPython (or Adafruit-Blinka) library which reads values from an XPT2046 chip, commonly found on cheap microcontroller TFT displays.
installation
This project is available on PyPi:
pip3 install xpt2046-circuitpython
Or, to install it manually:
git clone https://github.com/humeman/xpt2046-circuitpython
cd xpt2046-circuitpython
pip3 install .
If you're using this on regular Linux rather than CircuitPython, make sure you also install Adafruit Blinka.
usage
Be sure to enable SPI in sudo raspi-config
before proceeding.
sample wiring
TFT | Board | GPIO | Pin # |
---|---|---|---|
T_CLK | SPI0 SCLK | GPIO11 | 23 |
T_CS | GPIO6 | 31 | |
T_DIN | SPI0 MOSI | GPIO10 | 19 |
T_DO | SPI0 MISO | GPIO9 | 21 |
T_IRQ | GPIO22 | 15 |
examples
The most basic read example is:
import xpt2046_circuitpython
import time
import busio
import digitalio
from board import SCK, MOSI, MISO, D6, D22
# Pin config
T_CS_PIN = D6
T_IRQ_PIN = D22
# Set up SPI bus using hardware SPI
spi = busio.SPI(clock=SCK, MOSI=MOSI, MISO=MISO)
# Create touch controller
touch = xpt2046.Touch(
spi,
cs = digitalio.DigitalInOut(T_CS_PIN),
interrupt = digitalio.DigitalInOut(T_IRQ_PIN)
)
# Check if we have an interrupt signal
if touch.is_pressed():
# Get the coordinates for this touch
print(touch.get_coordinates())
Some more examples:
- read.py: A simple program which continuously prints coordinates when the screen is pressed
- adafruit-ili.py: A simple drawing program for an ILI9341 display controlled by the Adafruit display library
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for xpt2046_circuitpython-1.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5074fe5f2bb4612643facbf13343ffc16471bafa3a9f3bd83aea1268bfcb7f16 |
|
MD5 | 469786857721b81d087875a24d3ba7a1 |
|
BLAKE2b-256 | 4b72b4865353ee8ab238d717053aa82d6d701d25d18b556f9d7669077e95d67d |
Close
Hashes for xpt2046_circuitpython-1.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ba99b71809781503e437768679bdd1c41f99c8596ac42f22bea7495bea22da2 |
|
MD5 | 7e3a4e244d5d821fb7b9bad0f7e770d7 |
|
BLAKE2b-256 | ee0db8b3f7c1b7210fb134cb5b41517dc064e7ddaba73a24ac1080726af18969 |