Scalone interfejsy bezstykowe firmy Freescale

Interfejs użytkownika jest jednym z podstawowych elementów większości urządzeń elektronicznych. Jego istotność jest wynikiem pełnionej funkcji Jego duże znaczenie wynika z realizowanej funkcji, która polegającej na zapewnieniu interakcji między urządzeniem i jego użytkownikiem (obsługa, diagnostyka, zmiana parametrów pracy itp.). Realizacja tego celu stawała się od pewnego czasu coraz trudniejsza, gdyż za zwiększającą się funkcjonalnością urządzeń nie podążał rozwój technologii związanych z interfejsem użytkownika, którego warstwa sprzętowa niezmiennie od wielu lat reprezentowana jest głównie przez komponenty mechaniczne np. przyciski stykowe, przełączniki itp. Dopiero od niedawna widoczny jest znaczny postęp w tej dziedzinie, czego efektem są przede wszystkim technologie dotykowe. Jednym z głównych producentów posiadających w swojej ofercie szeroką gamę rozwiązań z tego zakresu jest firma Freescale.
Podstawową kategorią produktów są układy scalone pełniące funkcję zintegrowanych kontrolerów klawiatur zbliżeniowych. Reprezentujące je grupy serii MPR03X, MPR08X oraz MPR121 umożliwiają obsługę klawiatur pojemnościowych, których zasada działania opiera się na zjawisku  wywoływanej przez zbliżenie palca zmiany ilości gromadzonego ładunku elektrycznego na powierzchni materiału, z którego wykonane są przyciski. pól będących przyciskami. Rodzina układów MPR03X pozwala na zbudowanie interfejsu użytkownika złożonego z dwóch przycisków pojemnościowych w trybie pracy obsługującym przerwania bądź z trzech przycisków bez obsługi przerwań. Komunikacja zewnętrzna z układami MPR03X odbywa się za pomocą interfejsu I2C.  Kontrolery produkowane są z dwoma różnymi adresami protokołu I2C, co umożliwia wykorzystanie do dwóch takich układów na jednej magistrali komunikacyjnej i tym samym podwojenie liczby obsługiwanych przycisków. Podstawowy schemat aplikacyjny układów MPR03X przedstawiono na rys. 1.

Rys. 1. Schemat  
aplikacyjny układów MPR03X

Rys. 1. Schemat aplikacyjny układów MPR03X

Bardziej rozbudowaną grupą kontrolerów są układy MPR121, które są rozwinięciem MPR03X. Rozszerzona funkcjonalność obejmuje głównie zwiększoną do 12 liczbę obsługiwanych przycisków oraz konfigurowalny adres I2C układu. Schemat aplikacyjny układu MPR121 przedstawiono na rys. 2.
 

Rys. 2. Schemat  
aplikacyjny układu MPR121

Rys. 2. Schemat aplikacyjny układu MPR121

Ostatnią grupą zintegrowanych kontrolerów przycisków pojemnościowych są układy rodziny MPR08X. Umożliwiają one obsługę 8 przycisków, przy czym MPR083 dedykowany jest dla klawiatur, natomiast MPR084 dla nastawników obrotowych. Kontrolery posiadają interfejs komunikacyjny typu I2C i podobnie jak w przypadku układów MPR03X produkowane są z dwoma różnymi adresami wewnętrznymi. Schemat aplikacyjny przedstawiono na rys. 3.
 

Rys. 3.  Schemat 
aplikacyjny układów MPR08X

Rys. 3. Schemat aplikacyjny układów MPR08X

Innym typem rozwiązań oferowanych przez firmę Freescale do obsługi przycisków pojemnościowych jest darmowy pakiet oprogramowania TSS ( Touch Sensing Software ). Jest to zestaw bibliotek przeznaczonych dla 8-bitowych (SO8) oraz 32-bitowych (Coldfire V1) mikrokontrolerów tej firmy. Umożliwia on wykorzystanie standardowych zasobów mikrokontrolerów (linie GPIO oraz opcjonalnie Timer) do implementacji interfejsu obsługi klawiatur, suwaków oraz nastawników pojemnościowych.

Oprócz samego mechanizmu odczytu stanu przycisków biblioteki oferują szereg mechanizmów optymalizujących ten proces, do których należą np. programowe filtry przeciwzakłóceniowe, procedury kalibracyjne, regulacja czułości detekcji. Strukturę funkcjonalną bibliotek TSS w wersji 2.0 przedstawiono na rys. 4.
 

Rys. 4. Architektura 
bibliotek  TSS

Rys. 4. Architektura bibliotek TSS

Trzecią i zarazem ostatnią w ofercie firmy Freescale metodą implementacji przycisków dotykowych w urządzeniach elektronicznych są mikrokontrolery ze zintegrowanym kontrolerem. Są to układy przystosowane do obsługi rezystancyjnych paneli dotykowych umieszczanych na różnego typu ekranach i wyświetlaczach. Należą do nich mikrokontrolery Coldfire (MCF5227X) oraz układy z rdzeniem ARM926EJ-S (rodziny i.MX233, i.MX255, i.MX257 oraz i.MX258).

O autorze