Arm® TrustZone® Getting Started Application on SAM L11: Step 4

Step 4: Generate Code


When done, before generating code, click the Save button.



Save the configuration in its default location when prompted.


Note: The same MHC configuration file will be saved into both the Secure and Non-Secure project directories.


Click on the Generate Code button to start generating code.



Click on the Generate button in the Generate Project window, keeping the default settings, as shown.

If prompted to save the configuration, click Save.



As the code is generated, the MPLAB® Harmony Configurator (MHC) displays the progress.



Navigate to the Projects tab to view the project tree structure.


Examine the generated code.


MHC will include all the MPLAB Harmony library files and generate the code based on the MHC selections. The generated code will add files and folders to your Harmony project as shown.

Among the generated code, notice the Peripheral Library files generated for Real-Time Clock (RTC), SERCOM1 (as I²C), External Interrupt Controller (EIC), and PORT peripherals in the Secure project and SERCOM0 (as Universal Synchronous Asynchronous Receiver Transmitter (USART)), Direct Memory Access (DMA) peripherals in the Non-Secure project. The MHC also generates template main files (main_l11.c) in both the Secure and Non-Secure projects.


Before proceeding further, set the "NonSecure project" as the Main Project.
Click on the Projects tab on the top left pane in MPLAB X IDE. Right click on the project name trustzone_sam_l11_xpro_NonSecure and click on Set as Main Project.


By default, the trustzone_sam_l11_xpro_NonSecure project will be set as the main project by MHC when creating a new Arm® TrustZone® project.


Build the project by clicking on the Clean and Build button build_icon.png and verify that the project builds successfully. At this point, you are ready to start implementing your application code for both Secure and Non-Secure projects.

Next Step >

Table of Contents

© 2024 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.