Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronic Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Register Log in

Can you change the CRP register in LPC12XX when the program is running?

Status
Not open for further replies.

xxtigerxx

Advanced Member level 1
Joined
Jun 5, 2001
Messages
444
Helped
38
Reputation
76
Reaction score
32
Trophy points
1,308
Location
Greece
Activity points
2,903
I would like to set the CRP in not isp programming in a project. But sometime i would like to change the CRP to allowed the bootloader to change the firmware.

Is it possible.

I am using the IAR compiler and LPC1227 MCU.

Thanks in advance.
 

bigdogguru

Administrator
Joined
Mar 12, 2010
Messages
9,831
Helped
2,348
Reputation
4,690
Reaction score
2,274
Trophy points
1,413
Location
Southwest, USA
Activity points
62,506
I was looking for a version of the following appnote for the LPC1200 series, however I was unable to find one.

AN10968 Using Code Read Protection in LPC1100 and LPC1300

I hesitate in suggesting a specific approach, due to the fact, once the device is placed in CRP3 mode the device is PERMANENTLY locked UNLESS a custom bootloader CORRECTLY implements the Re-Invoke ISP IAP call.

CRP Level 3 is the highest level supported by the LPC1100/LPC1300 devices. In sophisticated reverse engineering, an intellectual property thief may be able to learn proprietary information about a design by fully erasing and then programming the target device with custom test code and analyzing how the PCB behaves. This would then enable the thief to implement a counterfeit design without ever having read original object code. CRP Level 3 effectively disables ISP functionality1 and SWD, thus the device’s flash memory can no longer be modified. Should there be instances where hardware cannot be allowed to run unauthorized code, CRP Level 3 should be used. Be aware that there is no built-in recovery for designs once CRP Level 3 is enabled. The most simplistic way of implementing a custom recovery mechanism involves the “Re-Invoke ISP” IAP call.
CAUTION: Although the example used in this application note was carefully tested, it is recommended that the user initially configure the device to a level lower than CRP3. Once the code is successfully tested, CRP3 can be used with confidence.
I would suggest proceeding with extreme caution as indicated by the above quote.

I have also attached a zip archive with a similar appnote and accompanying example code for the LPC17xx series.

BigDog
 

Attachments

xxtigerxx

Advanced Member level 1
Joined
Jun 5, 2001
Messages
444
Helped
38
Reputation
76
Reaction score
32
Trophy points
1,308
Location
Greece
Activity points
2,903
Thank you bigdogguru for the post.

I know the application for the LPC17xx sereis.

In this pdf there is a way from a mcu at CPR3 status to be written
View attachment pic 25.bmp

But IAR compiler does not have (or i do not know it) IAP commands.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top