Na przykład, mikrokontrolery z serii S1 są przeznaczone do pracy przy niewielkim poborze mocy, między innymi w aplikacjach zasilanych bateryjnie. Rdzeń jest taktowany z maksymalną częstotliwością 32 MHz, a mikrokontroler jest wyposażony w szereg układów peryferyjnych: analogowych, interfejsów komunikacyjnych (w tym USB) oraz mechanizmów zwiększających bezpieczeństwo przechowywanych danych i bezpieczeństwo transmisji. Seria S3, to jednostki uniwersalne, bogato wyposażone w analogowe układy peryferyjne, układy transmisji danych i rozbudowane układy bezpieczeństwa. Rdzeń może być taktowany częstotliwością do 48 MHz. Jak się łatwo domyśleć, każda z kolejnych wyższych serii będzie lepiej wyposażona w peryferia będzie taktowana z większość częstotliwością i wyposażona w większe zasoby pamięci programu Flash i danych SRAM.
Jednym z elementów wsparcia produkowanych mikrokontrolerów jest oferowanie konstruktorom gotowych zestawów ewaluacyjnych z zamontowanymi układami peryferyjnymi typu wyświetlacze graficzne, interfejsy komunikacyjne RS232 czy RS485, moduły Wi-Fi, Bluetooth itp. Oczywiście, im bogatsze wyposażenie, tym droższy będzie zestaw. Przykładem rozbudowanego zestawu przeznaczonego do testowania mikrokontrolerów z rodziny Synergy jest zestaw SK-S7G2. Jest to dobrze wyposażona płytka Renesasa z mikrokontrolerem S7. Jednak często projektanci poszukują czegoś prostszego i tańszego, bo ich aplikacje nie wymagają wydajności i wyposażenia zawartego w mikrokontrolerze serii S7, ale też często nie potrzebują wbudowanych, zewnętrznych układów peryferyjnych, za które trzeba zapłacić. Dlatego pojawiają się alternatywne, mniej skomplikowane i tańsze rozwiązania niezależnych producentów.
Jednym z fenomenów rynku elektronicznego jest system Arduino. Oryginalne moduły procesora mogą obsłużyć dzięki gotowym bibliotekom bardzo dużo układów peryferyjnych od prostych czujników temperatury, wilgotności, ciśnienia itp. po graficzne wyświetlacze LCD, czy moduły komunikacji Bluetooth, GSM, czy Wi-Fi. Niezależni producenci oferują wiele gotowych płytek zgodnych ze sprzętowym standardem Arduino. Wystarczy zaprojektować płytkę ewaluacyjną z dowolnym mikrokontrolerem, mającą złącza zgodne ze standardem, żeby móc korzystać z tych płytek rozszerzeń. Taka filozofię przyjęli producenci dwu modułów ewaluacyjnych: Glyn EVBSYNS3 i Arrow Aris EDGE.
Moduł Glyn EVBSYNS3
Głównym elementem pokazanego na fotografii 1 zestawu ewaluacyjnego EVBSYNS3 jest mikrokontroler z serii S3 R7SF3A77C3A01CFP. To jednostka z rdzeniem ARM Cortex M-4 taktowana z maksymalną częstotliwością 48 MHz. Na rysunku 2 pokazano zestawienie zasobów: pamięci programu i pamięci stałych danych Flash, pamięci danych SRAM i układów peryferyjnych. Lista układów peryferyjnych jest imponująca. Wystarczy wymienić te najważniejsze:
- Moduły analogowe: 14-bitowy przetwornik A/C, dwa 12-bitowe przetworniki C/A, dwa szybkie i dwa wolne komparatory, cztery wzmacniacze operacyjne i czujnik temperatury.
- Moduły komunikacyjne: USB 2.0 Full Speed z implementacją Compliant witch USB Battery Charging 1.2, dwa układy SPI, trzy układy I2C, moduł transmisyjny CAN, Serial Sound Interface (SSI), IrDa, Quad Serial Peripherial Interface (QSPI), oraz host do obsługi transmisji z kartami SD/MMC.
- Moduły czasowe: dziesięć liczników GPT32 z funkcją PWM, dwa liczniki asynchroniczne AGT, licznik watchdog WDT, zegar RTC (z podtrzymaniem bateryjnym).
- Moduł HMI: sterowniki wyświetlacza LCD SLCDC i układ pojemnościowej klawiatury dotykowej CTSU.
- Układy szyfrowania i bezpieczeństwa: AES128/256, GHASH i generator liczb losowych TRNG.
- Moduł uniwersalnych linii GPIO.
Dokładne dane mikrokontrolera wraz z opisem układów peryferyjnych można znaleźć w dokumentacji zamieszczonej na stronie internetowej producenta pod adresem https://goo.gl/kySg3r.
Linie sygnałowe najbardziej popularnych interfejsów komunikacyjnych: I2C, UART, SPI i CAN zostały wyprowadzone na zewnątrz poprzez standardowe złącza PMOD (rysunek 3). Za pomocą odpowiednich zworek umieszczonych przy złączach PMOD można wybrać podawanie napięcia +3,3 V lub +5 V na wyprowadzenia zasilania VCC PMOD. Na płytce umieszczono też gniazdo na kartę micro SD, złącze USB-A USB Host, złącze USB mini A (zasilanie i USB device) oraz złącze ADAM do sterowania układem za pomocą FT800 EVE.
Wszystkie linie mikrokontrolera wyprowadzono na podwójne listwy goldpinów o rozstawie 2,54 mm. Oprócz tego na płytce zostały umieszczone pola lutownicze do wlutowania złącz z wyprowadzeniem sygnałów i zasileń zgodnych ze standardem Arduino. Źródłem zasilania może być złącze USB device, złącze USB Jlink lub zewnętrzne napięcie o wartości +6….9 V (wartość maksymalna) doprowadzone do złącza śrubowego POWER. Napięcie ze złącza POWER jest stabilizowane przez stabilizator LM1117-5.0. Następnie, napięcie +5 V z wyjścia stabilizatora lub alternatywnie +5 V ze złącza USB jest podawane na stabilizator +3,3 V, to jest układ LM3940 zasilający mikrokontroler. Wybór rodzaju źródła zasilania +5 V odbywa się za pomocą zwierania styków zworki JP5. Pokazano to na rysunku 4.
Jak już wspominałem mikrokontroler został wyposażony w moduł zegara czasu rzeczywistego RTC z możliwością podtrzymania bateryjnego. Na płytce nie ma baterii, ale można ją dołączyć do dedykowanych punktów lutowniczych. Zworka JP4 umożliwia wybór zasilania RTC z pokładowego napięcia +3,3 V, lub z baterii litowej +3 V. Przyciski i diody LED są na stałe połączone do wybranych linii mikrokontrolera. Do dyspozycji są 3 przyciski, 2 pojedyncze diody LED i jedna dioda LED trójkolorowa.
Istotnym elementem jest układ programatora debuggera J-Link2 firmy Segger. Trudno dzisiaj sobie wyobrazić zestaw ewaluacyjny, do którego trzeba by było dokupić programator. Nawet w modułach dla tanich mikrokontrolerów 8-bitowych są wbudowywane takie układy. J-link2 komunikuje się z komputerem poprzez złącze USB mini A. Jak już wiemy, po podłączeniu do portu USB można też zasilać z niego cały moduł. Schemat elektryczny ze wszystkimi elementami płytki jest dostarczany do zestawu w formie broszury papierowej, ale można go też pobrać ze strony producenta. Niestety obie formy dokumentacji są tylko w języku niemieckim i brak wersji angielskiej jest pewnym niedopatrzeniem producenta.
Moduł ARROW ARIS EDGE Board
Pokazany na fotografii 5 moduł firmy Arrow jest również dostosowany do podłączania peryferii Arduino. Zamontowano tu tylko złącza standardu Arduino i nie ma dodatkowych goldpinów tak jak w poprzednim module. Wynika to najprawdopodobniej z zastosowania mikrokontrolera Serii S1 R7FS124773A01CFM o mniejszej liczbie wyprowadzeń i z założenia bardzo kompaktowych wymiarów samego modułu.
Mikrokontrolery z serii S1 (rysunek 6 – tu S124) z rdzeniem Cortex – M0+, są przeznaczone do zastosowań wymagających małego poboru energii, w tym w układach zasilanych bateryjnie. Mimo tego, że jest to najniższa seria Synergy, to i tak mikrokontrolery są dość bogato wyposażone w:
- Pamięć programu do 128 kB pamięci Flash.
- Pamięć danych SRAM do 16 kB.
- Układy komunikacyjne: USB2.0 Full Spedd, 3×SCI (UART, SPI, I2C), CAN.
- Układy analogowe: 14-bitowy przetwornik A/C, 12-bitowy przetwornik C/A, szybki komparator i czujnik temperatury.
- Układy czasowe: 32-bitowy timer PWM, 6 szt. 16-bitowych timerów PWM, 2×asynchroniczny timer AGT.
- Układy HMI: układ detekcji pojemnościowych czujników dotykowych.
- Układy bezpieczeństwa i kryptologii.
- Układy zarządzania pobierana mocą.
Koncepcja samego moduły jest trochę inna niż w przypadku Glyn EVBSYNS3. Jak wspominałem zrezygnowano z dodatkowych złącz oprócz złącza Arduino. Za to zostały zamontowane dodatkowe moduły peryferyjne:
- Moduł komunikacyjny MGM111 wspierający komunikację z wykorzystaniem protokołów Bluetooth Low Energy Thread i ZigBee.
- Czujnik temperatury i wilgotności Si7013.
- Opcjonalny czujnik temperatury, wilgotności i ciśnienia BME280.
- Czujnik natężenia światła AMS TSL25711FN.
- Czujnik MEMS Bosh BNO055.
Na rysunku 7 Pokazano rozmieszczenie wbudowanych układów peryferyjnych oraz złącz USB: dołączonego do interfejsu USB mikrokontrolera oraz złącza USB wbudowanego programatora. Dokładnie tak samo jak w module Glyna umieszczono tu programator/debugger J-link firmy Segger. Przewidziano możliwość odpięcia sygnałów wbudowanego programatora i podłączenia zewnętrznego programatora (złącze J1). Ponadto, sygnały zewnętrznego programatora JTAG można podłączyć do modułu MGM11 przez złącze J4 i do mikrokontrolera Renesas RX621 pracującego jako programator J-Link2.
Wbudowane układy peryferyjne komunikują się z mikrokontrolerem za pomocą szeregowych magistral: I2C, SPI i USART. Zostało to pokazane na rysunku 8. Oprócz zaawansowanych układów peryferyjnych na płytce umieszczono przycisk zerowania mikrokontrolera RESET, oraz przycisk SW2 podłączone do wyprowadzenia portu P301. Dwie diody: LED1 i LED2 mogą być sterowane z linii P113 i P303, a wbudowany buzzer z linii P501 – rysunek 10.
Jak wspominałem, zastosowano tutaj mikrokontroler o stosunkowo małej liczbie wyprowadzeń. Zamontowanie dodatkowych układów peryferyjnych korzystających z wyprowadzeń mikrokontrolera wymaga możliwości sprzętowego konfigurowania tych wyprowadzeń. W wypadku najbardziej rozbudowanego układu MGM111 wszystkie konieczne linie sterujące są dołączone do mikrokontrolera poprzez rezystory – zworki. Są to wlutowane w płytkę elementy SMD o rozmiarze 0805. Kiedy układ MGM111 nie jest wykorzystywany można te rezystory wylutować i wykorzystać linie mikrokontrolera w innym celu – rysunek 9.
Moduł może być zasilany ze: złącza mini USB podłączonego do programatora J-link, złącza micro USB portu USB mikrokontrolera lub z baterii podłączonej do złącza B1 (rysunek 10). Przełączanie zasilania USB-bateria odbywa się przez zwieranie pinów złącza J3 – rysunek 11. Domyślnie jest wybrane zasilanie z portu USB.
Podsumowanie
Oba przedstawione tu moduły są ciekawą propozycją dla wszystkich tych, którzy chcieliby się zapoznać z możliwościami mikrokontrolerów rodziny Synergy. Wyposażenie złącza standardu Arduino i dodatkowe układy peryferyjne znacznie zwiększa możliwości eksperymentowania z nowymi elementami, a wbudowany programator J-link2, umożliwia natychmiastowe rozpoczęcie pracy we współpracy ze środowiskiem projektowym e2studio. Czekamy na więcej!
Tomasz Jabłoński, EP