Zastosowanie zabezpieczenia kodu przed odczytem w mikrokontrolerach LPC1100 oraz LPC1300
Listing 2. Fragment kodu z przykładu CRP (własny skrypt linkera)
… ENTRY(ResetISR)
SECTIONS
{
.text :
{
KEEP(*(.isr_vector))
. = 0x000002FC; KEEP(*(.crp))
*(.text*)
*(.rodata*)
} > MFlash32
…
Wnioski
Dzięki nauczeniu się jak włączyć zabezpieczenie CRP, projektanci mogą zapobiegać kradzieży własności intelektualnej. W niniejszym artkule opisano szczegółowe różnice występujące między poziomami zabezpieczeń CRP oraz przekazano sugestie, które mogłyby skłonić programistę do wyboru określonego poziomu. Korzystając z IDE LPCXpresso programiści mogą dodać zabezpieczenie CRP do swoich projektów, tworząc specjalny segment pamięci i umieszczając w nim stałą.
Załącznik A
Utworzenie zestawu własnych skryptów linker wymaga kilku etapów. Najpierw należy utworzyć w projekcie nowy folder o nazwie „custom_ld”. W nim będą przechowywane pliki własnych skryptów. Następnie należy przekopiować automatycznie wygenerowane skrypty linkera z rozszerzeniem „Id” z aktywnego folderu docelowego (zazwyczaj „Debug” lub „Release”) do folderu „custom_ld”. Na rysunku 3 pokazano, gdzie w projekcie przechowywane są skrypty generowane automatycznie. Należy zmienić nazwę pliku zgodnie z tabelą 2. Przed modyfikacją treści skryptów należy zapewnić konfigurację zestawu narzędzi jak pokazano na rysunku 4. Należy dodać sekcję „crp” do „Custom.ld”, jak pokazano na listingu 2. Na koniec należy zaktualizować Custom.ld, aby wskazać skrypty Custom_mem.ld i Custom_lib.ld w nowo utworzonym folderze custom_ld . Przykład tego jest pokazany na listingu 3.
Tab. 2. Skrypty linkera o zmienionych nazwach
| Nazwa oryginalna | Kopia o zmienionej nazwie |
| NAZWAPROJEKTU_Debug.ld | Custom.ld |
| NAZWAPROJEKTU_Debug_mem.ld | Custom_mem.ld |
| NAZWAPROJEKTU_Debug_lib.ld | Custom_lib.ld |
Rys. 3. Automatycznie generowane skrypty linkera
Rys. 4. Definiowanie własnego pliku linkera
Listing 3. Modyfikacje w skrypcie linkera „Custom.ld”
/* * WYGENEROWANY PLIK – NIE EDYTOWAĆ * (C) Code Red Technologies Ltd, * Wygenerowany plik skryptu linkera w języku C dla układu LPC1114 */ INCLUDE "../custom_ld / Custom_lib.ld " INCLUDE "../custom_ld /Custom_mem.ld " ENTRY(ResetISR) …
(1) Zmiany w stosunku do oryginalnego pliku dotyczą dyrektyw INCLUDE
Artykuł opracowano na podstawie noty aplikacyjnej AN10968 firmy NXP.



Grzegorz Kamiński: Dlaczego powstały tranzystory FinFET i GAAFET?
Google stawia na fuzję jądrową. AI potrzebuje coraz więcej energii
Fotowoltaika perowskitowa: od wydajności laboratoryjnej do masowej komercjalizacji 

![https://www.youtube.com/watch?v=XkeyLmtLfxo O konkursie organizowanym przez firmę TRUMPF Huettinger i polskie uczelnie techniczne opowiada Alicja Peresada i prof. Jacek Rąbkowski oraz kilkoro nagrodzonych dyplomantów: mgr inż. Jakub Dobosz, inż. Maja Zielińska, dr inż. Jakub Kołodziej, dr inż Weronika Hryniewska-Guzik i dr inż. Grzegorz Bartyzel. Zapraszamy do obejrzenia filmu! [materiał redakcyjny]](https://mikrokontroler.pl/wp-content/uploads/2026/07/TRUMPF-czolowka.png)



