Dodano: poniedziałek, 23 grudnia 2024r. Producent: Microchip

Tworzenie niezmiennych bootloaderów z rodziną mikrokontrolerów PIC18-Q24 firmy Microchip Technology

Podczas prototypowania aplikacji często jedynym elementem oprogramowania układowego mikrokontrolera jest wymagany kod aplikacji. Jeśli zostanie wykryty błąd oprogramowania układowego, jest to stosunkowo prosty proces przeprogramowania i ponownego uruchomienia aplikacji. Jednak gdy projekt trafi do masowej produkcji, nie jest możliwe śledzenie każdego z urządzeń i przeprogramowanie ich.

Rozwiązaniem tego problemu jest tak zwany bootloader. Bootloader to mały fragment kodu, który zaprojektowany jest do „uruchamiania” mikrokontrolera i inicjowania podstawowych funkcji przed aplikacją. W przypadku 8-bitowych mikrokontrolerów, zazwyczaj głównym obowiązkiem bootloadera jest umożliwienie aktualizacji oprogramowania układowego bez potrzeby stosowania programatora. W zależności od aplikacji nowe oprogramowanie układowe jest zazwyczaj otrzymywane przez interfejs UART, SPI, I2C i/lub USB.

Chociaż bootloader można napisać od podstaw, wstępnie napisany sterownik jest dostępny w MPLAB® Code Configurator (MCC), bezpłatnym narzędziu graficznym do konfigurowania bibliotek sprzętu peryferyjnego i oprogramowania. Biblioteki Pythona dla komputerów stacjonarnych są dostarczane w celu połączenia z biblioteką oprogramowania układowego przez UART. Aktualnie biblioteka obsługuje przesyłanie przez UART z planowanym wsparciem dla SPI, I2C i USB. Więcej informacji o 8-bitowej bibliotece bootloadera można znaleźć tutaj.

Inną zaletą korzystania z bootloadera jest opcja trwałego zablokowania mikrokontrolera i uniemożliwienia programowania zewnętrznego przy jednoczesnym zachowaniu możliwości uaktualniania oprogramowania układowego w przyszłości. Rodzina mikrokontrolerów PIC18-Q24 zawiera kilka ulepszonych funkcji ochrony kodu, które uzupełniają podejście oparte na bootloaderze:

  • Wyłączanie interfejsu programowania i debugowania (PDID)
  • Włączanie programowania szeregowego w układzie (ICSP)
  • Ochrona kodu (wyłączanie odczytu pamięci)
  • Jednorazowy programowalny obszar pamięci flash (SAF)
  • Segmentowana ochrona zapisu dla kodu rozruchowego/aplikacji

PDID to trwałe, nieodwracalne zablokowanie zewnętrznych programatorów i debugerów. Zapobiega to przeprogramowaniu mikrokontrolera przez narzędzia zewnętrzne. Ta funkcja działa z funkcją włączania ICSP oprogramowania, która umożliwia programowi ładującemu tymczasowe ponowne włączenie niektórych funkcji interfejsu ICSP, takich jak odczyt/weryfikacja programu i wykrywanie urządzeń w czasie wykonywania, ale nie obejmuje to operacji zapisu lub kasowania. Funkcja ochrony kodu może być używana do blokowania operacji odczytu i weryfikacji ICSP.

Inną ulepszoną funkcją ochrony kodu jest Jednorazowy programowalny SAF. SAF to funkcja, która oznacza część pamięci flash programu jako niewykonywalną w celu przechowywania danych. Dzięki temu ten obszar pamięci flash jest jednorazowo programowalny, co zapobiega jego wymazaniu lub ponownemu zapisaniu zarówno z narzędzi zewnętrznych, jak i samego mikrokontrolera.

Na koniec rodzina mikrokontrolerów PIC18-Q24 zawiera segmentowaną ochronę zapisu dla pamięci rozruchowej, aplikacji i/lub EEPROM. Bity te uniemożliwiają zewnętrznemu programatorowi modyfikowanie wybranych obszarów pamięci, ale nie zapobiegają wewnętrznym zapisom własnym z mikrokontrolera. Użycie tych ulepszonych bitów ochrony kodu w połączeniu z bootloaderem umożliwia utworzenie „niezmiennego bootloadera” - innymi słowy bootloadera, którego nie można nadpisać ani usunąć. Można go również użyć z PDID i/lub Code Protection, aby zablokować oprogramowanie układowe i chronić własność intelektualną.

Narzędzia programistyczne

Mikrokontrolery PIC18-Q24 są w pełni obsługiwane przez kompleksowy ekosystem programistyczny firmy Microchip i zaprojektowane do integracji z MPLAB® (MCC). Zestaw PIC18F56Q24 Curiosity NanoEvaluation Kit (EV01E86A) oferuje pełne wsparcie w projektowaniu z wykorzystaniem rodziny PIC18-Q24. Funkcje te koordynują się, zapewniając płynny rozwój oprogramowania wbudowanego i skracając czas wprowadzenia produktu na rynek.

Źródło: Microchip Technology Inc. Tłumaczenie: Gamma Sp. z o.o.

Gamma Sp. z o.o. jest autoryzowanym dystrybutorem rozwiązań firmy Microchip Technology w Polsce. Zapraszamy do kontaktu z naszym działem handlowym.

Pozostałe aktualności:

Kompleksowe rozwiązanie SMARC SOM firmy Digi International oparte na procesorze aplikacyjnym NXP i.MX 95

Kompleksowe rozwiązanie SMARC SOM firmy Digi International oparte na...

Digi ConnectCore 95 SMARC redefiniuje koncepcję systemu modułowego SMARC® (SOM), zapewniając zintegrowaną...

piątek, 3 lipca, 2026 Więcej

Technologia V2X zweryfikowała potrzeby bezpieczeństwa nowoczesnych pojazdów

Technologia V2X zweryfikowała potrzeby bezpieczeństwa nowoczesnych pojazdów

Podczas gdy branża motoryzacyjna nadal zmierza w kierunku wysoce zintegrowanych pojazdów definiowanych programowo...

piątek, 3 lipca, 2026 Więcej

Połącz narzędzia AI z Digi Remote Manager® i Digi Genesis za pomocą serwera MCP stworzonego do wsparcia działań operacyjnych przedsiębiorstw

Połącz narzędzia AI z Digi Remote Manager® i Digi Genesis za pomocą...

Serwer protokołu Model Context Protocol (MCP) firmy Digi International umożliwia bezpieczną oraz skalowalną...

czwartek, 2 lipca, 2026 Więcej

Skupienie się na zgodności z przepisami CRA i zarządzaniu cyklem życia systemów Linux wbudowanych

Skupienie się na zgodności z przepisami CRA i zarządzaniu cyklem życia...

Firma Avalue Technology ogłosiła rozszerzoną integrację platformy Torizon ze swoimi komputerami przemysłowymi,...

czwartek, 2 lipca, 2026 Więcej

Skyworks Si829x izolowany sterownik bramki bezpieczeństwa dla falowników trakcyjnych pojazdów elektrycznych

Skyworks Si829x izolowany sterownik bramki bezpieczeństwa dla falowników...

Opracowany zgodnie z normami bezpieczeństwa funkcjonalnego ISO 26262, sterownik Si829x firmy Skyworks nadaje się do...

czwartek, 2 lipca, 2026 Więcej

Najnowsze rozwiązania zasilania i sterowników bramek firmy Skyworks Solutions dla centrów danych AI, pojazdów elektrycznych EV i aplikacji dużej mocy

Najnowsze rozwiązania zasilania i sterowników bramek firmy Skyworks...

Skyworks Solutions, Inc., wiodący producent i dostawca półprzewodników oraz rozwiązań analogowych i mieszanych,...

czwartek, 2 lipca, 2026 Więcej