gt911 — GT911 5-točkovni kapacitivni kontroler dodira¶
Modul gt911 pruža upravljački program za Goodix GT911 projicirano-kapacitivni kontroler zaslona osjetljivog na dodir, čest u kombinaciji s 4.3”–7” 800x480 LCD panelima. Kontroler prati do pet istovremenih dodirnih točaka i izvještava svaku kao (x, y, size, id) torku gdje je id stabilan kroz čitanja sve dok prst ostaje na panelu.
Upravljački program komunicira s čipom preko I2C i koristi dva dodatna GPIO-a:
reset liniju, držanu na niskoj razini tijekom uključivanja i prebacivanu zajedno s IRQ linijom za odabir GT911-ove 7-bitne I2C adrese (
0x5Dkada je IRQ na niskoj razini tijekom resetiranja,0x14kada je IRQ na visokoj razini);interrupt liniju, koju kontroler postavlja kada se dogodi događaj dodira.
Nakon konstrukcije, aplikacije mogu provjeravati dodire pomoću GT911.read_points() ili dostaviti touch_callback koji se poziva na silaznom bridu IRQ pina.
class GT911 – 5-točkovni kapacitivni kontroler dodira¶
- class gt911.GT911(bus: machine.I2C, reset_pin: int | str, irq_pin: int | str, address: int = _DEFAULT_ADDR, width: int = 800, height: int = 480, touch_points: int = 1, reverse_x: bool = False, reverse_y: bool = False, reverse_axis: bool = True, sito: bool = True, refresh_rate: int = 240, touch_callback: Callable | None = None)¶
Stvara objekt GT911 kontrolera zaslona osjetljivog na dodir.
busje objektmachine.I2Csabirnice na koju je GT911 priključen.reset_pinje broj ili naziv pina (nePinobjekt) povezan s GT911 reset linijom. Upravljački program treba mijenjati smjer pina tijekom resetiranja.irq_pinje broj ili naziv pina (nePinobjekt) povezan s GT911 interrupt linijom. Upravljački program treba mijenjati smjer pina tijekom resetiranja.addressje I2C adresa kontrolera. Zadano jegt911._DEFAULT_ADDR.widthje razlučivost dodirnog panela duž X osi u pikselima.heightje razlučivost dodirnog panela duž Y osi u pikselima.touch_pointsje maksimalni broj istovremenih dodirnih točaka za izvještavanje (1 do 5).reverse_xako je True, preokreće X os.reverse_yako je True, preokreće Y os.reverse_axisako je True, zamjenjuje X i Y osi.sitoomogućuje kontrolerov Single-Input-Touch-Output način kada je True.refresh_rateje brzina izvještavanja o dodiru u Hz.touch_callbackje opcionalna pozivna funkcija koja se poziva na silaznom bridu IRQ pina kada se dogodi događaj dodira. ProslijediteNoneza korištenje načina provjeravanja (polling).- read_points() tuple¶
Vraća torku
(n, points)gdje jenbroj aktivnih dodirnih točaka, apointslista od 5array("H", ...)unosa. Svaki unos sadrži[x, y, size, id]:xiysu koordinate zaslona,sizeje pritisak dodira, aidje jedinstveni ID za praćenje koji ostaje stabilan za dani prst kroz čitanja.Samo prvih
nunosa upointssadrži valjane podatke.