Low Power Application on SAM D21 Using Harmony v3 Peripheral Libraries: Step 1
Verify whether the MHC Plug-in is Installed in MPLAB® X IDE
Verify that MPLAB® Harmony Configurator (MHC) is installed.
- Launch the MPLAB X IDE from the Microsoft Windows® Start menu. Close any projects and files that are currently open.
- Go to Tools > Embedded.
- You will see MPLAB Harmony 3 Configurator in the menu.
If you don't see it in the menu, install MHC.
Set Up MHC Plug-in Window to Open in Standalone Mode
Go to Tools > Options. You will see the Options window open.
Go to Plugins > Window Manager and select Standalone mode. Click Apply and then click OK.
Create MPLAB Harmony v3 Project Using MPLAB X IDE
Select File > New Project from the main IDE menu.
In the Categories pane of the New Project dialog window, select Microchip Embedded. In the Projects pane, select 32-bit MPLAB Harmony v3 Project, then click Next.
Browse to the folder you downloaded the framework to in the Framework Path edit box. If you haven't done this, or want to download it to a different folder, click the Launch Content Manager button, then click Next.
In the Project Settings window, apply the following settings:
- Location: Indicates the path to the root folder of the new project. All project files will be placed inside this folder. The project location can be any valid path, for example: <Your_folder>\dev\samd21_low_power.
- Folder: Indicates the name of the MPLABX .X folder. Enter "sam_d21_xpro" to create a sam_d21_xpro.X folder.
- Name: Indicates the name of the project that will be shown in MPLAB X IDE. Enter "low_power_sam_d21_xpro" to set the project's name.
- Click Next to proceed to Configuration Settings.
Follow the steps below to set the project’s Configuration Settings.
- Name: Enter the configuration name as "sam_d21_xpro".
- Target Device: Select ATSAMD21J18A as the target device.
After selecting the target device, click Finish to launch the MHC.
Click Launch to launch the MHC tool with the selected packages.
The MHC plugin’s main window for the project will be displayed.
Before proceeding, set up the compiler toolchain. Click on the Projects tab on the top left pane in MPLAB X IDE. Right-click on the project name low_power_sam_d21_xpro and go to Properties.
Tool Tip:
You can also open the Project Properties by selecting the project from the Projects tab and File > Project Properties from the main IDE menu.
Make sure that XC32 (v3.00) is selected as the Compiler Toolchain for XC32. Click on Apply and then click on OK.
Tool Tip:
If you closed MHC accidentally and would like to open it again, go to Tools > Embedded > MPLAB Harmony 3 Configurator in MPLAB X IDE.
Configure Clock Settings
Launch Clock Easy View by going to the Tools menu of the MHC window and then selecting Clock Configuration.
A new window, Clock Easy View, is opened inside MHC.
The Clock Easy View window will then appear on your screen. The default CPU clock is set to 48 MHz.
Tool Tip:
- The Clock Easy View window can be minimized by clicking the minimize button.
- After minimizing the Clock Easy View window, you can see a small Clock Easy View tab at the bottom-left in MHC.
- The Clock Easy View window can be maximized by clicking the maximize button or by double-clicking on the Clock Easy View window.
- These tips apply to all other plug-in managers like Pin Configuration, DMA Configuration, Event System Configuration, and EVIC Configuration.
Enable and configure the 32K Crystal Oscillator. Click on the Settings (wheel) button and enable the Run Oscillator in Standby Sleep Mode.
Enable GCLK2 and set XOSC32K as the GCLK2 clock source. Click on the Settings (wheel) button and enable the Run GCLK2 in Standby Sleep Mode.
Enable and configure the Digital Frequency Locked Loop (DFLL).
Check the CPU clock, now CPU clock is set to 47,972,352 Hz as the DFLL configuration changed.
Enable GCLK1 and set OSCULP32K as the GCLK1 clock source. Set the GCLK1 output frequency as 1 kHz by configuring the division factor with 32. Click on the Settings (wheel) button and check the box for GCLK should keep running in Standby mode.