PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł...

14
Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych Instrukcja do przedmiotu PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7) Projektowanie z wykorzystaniem układu rekonfigurowalnego Cypress PSoC CY8CKIT-050 autorzy: dr inż. Grzegorz Janczyk dr inż. Marek Niewiński Warszawa, wiosna 2016

Transcript of PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł...

Page 1: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych

Instrukcja do przedmiotu

PODSTAWY MIKROELEKTRONIKI

(LABORATORIUM 6 i 7)

Projektowanie z wykorzystaniem układu rekonfigurowalnego Cypress PSoC CY8CKIT-050

autorzy: dr inż. Grzegorz Janczyk dr inż. Marek Niewiński

Warszawa, wiosna 2016

Page 2: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

2/14 PMK Lab 6/7 wiosna 2016 v.2.0

CYC58xxLP

Port MiniUSB do

programowania i zasilania

układu PSOC

Moduł CapSense

Obszar prototypowy

oraz wybrane porty.

Potencjometr

Diody LED

Wyświetlacz LCD

Port szeregowy RS232

Port E

Port D

Port MiniUSB do do

komunikacji układu PSOC z

otoczeniem

CYC58xxLP

Page 3: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

3/14 PMK Lab 6/7 wiosna 2016 v.2.0

1 Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z techniką programowania i elementami projektowania układów cyfrowych i analogowo-cyfrowych na przykładzie sprzętu i oprogramowania PSoC firmy Cypress Microsystems, z wykorzystaniem systemu uruchomieniowego CY8CKIT-050.

2 Wymagane wiadomości Student przed przystąpieniem do ćwiczenia powinien posiadać podstawową wiedzę z zakresu:

• teorii obwodów i pomiarów, • programowania w języku C, • próbkowania sygnałów, • dokument „AN77759 - Getting started with PSoC 5 LP” dostępny w Internecie.

3 Zasady zaliczenia ćwiczenia Przed przystąpieniem do ćwiczenia student powinien posiadać podstawową wiedzę dotyczącą układów PSoC oraz zagadnień poruszanych w ćwiczeniu. Wiedza ta zostanie zweryfikowana podczas kolokwium wstępnego (zalicza 50% czyli 1 punkt). Ćwiczenie jest realizowane w dwóch kolejnych terminach, podczas których student powinien uruchomić i przedstawić prowadzącemu działanie kolejnych układów opisanych w postaci punktowanych zadań zawartych w punkcie 9 niniejszej instrukcji. Maksymalna łączna ocena końcowa za obydwa ćwiczenia 6 i 7 wynosi 10 punktów, z czego na kolokwium wstępne przypadają 2 punkty, zaś pozostałe 8 punktów należy zgromadzić wykonując zestaw wybranych wariantów zadań opisanych w punkcie 9 niniejszej instrukcji. Ocena z ćwiczenia wystawiana jest na podstawie rozwiązanych zadań oraz indywidualnej rozmowy prowadzącego ćwiczenie wykonawcą lub każdym z wykonawców w przypadku, gdy ćwiczenie jest wykonywane w zespołach. Wymagany jest aktywny udział w pracy nad rozwiązaniem zadań przedstawianych do oceny oraz szczegółowa znajomość zastosowanych rozwiązań u wszystkich wykonawców pracujących w danym zespole.

4 Informacje podstawowe o układach programowalnych PSoC PSoC (Programmable System on Chip) to układy, które łączą w jednym układzie scalonym różne podzespoły takie jak mikrokontroler, rekonfigurowalne peryferia oraz bloki analogowe i cyfrowe – w wersji uniwersalnej (UDB) i/lub dedykowanej (fixed). W połączeniu z systemem uruchomieniowym udostępnionym studentom do pracy podczas laboratorium, graficznym edytorem, materiałami szkoleniowymi i dokumentacją dostarczaną przez producenta, tworzy to relatywnie proste w obsłudze narzędzie służące do projektowania zaawansowanych urządzeń i weryfikowania poprawności zastosowanych rozwiązań projektowych na bardzo wczesnym etapie opracowywania systemu. Architekturę układu PSoC w wersji 5 (CYC58xxLP ) przedstawia rys. 4.1.

Rys 4.1 Ogólna architektura układu PSoC CYC58xxLP

Page 4: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

4/14 PMK Lab 6/7 wiosna 2016 v.2.0

5 Specyfikacja układu PSoC CYC58xxLP Parameters

DC to 80MHz operation

32bit ARM Cortex-M3 CPU, 32 interrupts

24channel direct memory access (DMA) controller

24bit 64tap digital filter processor (DFB) Memories

Up to 256KB program flash

Up to 32KB additional flash for error correcting code (ECC)

Up to 64KB of SRAM

2KB EEPROM Digital peripherals

Four 16bit timer, counter, and PWM (TCPWM)

I2C, 1Mbps bus speed

USB 2.0 certified full speed (FS) 12Mbps

Full CAN 2.0b, 16 Rx, 8 Tx buffers

20-24 universal digital blocks (UDB), programmable to create any number of functions:

8, 16, 24, 32 bit timers, counters, and PWMs

I2C, UART, SPI, I2S, and LIN 2.0 interfaces

Cyclic redundancy check (CRC)

Pseudo random sequence (PRS) generators

Quadrature decoders

Gate-level logic functions

Analog Subsystem

Configurable 8-20bit delta-sigma ADC

Up to two 12bit SAR ADCs

Four 8bit DACs

Four comparators

Four operational amplifiers (opamps)

Four programmable analog blocks, to create:

Programmable gain amplifier (PGA)

Transimpedance amplifier (TIA)

Mixer

Sample and hold (S/H) circuit

CapSense support, up to 62 sensors

1.024 V ±0.1% internal voltage reference Versatile I/O system

46-72 I/O pins; up to 62 general purpose I/Os (GPIOs)

Up to eight performance I/O (SIO) pins

25 mA current sink

Programmable input threshold and output high voltages

Can act as a general purpose comparator

Hot swap capability and overvoltage tolerance

Two USBIO pins that can be used as GPIOs

Route any digital or analog peripheral to any GPIO

LCD direct drive from any GPIO, up to 46×16 segments

CapSense support from any GPIO

1.2-5.5V interface voltages, up to four power domains

Programmable clocking

3-74MHz internal oscillator, 1% accuracy at 3MHz

4-25MHz external crystal oscillator

Internal PLL clock generation up to 80MHz

Low-power internal oscillator at 1, 33, 100 kHz

32.768kHz external watch crystal oscillator

12 clock dividers routable to any peripheral or I/O

Rys 5.1 Szczegółowa architektura układu PSoC CYC58xxLP

Page 5: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

5/14 PMK Lab 6/7 wiosna 2016 v.2.0

6 Struktura systemu uruchomieniowego Układ PSoC CYC58xxLP oraz system uruchomieniowy CY8CKIT-050 zawierają rekonfigurowalne porty I/O dostępne dla użytkownika. Umożliwiają one operowanie na sygnałach zarówno analogowych jak i cyfrowych, które mogą być przez użytkownika przekierowane praktycznie na dowolny pin sygnałowy. W sposób zasadniczy wpływa to na możliwość uproszczenia routingu na poziomie topografii płytki drukowanej PCB. Dostępne są trzy typy wejść/wyjść sygnałowych z układu: • porty ogólnego przeznaczenia oznaczane w specyfikacji jako GPIO (general-

purpose I/O), • szybkie porty o wysokiej wydajności przeznaczone do transferu

szybkozmiennych sygnałów, określane jako SIO (performance I/O), • porty do obsługi komunikacji w standardach USB2.0, I2C, CAN - określane

jako USBIO. Porównanie parametrów GPIO i SIO zostało przedstawione w tabeli obok. Układ PSoC CYC58xxLP jest przeznaczony do pracy z sygnałami analogowymi i cyfrowymi. Z tego względu, dla zachowania wymaganej w elektronice analogowej precyzji parametrów sygnałów, wrażliwości na zakłócenia i potrzeby ograniczenia skutków przesłuchów, w systemie uruchomieniowym zaimplementowano trzy systemy masy sygnałowej: • VSSD - masa cyfrowa służy do podłączania modułów cyfrowych i komunikacji

cyfrowej, • VSSA - masa analogowa służąca do uziemiania bloków analogowych i układów odniesienia i precyzyjnych

układów przetworników DAC i DCA. • GND - uniwersalne podłączenie do potencjału masy. Zarówno masa VSSD jak i VSSA podłączone są do tego

potencjału przy wykorzystaniu topologii gwiazdy

Rys 6.1 Szczegółowa architektura systemu uruchomieniowego układu PSoC CY8CKIT-050

Page 6: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

6/14 PMK Lab 6/7 wiosna 2016 v.2.0

Układ PSoC CYC58xxLP posiada dedykowany do komunikacji cyfrowej Port D, który może być wykorzystywany do podłączania modułów rozszerzeń (expansion board kits). W konfiguracji zastosowanej w systemie uruchomieniowym port ten jest wykorzystywany między innymi do podłączenia czujnika pojemnościowego CapSense. Port D nie jest przeznaczony do precyzyjnego prowadzenia sygnałów analogowych.

Rys 6.2 Schemat portu D systemu uruchomieniowego układu PSoC CY8CKIT-050 Port E jest dedykowanym portem analogowym umożliwiającym wyprowadzenie na zewnątrz sygnałów z wszystkich dostępnych w systemie modułów analogowych jak np. wzmacniacze operacyjne. Port ten zawiera wyprowadzenia wyprowadzeń masy analogowej GND_A (VSSA), które są elektrycznie podłączone poprzez masę główną GND. Wyprowadzenia te są przeznaczone do podłączania analogowych modułów rozszerzeń do systemu. Port zawiera również wyprowadzenie masy dedykowane do podłączania modułów cyfrowych. Port ten łączy wyprowadzenia fizycznych portów PCoS 5 o numerach P0, P3 i P4. Port zawiera również wyprowadzenia masy przeznaczonej do aplikacji cyfrowej: GND. Takie separowanie na poziomie masy umożliwia realizowanie precyzyjnych układów analogowych z wykorzystaniem układu PSoC5. System uruchomieniowy CY8CKIT-050 PSoC CYC58xxLP posiada również dedykowany układ komunikacyjny RS-232 (UART).

Rys 6.3 Schemat portu E systemu uruchomieniowego układu PSoC CY8CKIT-050 Obszar prototypowy systemu uruchomieniowego CY8CKIT-050 udostępnia użytkownikowi do wykorzystania w prototypowej aplikacji użytkowej:

dwa pełne porty (P0 i P3),

potencjometr R56

cztery wzmacniacze operacyjne (OPAMP),

cztery wejścia/wyjścia komunikacyjne (SIO) na pinach P12_4, P12_5, P12_6 oraz P12_7,

dwie linie ogólnego przeznaczenia (GPIO) na pinach P6_0 oraz P6_6,

Page 7: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

7/14 PMK Lab 6/7 wiosna 2016 v.2.0

wyprowadzenia zasilania i masy wyprowadzone w bezpośrednim sąsiedztwie obszaru prototypowego.

cztery diody LED (dwie dostępne z pinów na płytce, dwie podłączone do linii portów P6_2 i P6_3)

dwa switche (SW2, SW3) podłączone do linii portów P15_5 oraz P6_1

moduł CapSense wyposażony w dwa dotykowe klawisze podłączone do linni portów P5_5 i P5_6 oraz slider podłączony do linii portów P5_0 – P5_4

Rys 6.4 Schemat modułu prototypowego systemu uruchomieniowego układu PSoC CY8CKIT-050

Rys 6.5 Schemat modułu CapSense systemu uruchomieniowego układu PSoC CY8CKIT-050

Page 8: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

8/14 PMK Lab 6/7 wiosna 2016 v.2.0

a) b)

Rys 6.6 Schemat podłączenia systemu uruchomieniowego układu PSoC CY8CKIT-050 modułu dwuwierszowego wyświetlacza LCD (a) oraz portu szeregowego RS232 (b).

7 Przykładowa aplikacja Należy uruchomić środowisko programistyczne PSOC Creator w najnowszej wersji 3.3 SP1 (marzec 2016) a następnie utworzyć nowy projekt poleceniem menu File New Project.

Następnie należy wybrać wariant Empty schematic,

Page 9: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

9/14 PMK Lab 6/7 wiosna 2016 v.2.0

określić nazwę projektu i jego lokalizację. Po utworzeniu projektu, należy przystąpić do wyboru komponentów systemu z których zamierzamy korzystać. W tym przypadku będą to następujące elementy wybrane z Cypress Component Catalog: Character LCD grupa Display, Wyświetlacz LCD PWM grupa Digital/Functions, Generator PWM Logic Low ‘0’ grupa Digital/Logic, Logiczna wartość ”0” do

podania na wejścia sterujące kill I reset generator PWM sygnału

Digital Output Pin grupa Ports and Pins, Port wyjściowy do

przyporządkowania fizycznego sposobu wyprowadzania sygnału.

Clock grupa System/Clock. Zegar taktujący generator PWM Następnie należy określić parametry pracy poszczególnych bloków i połączenia sygnałowe pomiędzy nimi. W tym celu dla kolejnych modułów parametry powinny wyglądać następująco lub podobnie jak poniżej, gdyż Studenci mogą (a nawet powinni) poeksperymentować z konfiguracją:

Okno konfiguracyjne modułu PWM.

Okno konfiguracyjne CharLCD

Page 10: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

10/14 PMK Lab 6/7 wiosna 2016 v.2.0

Okno konfiguracji pinu – wyprowadzenia z portu SIO/GPIO

Okno konfiguracji zegara. Schemat całego Systemu powinien wyglądać następująco:

Niezbędne jest napisanie w języku C krótkiego programu obsługi konfigurowanego systemu. W tym celu należy przejść do modułu Workspace Explorer i otworzyć plik main.c, a następnie wstawić w nim następujące linie sterujące kodu w języku C: PWM_1_Start();

LCD_Char_1_Start();

LCD_Char_1_Position(0,0);

LCD_Char_1_PrintString("Hello PMK with PSOC!");

Page 11: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

11/14 PMK Lab 6/7 wiosna 2016 v.2.0

Do zaliczenia ćwiczenia niezbędna jest znajomość znaczenia poszczególnych wykorzystywanych w programie funkcji, użytych parametrów wywołania itd.

Pomoc na temat dostępnych funkcji obsługi poszczególnych modułów, składni, postaci wywołania, argumentów można znaleźć naciskając klawisz Datasheet w oknie konfiguracji parametrów danego modułu. W przypadku wyświetlacza LCD okno konfiguracji dla elementu LCD_Char_1 jest następujące:

a przykładowe, wybrane funkcje obsługi wyświetlacza opisane w dostępnej dokumentacji to:

Należy pamiętać, że wywołanie dowolnej funkcji na rzecz konkretnej instancji modułu, np. LCD_Char_1, wymaga zmodyfikowania nazwy funkcji poprzez uwzględnienie numeru instancji tego modułu, np. LCD_Char_1_Start(). Do uruchomienia systemu niezbędne jest jeszcze skonfigurowanie elementów wejścia/wyjścia. Jest to dostępne po otwarciu pliku *cydwr należącego do bieżącego projektu. Poprawnego przypisania w tym przypadku wymagają porty wyświetlacza LCD_Char1:LCDPort[6:0] i Pin_1. Wyświetlacz LCD należy przypisać do fizycznego portu P2, podczas gdy w przypadku portu wyjściowego Pin_1 Studenci mają pewną swobodę wyboru fizycznego przypisania.

8 Kompilacja i uruchamianie Kompilacja projektu odbywa się z menu Build programu PSOC Creator, lub kombinacją klawiszy Ctrl+F6. Jeżeli kompilacja zakończyła się powodzeniem, programowe przeniesienie konfiguracji i oprogramowania do systemu uruchomieniowego CY8CKIT-050 fizycznie odbywa się za pośrednictwem przewodu MiniUSB włączonego do prawego portu (dostępne są dwa) umieszczonego na płytce ewaluacyjnej .

Page 12: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

12/14 PMK Lab 6/7 wiosna 2016 v.2.0

Transfer i uruchomienie aplikacji odbywa się z menu Debug Program lub kombinacją klawiszy Shift+F5. Opisana wyżej konfiguracja systemu i aplikacja umożliwiają wyświetlenie napisu na wyświetlaczu i pojawienie się sygnału PWM na porcie P0_7, do którego można podłączyć umieszczoną na płycie głównej zestawu uruchomieniowego diodę LED. W zestawie znajdują się 4 diody świecące – przed przystąpieniem do realizacji zadań punktowanych należy zastanowić się w jaki sposób można uzyskać dostęp do pozostałych diod LED.

Page 13: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

13/14 PMK Lab 6/7 wiosna 2016 v.2.0

9 Zadania do samodzielnego wykonania Zależnie od decyzji prowadzącego, zadania mogą być wykonywane przez studentów pojedynczo lub w zespołach dwuosobowych. Student wybiera zadania o łącznej maksymalnej punktacji 8pkt. 9.1 Zadanie 1 (1 pkt) Wyświetlić na ekranie tekst powitalny „Laboratorium Podstaw Mikroelektroniki IMiO-PW” Wskazówki praktyczne Brak. Przydatne funkcje

LCD_Position(); LCD_Char_Start(); LCD_PrintString(displayStr); sprintf();

9.2 Zadanie 2 (2 pkt) Odebrać dane pomiarowe z potencjometru VR wbudowanego w płytkę ewaluacyjną i wyświetlić je na wyświetlaczu LCD stosując potrójny standard prezentacji wyniku:

poprzez wartość numeryczną wyskalowaną w zakresie 0-3.3 [V] w pierwszym wierszu (0,5 pkt)

prezentując surową wartość odczytaną z przetwornika (HEX), w pierwszym wierszu (0,5 pkt)

graficznie (w drugim wierszu), wykorzystując pasek (tzw. „bar graph”) uzyskując (1 pkt) dokładność wskazania bar-graph na poziomie 1/16 zakresu pomiarowego.

Wskazówki praktyczne

W konfiguracji SAR należy ustawić 12 bitową rozdzielczość przetwornika, prędkość przetwarzania 100kS/s, z wewnętrznym zegarem, wewnętrznym źródłem odniesienia i zakresem przetwarzania Vssa ÷ Vdda. Należy pamiętać o konieczności włączenia na poziomie konfiguracji wyświetlacza LCD przetwarzania znaków na cyfry. W tym celu należy w oknie konfiguracji wyświetlacza zaznaczyć opcję „Include ASCII to Number Conversion Routines”.

Przydatne funkcje

CYGlobalIntEnable ADC_Start(); ADC_StartConvert(); ADC_IsEndConversion(ADC_WAIT_FOR_RESULT); ADC_GetResult16(); ADC_CountsTo_mVolts();

9.3 Zadanie 3 (2-3 pkt) Zrealizować sterowanie jasnością diody LED1 przy pomocy PWM kontrolowanego nastawami potencjometru VR i portu na zasadzie

Wersja standard: (2 pkt) dioda LED1 sterowana w zakresie 0-100%

Wersja dla ambitnych: (3 pkt) Wersja standard (w pełni sprawna) + dodatkowo: przeciwsobnie względem LED1 sterowanie jasnością LED2 w schemacie: LED1=100% jasności + LED2=0% jasności LED1=0% jasności + LED2=100% jasności

Wskazówki praktyczne

Można wygenerować dwa przebiegi o kontrolowanym wypełnieniu z jednego PWM w konfiguracji UDB z odpowiednio ustawionymi wartościami parametrów PWM Mode , CMP Value i CMP Type lub użyć dwóch modułów PWM. Kontrolę przerwań można/należy wyłączyć.

Przydatne funkcje

PWM_Start(); PWM_WritePeriod() PWM_WriteCompare()

Page 14: PODSTAWY MIKROELEKTRONIKI (LABORATORIUM 6 i 7)vlsi.imio.pw.edu.pl/pmk/PMK_cw6_7v3.pdf · Moduł apSense Obszar prototypowy oraz wybrane porty. Potencjometr Diody LED Wyświetlacz

14/14 PMK Lab 6/7 wiosna 2016 v.2.0

9.4 Zadanie 4 (2 pkt) Zrealizować dotykowy włącznik LED3 przy wykorzystaniu elektrody dotykowej

Wersja standard 1: P5_5 ON/OFF (2 pkt)

Wersja standard 2: P5_5 ON/P5_6 OFF (2 pkt) Wskazówki praktyczne

W konfiguracji modułu CapSense należy wybrać wewnętrzne taktowanie zegara. Nie jest wymagane uwzględnianie wpływu deszczu i włączanie do układu dodatkowej elektrody ekranującej. W przypadku błędnych odczytów lub wpływu zakłóceń należy poeksperymentować z filtrami (Raw data noise filter).

Przydatne funkcje

CapSense_Start(); CapSense_InitializeAllBaselines(); CapSense_UpdateEnabledBaselines(); CapSense_ScanEnabledWidgets(); CapSense_IsBusy() CapSense_CheckIsWidgetActive(); CapSense_GetCentroidPos();

9.5 Zadanie 5 (3-4 pkt) Zrealizować sterowanie jasnością diody LED3 przy pomocy PWM kontrolowanego odczytami z elektrody dotykowej CapSense

Wersja standard: (3 pkt) „płynne” sterowanie jasnością diody LED3 w zakresie 0-100% (P5_0-P5_4)

Wersja dla ambitnych: (4 pkt) Wersja standard (w pełni sprawna) + dodatkowo LED3 ON/OFF przy pomocy elektrody dotykowej CapSense (P5_5) lub (P5_5/P5_6)

Wskazówki praktyczne Można wygenerować dwa przebiegi o kontrolowanym wypełnieniu przebiegu generowanego z PWM w konfiguracji UDB z odpowiednio ustawionymi wartościami parametrów PWM Mode , CMP Value i CMP Type. Kontrolę przerwań można/należy wyłączyć.

Przydatne funkcje

CapSense_GetCentroidPos();

9.6 Zadanie 6 (3-6 pkt) Zrealizować sterowanie jasnością diody LED3 przy pomocy PWM kontrolowanego odczytami termistora

Wersja standard: (3p) wyświetlić temperaturę na wyświetlaczu LCD stosując podwójny standard prezentacji wyniku: - poprzez wartość numeryczną w pierwszym wierszu, oraz - graficznie (w drugim wierszu) wykorzystując pasek (tzw. „bar graph”)

Wersja dla ambitnych: (4p) Wersja standard (w pełni sprawna) + dodatkowo po przekroczeniu ustalonego progu temperatury należy zaświecić diodę LED1

Wersja zaawansowana 1: (5p) Wersja dla ambitnych (w pełni sprawna) + dodatkowo ustalanie progu przy pomocy CapSense: P5_5/P5_6 (podnoszenie/obniżanie progu):

Wersja zaawansowana 2: (6p) Wersja dla zaawansowana 1 (w pełni sprawna) + dodatkowo zależnie od temperatury sterowanie jasnością diody LED2 w zakresie 0-100%