Getting Started with MPLAB® Harmony v3 Peripheral Libraries on PIC32MK GP MCUs: Step 6

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

Build, Program, and Observe the Outputs

Verify that the temperature sensor (MikroElectronika Weather click board) is connected to mikroBUS™ 1 on the PIC32MK General Purpose (GP) Development Board.

The MikroElectronika Weather click board is displayed with the PIC32MK General Purpose Development Board

Back to Top


Connect the Type-A male to Micro-B USB cable to the Micro-B Serial USB port (J25) on the PIC32MK GP Development Board.

Connect the Type-A male to Micro-B USB cable to the Micro-B Serial USB port

Back to Top


The PIC32MK GP Development Board allows using the PICkit On Board (PKOB) for debugging. Connect the Type-A male to Micro-B USB cable to Micro-B DEBUG USB port (J12) to power and debug the PIC32MK GP Development Board.

Connect the Type-A male to Micro-B USB cable to Micro-B DEBUG USB port

Back to Top


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

Click Apply, then OK.

Compiler setup

Back to Top


Clean and build your application by clicking on the Clean and Build button.

Clean and build main project

Back to Top


Program your application to the device, by clicking on the Make and Program button.

Make and program button

The lab will build and program successfully.

Back to Top


Open the Tera Term terminal application on your PC (from the Windows® Start menu by pressing the Start button). Select the Serial Port.

Click OK.

Tera Term terminal application Connection window

Back to Top


Change the baud rate.

Select Setup > Serial port from the Tera Term window. Select 115200 from the Speed drop down selections. Click OK.

Setup > Serial port drop-down menu

Port setup window

Back to Top


You will see the temperature values (in °F) being displayed on the terminal every 500 milliseconds, as shown:

temperature values terminal

Also, notice the LED1 blinking at a 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

Back to Top


Press the S1 switch on the PIC32MK GP Development Board to change the default sampling rate to one second.

User Button

temperature values terminal

Back to Top


Every subsequent press of the S1 switch on the PIC32MK GP Development Board changes the default sampling rate to two seconds, four seconds and 500 ms and back to one second in cyclic order as shown:

temperature values terminal

While the temperature sampling rate changes on every S1 switch press, notice the LED1 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 one second, two seconds, four 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 the PIC32MK GP 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 a PIC32MK GP device and to use the MPLAB Harmony v3 Framework. You used the clock configurator to set up the CPU clock and timer (Timer1) clock. You configured SPI6, UART6, TMR2, CORE TIMER, and GPIO peripheral libraries. You also configured Direct Memory Access (DMA) using the DMA configurator. You used the pin configurator to set up the pins for LED and switch functions.

Back to Top

Conclusions

This tutorial provided you training for configuring and using all the fundamental components needed to build a real-time application on a PIC32MK GP microcontroller with the 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