Jump to main content

##

# 1.21 UART Echo Blocking

This example application demonstrates how to use the UART peripheral to transfer a block of data in a blocking manner.

## Description

This example shows the read and write operation over a UART in a blocking manner. The CPU polls the peripheral register continuously to manage the transfer. It receives a line of characters from the terminal window and echoes them back.

## Downloading and Building the Application

To clone or download this application from Github, go to the main page of this repository and then click Clone button to clone this repository or download as zip file.

Path of the application within the repository is

apps/uart/uart_echo_blocking/.

To build the application, refer to the following table and open the project using its IDE.

Project Name | Description
--- | ---
pic32ak_gc_curiosity.X | MPLABX project for Curiosity Platform Development Board and PIC32AK1216GC41064 General Purpose Dual In-Line Module (DIM)

## Setting Up the Hardware

The following table shows the target hardware for the application projects.

Project Name | Description
--- | ---
pic32ak_gc_curiosity.X | Curiosity Platform Development Board and PIC32AK1216GC41064 General Purpose Dual In-Line Module (DIM)

### Setting Up Curiosity Development Board

- Insert the GP DIM on to DIM slot of Curiosity Board
- Connect the PKoB (J21) on the board to the computer using a USB type-C cable

## Running the Application

1. Open the Terminal application (Ex.: Tera term) on the computer
2. Connect to the “PICkit 4 On Board Virtual COM Port” and configure the serial settings as follows:
   - Baud : 115200
   - Data : 8 Bits
   - Parity : None
   - Stop : 1 Bit
   - Flow Control : None
3. Build and Program the application project using its IDE
4. See the following message in the console:
5. Type a line of characters and press the Enter key
6. Entered line will be echoed back and the LED is toggled

Following table provides the LED names:

Board | LED Name
--- | ---
Curiosity Platform Development Board and PIC32AK1216GC41064 General Purpose Dual In-Line Module (DIM) | LED0