Poczuć atmelowski „dotyk” – zestaw ewaluacyjny QTouch ATtiny20-EK1
Próby z płytką ewaluacyjną ATtiny20-EK1
Pojemnościowe „przyciski” dotykowe zrealizowane na opracowanej przez Atmela płytce ewaluacyjnej ATtiny20-EK1 pokazują, jak prosta może być ich obsługa przy zastosowaniu metody QTouch. Do demonstracji wystarczył układ składający się z mikrokontrolera ATtiny20, pięciu diod świecących, baterii litowej CR2450, kilku rezystorów i kondensatorów.
Fot. 2.
Wzdłuż jednej z krawędzi płytki umieszczono elektrody 5 czujników, wykonane jako pola miedzi o średnicy ok. 11 mm, zabezpieczone solder maską (fotografia 2). Odsłonięto natomiast kilka punktów testowych, które mogą być wykorzystane do obserwacji przebiegów w układzie. Jeden z takich przebiegów przedstawiono na rysunku 3.
Rys. 3. Przebieg występujący na czujniku w stanie jego aktywności
Jest to przebieg występujący bezpośrednio na czujniku, po przyłożeniu do niego palca. Producent przewidział również możliwość zasilania płytki z zewnętrznego źródła napięcia, ale w tym celu konieczne jest samodzielne wlutowanie 2-pinowego złącza szpilkowego. W taki sam sposób przygotowuje się złącze dla interfejsu I2C. Zasilanie płytki jest załączane zworką. Całkowity prąd pobierany z baterii w czasie oczekiwania na naciśnięcie przycisku ma natężenie ok. 0,5 mA. Wzrasta ono do ok. 4 mA po naciśnięciu przycisku, ale jest to spowodowane zaświeceniem diody LED. Oprogramowanie mikrokontrolera jest przystosowane do obsługi co najwyżej jednego przycisku w danym momencie. Oznacza to, że jeśli jednocześnie zostanie naciśniętych więcej przycisków, to zawsze zaświeci się dioda przypisana do tego, który został naciśnięty jako pierwszy. Należy tu dodać, że oprogramowanie zawarte w bibliotece QTouch zawiera funkcję eliminacji trzasków oraz tłumienia wpływu sąsiedniego przycisku.
Tab. 1. Zestawienie zasobów wykorzystywanych przez różne konfiguracje bibliotek QTouch w ATtiny20
Nazwa konfiguracji | Liczba sensorów | Zajęta pamięć programu [B] |
Zajęta pamięć danych [B] |
CStack/RStack |
libtiny20-5qt-k-0rs | 5 | 1231 + 15 | 70 | CStack= 0x1C RStack= 0x10 |
libtiny20-5qt-k-0rs | 4 | 1231 + 12 | 60 | CStack= 0x1C RStack= 0x10 |
libtiny20-5qt-k-0rs | 3 | 1231 + 9 | 50 | CStack= 0x1C RStack= 0x10 |
libtiny20-5qt-k-0rs | 2 | 1231 + 6 | 40 | CStack= 0x1C RStack= 0x10 |
libtiny20-5qt-k-0rs | 1 | 1231 + 3 | 30 | CStack= 0x1C RStack= 0x10 |
Zastosowany na płytce ATtiny20-EK1 mikrokontroler (ATtiny20) jest wykonany w 14-nóżkowej obudowie SOIC, może być zasilany napięciem od 1,5 do 5,5 V. Pracuje z własnym oscylatorem, bez zewnętrznego rezonatora kwarcowego. Porty mikrokontrolera nie mają żadnego, wyróżnionego trybu pracy wykorzystywanego podczas obsługi czujników QTouch. Mimo to metoda ta charakteryzuje się dużą odpornością na zakłócenia zewnętrzne.