Zestaw startowy z mikrokontrolerami Renesas Synergy Glyn EVBSYNS3 – prosta aplikacja na Cortex-M dla początkujących

Firma Renesas, jeden z wiodących producentów mikrokontrolerów od jakiegoś czasu produkuje i intensywnie wspiera swoją nową rodzinę mikrokontrolerów z rdzeniem ARM – SYNERGY – ukierunkowaną na zastosowania IoT. Rodzina składa się z czterech serii MCU: S1, S3, S5 i S7 i jest znana pod nazwą MCU Renesas Synergy. Każda z serii ma trochę inne wyposażenie w układy peryferyjne i różną wydajność rdzenia. Na przykład mikrokontrolery najniższej serii S1 są przeznaczone do pracy z niskim poziomem pobieranej energii, między innymi w aplikacjach zasilanych bateryjnie.

Rdzeń jest taktowany z maksymalną częstotliwością 32MHz, a mikrokontroler jest wyposażony w szereg układów peryferyjnych: analogowych, interfejsów komunikacyjnych ( w tym USB), oraz układów zwiększających bezpieczeństwo przechowywanych danych i bezpieczeństwo transmisji. Seria S3, to jednostki uniwersalne, bogato wyposażone w układy peryferyjne analogowe, układy transmisji danych i rozbudowane układy bezpieczeństwa. Rdzeń może być taktowany częstotliwością do 48MHz. Jak się łatwo domyśleć każda z kolejnych wyższych serii będzie lepiej wyposażona w peryferia będzie szybciej taktowana i wyposażona w większe zasoby pamięci programu Flash i pamięcią danych SRAM.

Jednym z elementów wsparcia produkowanych elementów jest oferowanie konstruktorom gotowych modułów ewaluacyjnych wraz z zabudowanymi zewnętrznymi układami peryferyjnymi typu wyświetlacze graficzne, moduły komunikacyjne USART->RS232/485, moduły Wi-Fi, Bluetooth itp. Oczywiście im bogatsze wyposażenie tym moduł będzie droższy. Takim rozbudowanym modułem jest SK-S7G2. Jest to dobrze wyposażona płytka firmy Renesas wyposażona w mikrokontroler z najwyższej serii 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 tez często nie potrzebują zabudowanych zewnętrznych układów peryferyjnych, za które trzeba zapłacić. Dlatego pojawiają się alternatywne, prostsze i tańsze rozwiązania niezależnych producentów. Opiszemy tu jeden z takich zestawów: EVBSYNS3 firmy Glyn.

 

Co na pokładzie

Głównym elementem modułu EVBSYNS3 jest mikrokontroler serii S3 R7SF3A77C3A01CFP. Jest o jednostka z rdzeniem ARM Cortex M-4 taktowana z maksymalną częstotliwością 48MHz. Na rysunku 1 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:

  • Układy analogowe: 14-bitowy przetwornik analogowo cyfrowy, dwa 12-bitowe przetworniki cyfrowo analogowe, dwa szybkie i dwa wolne komparatory, cztery wzmacniacze operacyjne i czujnik temperatury.
  • Moduły komunikacyjne: USB 2.0 Full Speed z implementacją 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.
Rys. 1. Zasoby mikrokontrolerów serii S3. Dokładne dane mikrokontrolera wraz z opisem układów peryferyjnych można znaleźć w dokumentacji zamieszczonej na stronie internetowej producenta: https://www.renesas.com/en-us/products/synergy/microcontrollers/s3-series.html

 

Rys. 2. Złącza zestawu prezentowanego w artykule

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 2). Za pomocą odpowiednich zworek umieszczonych przy złączach PMOD można wybrać podawanie napięcia +3,3V, lub +5V 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 podłączenia sterowania układem FT800 EVE.

Wszystkie linie mikrokontrolera wyprowadzono na podwójne listwy goldpinów o rozstawie 2,54mm. 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. Taki zabieg jest często stosowany przez producentów modułów ewaluacyjnych, bo pozwala na podłączenie dużej ilości układów rozszerzeń przeznaczonych dla oryginalnych płytek Arduino.

Źródłem zasilania może być złącze USB device, złącze USB J-Link , lub zewnętrzne napięcie o wartości +6…9V (max) podłączone do złącza śrubowego POWER. Napięcie ze złącza POWER jest stabilizowane przez stabilizator LM1117-5.0 do poziomu +5V. Potem +5V z wyjścia stabilizatora, lub alternatywnie +5V ze złącza USB jest podawane na stabilizator +3,3V LM3940 zasilający mikrokontroler. Wybór rodzaju źródła zasilania +5V odbywa się za pomocą zwierania styków zworki JP5. Pokazano to na rysunku 3.

Rys. 3. Selektor źródła napięcia zasilającego +5V

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ą sobie podłączyć do dedykowanych punktów lutowniczych. Zworka JP4 umożliwia wybór zasilania RTC z pokładowego napięcia +3,3V, lub z baterii litowej +3V.

Jak na każdym szanującym się module ewaluacyjnym nie mogło zabraknąć przycisków i diod LED. 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.

Bardzo istotnym elementem jest układ programatora debuggera J-Link firmy Segger. Trudno dzisiaj sobie wyobrazić moduł 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-Link 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.

 

Środowisko projektowe

Do tworzenia projektów jest przeznaczone środowisko e2studio z kompilatorem języka C (ARM GCC) i bibliotekami SSP oferowane bezpłatnie przez firmę Renesas. Pakiet instalacyjny e2studio i biblioteki można pobrać ze strony producenta po zarejestrowaniu się i utworzeniu konta.

Po zainstalowaniu e2studio rozpoczynamy tworzenie nowego projektu z menu File->New->Synergy Projectrysunek 4.

Rys. 4. Tworzenie nowego projektu

W oknie kreatora wpisujemy nazwę projektu (glyn_module_test), wybieramy kompilator GCC ARM Embedded i jeżeli wcześniej nie była podana, to wpisujemy ścieżkę dostępu do pliku licencji kompilatora – rysunek 5.

Rys. 5. Nadanie nazwy projektu i wybór kompilatora

W kolejnym kroku możemy wybrać wsparcie firmowego modułu ewaluacyjnego Renesas. Ponieważ nasz moduł nie jest w ten sposób wspierany wybieramy uniwersalny predefiniowany szkielet projektu BSP (Base Board Support Package) – rysunek 6.

Rys. 6. Wybór szkieletu projektu

Po kliknięciu na przycisk Finish kreator projektu wygeneruje szkielet projektu z niezbędnymi plikami źródłowymi i zakończy pracę. Teraz projekt można uzupełniać o własne pliki źródłowe i równolegle konfigurować za pomocą konfiguratora e2studio. Konfigurator uruchamia się klikając na przycisk Synergy Configuration w prawym górnym rogu okna ekranu lub klikając na plik configuration.xml umieszczony w oknie Project Explorer z innymi plikami. Konfigurator ma szereg zakładek, w których można modyfikować między innymi: typ mikrokontrolera (zakładka BSP), taktowanie (zakładka Clocks), wyprowadzenia mikrokontrolera (zakładka Pins) itp.

O autorze