MPLAB® Harmony v3 Peripheral Libraries on SAMC2x: Step 6

Last modified by Microchip on 2023/11/09 09:09

Build, Program, and Observe the Outputs

Verify that the temperature sensor (I/O1 Xplained Pro Extension Kit) is connected to Extension Header 1 (EXT1) on the SAMC21N Xplained Pro Evaluation Kit.

Extension Header

Back to Top


The SAMC21N Xplained Pro Evaluation Kit allows using the Embedded Debugger (EDBG ) for debugging. Connect the Type-A male to Micro-B USB cable to Micro-B DEBUG USB port to power and debug the SAMC21N Xplained Pro Evaluation Kit.USB cable to micro-B DEBUG USB

Back to Top


Go to File > Project Properties and make sure that the EDBG is selected as the debugger under the Hardware Tools and XC32 (v4.30) is selected as the Compiler Toolchain for XC32.

Project Properties Dialog

Back to Top


Clean and build your application by clicking on the Clean and Build button as shown in the accompanying image.

Clean and Build button

Back to Top


Program your application to the device, by clicking on the Make and Program button as shown in the accompanying image.

Make and Program button

The lab should build and program successfully.

Back to Top


Now, open the Tera Term terminal application on your PC (from the Windows® Start menu by pressing the Start button). Select the Serial Port as shown in the accompanying image.

Tera Term terminal application

Back to Top


Change the baud rate to 115200.

Baud rate set to 115200

Baud Rate Pulldown Menu

Back to Top


You should see the temperature values (in °F) being displayed on the terminal every 500 milliseconds, as shown in the accompanying image.

Temperature values showing in Terminal

Also, notice the LED0 blinking at 500 millisecond rate.

Back to Top


You may vary the temperature by placing your finger on the temperature sensor (for a few seconds).

Temperature sensor location

Back to Top


Press the switch SW0 on SAMC21N Xplained Pro Evaluation Kit to change the default sampling rate to 1 second.

Switch SW0 location

Temperature Readings in Terminal

Back to Top


Every subsequent pressing of switch SW0 on the SAMC21N Xplained Pro Evaluation Kit changes the default sampling rate to 2 seconds, 4 seconds, and 500 ms and back to 1 second in cyclic order as shown in the accompanying image.

Temperature Readings in Terminal

While the temperature sampling rate changes on every switch SW0 press, notice the LED0 toggling at the same sampling rate.

Back to Top

Results

You observed that the application displayed the current room temperature values on the serial terminal every 500 milliseconds. You were able to change the temperature sampling values dynamically by pressing a user switch on the development kit. You could exercise sampling changes to 1 second, 2 seconds, 4 seconds and cycle back to 500 milliseconds every time you pressed the user switch. You also observed that a user LED was toggled every time the current temperature is displayed on the serial terminal.

Back to Top

Analysis

You have successfully created your first application using MPLAB® Harmony v3 on SAM C2x microcontroller. Your application used all the fundamental elements that go into building a real-time application. Your application successfully read temperature sensor values and displayed them periodically over a serial terminal on a PC. The application also took user input by pressing a switch on the development board.

In this application, you used MPLAB Code Configurator (MCC) to configure SAM C2x and to use the MPLAB Harmony v3 Framework. You used the clock configurator to set up the CPU clock and timer (RTC) clock. You configured SERCOM (as I²C), SERCOM (as USART), RTC, and EIC peripheral libraries. You also configured DMA using the DMA configurator. You used Pin Configurator to set up the pins for LED and switch functions.

Back to Top

Conclusions

This tutorial provided you with training in configuring and using all the fundamental components needed to build a real-time application on a SAM C2x microcontroller with MPLAB Harmony v3 Framework. As a next step, you may customize this application and reconfigure some of the components used in this tutorial. You could also add new components (PLIBs, etc.) to enhance this application to realize your end application.

Back to Top