stmpe610

package
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 7, 2024 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (

	// Registerbezeichnungen
	//
	STMPE610_CHIP_ID        = 0x00
	STMPE610_ID_VER         = 0x02
	STMPE610_SYS_CTRL1      = 0x03
	STMPE610_SYS_CTRL2      = 0x04
	STMPE610_INT_CTRL       = 0x09
	STMPE610_INT_EN         = 0x0A
	STMPE610_INT_STA        = 0x0B
	STMPE610_ADC_CTRL1      = 0x20
	STMPE610_ADC_CTRL2      = 0x21
	STMPE610_ADC_CAPT       = 0x22
	STMPE610_TSC_CTRL       = 0x40
	STMPE610_TSC_CFG        = 0x41
	STMPE610_FIFO_TH        = 0x4A
	STMPE610_FIFO_STA       = 0x4B
	STMPE610_FIFO_SIZE      = 0x4C
	STMPE610_TSC_FRACTION_Z = 0x56
	STMPE610_TSC_I_DRIVE    = 0x58
	STMPE610_TSC_SHIELD     = 0x59

	// Bitmuster fuer die Registerinhalte
	//
	STMPE610_SYS_CTRL1_RESET = 0x02

	STMPE610_INT_CTRL_POL_HIGH = 0x04
	STMPE610_INT_CTRL_EDGE     = 0x02
	STMPE610_INT_CTRL_ENABLE   = 0x01
	STMPE610_INT_FIFO_EMPTY    = 0x10
	STMPE610_INT_FIFO_FULL     = 0x08
	STMPE610_INT_FIFO_OFLOW    = 0x04
	STMPE610_INT_FIFO_TH       = 0x02
	STMPE610_INT_TOUCH_DET     = 0x01

	STMPE610_ADC_CTRL1_10BIT  = 0x00
	STMPE610_ADC_CTRL1_12BIT  = 0x08
	STMPE610_ADC_CTRL1_36CLK  = 0x00
	STMPE610_ADC_CTRL1_44CLK  = 0x10
	STMPE610_ADC_CTRL1_56CLK  = 0x20
	STMPE610_ADC_CTRL1_64CLK  = 0x30
	STMPE610_ADC_CTRL1_80CLK  = 0x40
	STMPE610_ADC_CTRL1_96CLK  = 0x50
	STMPE610_ADC_CTRL1_124CLK = 0x60

	STMPE610_ADC_CTRL2_1_625MHZ = 0x00
	STMPE610_ADC_CTRL2_3_25MHZ  = 0x01
	STMPE610_ADC_CTRL2_6_5MHZ   = 0x02
	STMPE610_ADC_CTRL2_6_5_MHZ  = 0x03

	STMPE610_ADC_CAPT_ALL = 0xff

	STMPE610_TSC_CTRL_STATUS   = 0x80
	STMPE610_TSC_CTRL_WTRK_OFF = 0x00
	STMPE610_TSC_CTRL_WTRK4    = 0x10
	STMPE610_TSC_CTRL_WTRK8    = 0x20
	STMPE610_TSC_CTRL_WTRK16   = 0x30
	STMPE610_TSC_CTRL_WTRK32   = 0x40
	STMPE610_TSC_CTRL_WTRK64   = 0x50
	STMPE610_TSC_CTRL_WTRK92   = 0x60
	STMPE610_TSC_CTRL_WTRK127  = 0x70
	STMPE610_TSC_CTRL_XYZ      = 0x00
	STMPE610_TSC_CTRL_XY       = 0x02
	STMPE610_TSC_CTRL_X        = 0x04
	STMPE610_TSC_CTRL_Y        = 0x06
	STMPE610_TSC_CTRL_Z        = 0x08
	STMPE610_TSC_CTRL_EN       = 0x01

	STMPE610_TSC_CFG_1SAMPLE      = 0x00
	STMPE610_TSC_CFG_2SAMPLE      = 0x40
	STMPE610_TSC_CFG_4SAMPLE      = 0x80
	STMPE610_TSC_CFG_8SAMPLE      = 0xC0
	STMPE610_TSC_CFG_DELAY_10US   = 0x00
	STMPE610_TSC_CFG_DELAY_50US   = 0x08
	STMPE610_TSC_CFG_DELAY_100US  = 0x10
	STMPE610_TSC_CFG_DELAY_500US  = 0x18
	STMPE610_TSC_CFG_DELAY_1MS    = 0x20
	STMPE610_TSC_CFG_DELAY_5MS    = 0x28
	STMPE610_TSC_CFG_DELAY_10MS   = 0x30
	STMPE610_TSC_CFG_DELAY_50MS   = 0x38
	STMPE610_TSC_CFG_SETTLE_10US  = 0x00
	STMPE610_TSC_CFG_SETTLE_100US = 0x01
	STMPE610_TSC_CFG_SETTLE_500US = 0x02
	STMPE610_TSC_CFG_SETTLE_1MS   = 0x03
	STMPE610_TSC_CFG_SETTLE_5MS   = 0x04
	STMPE610_TSC_CFG_SETTLE_10MS  = 0x05
	STMPE610_TSC_CFG_SETTLE_50MS  = 0x06
	STMPE610_TSC_CFG_SETTLE_100MS = 0x07

	STMPE610_FIFO_STA_RESET = 0x01

	STMPE610_TSC_FRACT_Z_8_0 = 0x00
	STMPE610_TSC_FRACT_Z_7_1 = 0x01
	STMPE610_TSC_FRACT_Z_6_2 = 0x02
	STMPE610_TSC_FRACT_Z_5_3 = 0x03
	STMPE610_TSC_FRACT_Z_4_4 = 0x04
	STMPE610_TSC_FRACT_Z_3_5 = 0x05
	STMPE610_TSC_FRACT_Z_2_6 = 0x06
	STMPE610_TSC_FRACT_Z_1_7 = 0x07

	STMPE610_TSC_I_DRIVE_20MA = 0x00
	STMPE610_TSC_I_DRIVE_50MA = 0x01

	STMPE610_TSC_GROUND_X_P = 0x08
	STMPE610_TSC_GROUND_X_N = 0x04
	STMPE610_TSC_GROUND_Y_P = 0x02
	STMPE610_TSC_GROUND_Y_N = 0x01

	// Dies schlussendlich sind Konstanten, welche in Zusammenhang mit einer
	// konkrete Verwendung des Adafruit TFT-Display auf einem RaspberryPi
	// oder ASUS TinkerBoard stehen.
	//
	SpiDevFile = "/dev/spidev0.1"
	IntPin     = "GPIO24"
)
  • Konstanten

-----------------------------------------------------------------------------

Konstanten

Viele Konstanten, welche fuer Register des STMPE610 oder fuer einzelne Steuerbits in den Registern stehen. Der obere Abschnitt enthaelt die Namen und Konstanten der Register. Im unteren Abschnitt sind die Konstanten zu den einzelnen Bits enthalten.

Variables

This section is empty.

Functions

This section is empty.

Types

type STMPE610

type STMPE610 struct {
	// contains filtered or unexported fields
}

func Open added in v1.0.2

func Open(speedHz physic.Frequency) *STMPE610

Oeffnet eine Verbindung zum Touchscreen-Controller STMPE610 ueber den zweiten Kanal des SPI-Interfaces. Mit speedHz kann die Frequenz der Verbindung in Hertz angegen werden. Fuer den STMPE610 ist eine max. Uebertragungsgeschwindigkeit von 1 MHz angegeben. Das Resultat ist ein Pointer auf eine STMPE610 Struktur.

Beim auftreten eines Fehlers wird das Programm abgebrochen. Ausserdem wird der Pin fuer das Empfangen von Interrupts konfiguriert.

func (*STMPE610) Close

func (d *STMPE610) Close()

Schliesst die Verbindung zum STMPE610 und gibt alle damit verbundenen Ressourcen wieder frei.

func (*STMPE610) Init added in v1.0.2

func (d *STMPE610) Init(initParams []any)

Initialisierung des Touchscreens. Diese Einstellungen wurden (wie auch für das Display) aus vielen Code-Vorlagen und Dokumentationen aus dem Internet zusammenorchestriert - geschmückt mit vielen Stunden 'try and error'. Verbesserungen und Vorschläge sind jederzeit herzlich willkommen.

func (*STMPE610) ReadData

func (d *STMPE610) ReadData() (x, y uint16)

func (*STMPE610) ReadReg16

func (d *STMPE610) ReadReg16(addr uint8) uint16

func (*STMPE610) ReadReg8

func (d *STMPE610) ReadReg8(addr uint8) uint8

func (*STMPE610) SetCallback

func (d *STMPE610) SetCallback(cbFunc func(any), cbData any)

func (*STMPE610) WriteReg16 added in v1.0.2

func (d *STMPE610) WriteReg16(addr uint8, value uint16)

func (*STMPE610) WriteReg8

func (d *STMPE610) WriteReg8(addr uint8, value uint8)

type STMPE610Dummy added in v1.0.2

type STMPE610Dummy struct {
	// contains filtered or unexported fields
}

func OpenDummy added in v1.0.2

func OpenDummy(speedHz physic.Frequency) *STMPE610Dummy

Oeffnet eine Verbindung zum Touchscreen-Controller STMPE610 ueber den zweiten Kanal des SPI-Interfaces. Mit speedHz kann die Frequenz der Verbindung in Hertz angegen werden. Fuer den STMPE610 ist eine max. Uebertragungsgeschwindigkeit von 1 MHz angegeben. Das Resultat ist ein Pointer auf eine STMPE610 Struktur.

Beim auftreten eines Fehlers wird das Programm abgebrochen. Ausserdem wird der Pin fuer das Empfangen von Interrupts konfiguriert.

func (*STMPE610Dummy) Close added in v1.0.2

func (d *STMPE610Dummy) Close()

Schliesst die Verbindung zum STMPE610 und gibt alle damit verbundenen Ressourcen wieder frei.

func (*STMPE610Dummy) Init added in v1.0.2

func (d *STMPE610Dummy) Init(initParams []any)

Initialisierung des Touchscreens. Diese Einstellungen wurden (wie auch für das Display) aus vielen Code-Vorlagen und Dokumentationen aus dem Internet zusammenorchestriert - geschmückt mit vielen Stunden 'try and error'. Verbesserungen und Vorschläge sind jederzeit herzlich willkommen.

func (*STMPE610Dummy) ReadData added in v1.0.2

func (d *STMPE610Dummy) ReadData() (x, y uint16)

func (*STMPE610Dummy) ReadReg16 added in v1.0.2

func (d *STMPE610Dummy) ReadReg16(addr uint8) uint16

func (*STMPE610Dummy) ReadReg8 added in v1.0.2

func (d *STMPE610Dummy) ReadReg8(addr uint8) uint8

func (*STMPE610Dummy) SetCallback added in v1.0.2

func (d *STMPE610Dummy) SetCallback(cbFunc func(any), cbData any)

func (*STMPE610Dummy) WriteReg16 added in v1.0.2

func (d *STMPE610Dummy) WriteReg16(addr uint8, value uint16)

func (*STMPE610Dummy) WriteReg8 added in v1.0.2

func (d *STMPE610Dummy) WriteReg8(addr uint8, value uint8)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL