Readme File for Code Example: CE114 - UART Loop-back --------------------------------------------------- This file contains the following sections: 1. Code Example Description 2. Folder Contents 3. Suggested Development Resources 4. Reconfiguring the project for a different dsPIC33F device 5. Revision History 1. Code Example Description: ---------------------------- In this code examples, UART receives and buffers characters from the hyperterminal at 9600 baudrate. Once 8 characters are received, UART transmits (echoes) them back to hyperterminal. void cfgUart2(void) This function configures UART with following settings viz., 8-data bits, 1-stop bit and no parity. void cfgDma0UartTx(void) This function configures DMA channel 0 for UART transmission. DMA configuration: Transfer data from RAM to UART One-Shot mode Register Indirect with Post-Increment Using single buffer 8 transfers per buffer Transfer words void cfgDma1UartRx(void) This function configures DMA channel 1 for UART reception. DMA configuration: Transfer data from UART to RAM Continuously Register Indirect with Post-Increment Using two ‘ping-pong’ buffers 8 transfers per buffer Transfer words void __attribute__((__interrupt__)) _DMA0Interrupt(void) This interrupt routine handles the transmit. void __attribute__((__interrupt__)) _DMA1Interrupt(void) This interrupt routine handles the receive. 2. Folder Contents: ------------------- This folder contains the following sub-folders: a. C:\Program Files\Microchip\MPLAB C30\support\gld This folder will have the device GLD file, it is used for building the project. This file was provided with the MPLAB® C30 toolsuite. b. C:\Program Files\Microchip\MPLAB C30\support\h This folder contains C header files useful in building this project. Device register and bit definitions are provided in the *.h file that follows the device name. These files were provided with the MPLAB® C30 toolsuite. c. C:\Program Files\Microchip\MPLAB C30\lib This folder contains library archive files, which are a collection of precompiled object files. The file named "libpic30-coff.a" contains the C run-time start-up library. These file were provided with the MPLAB® C30 toolsuite. d. hex This folder contains three file types - coff, hex and map. These are files generated by the MPLAB® C30 toolsuite on build operation performed within MPLAB® IDE. The *.map file contains details on memory allocation for various variables, constants and dsPIC instructions specified in the source and library code. The *.hex file contains a binary file that may be programmed into the dsPIC device. The *.coff file contains a binary file that is used by MPLAB® IDE for simulation. e. h This folder contains include files for the code example. f. src This folder contains all the C and Assembler source files (*.c, *.s) used in demonstrating the described example. This folder also contains a sub-folder named "obj" that stores compiled object files generated when the project is built. 3. Suggested Development Resources: ----------------------------------- a. Explorer 16 Demo board with dsPIC33FJ256GP710 controller 4. Reconfiguring the project for a different dsPIC33F device: ------------------------------------------------------------- The Project/Workspace can be easily reconfigured for any dsPIC33F device. Please use the following general guidelines: a. Change device selection within MPLAB® IDE to a dsPIC33F device of your choice by using the following menu option: MPLAB IDE>>Configure>>Select Device b. Provide the correct device linker script and header file for your device. Device linker scripts and header files are available in your MPLAB® C30 installation folder under: Device Linker Script- YourDrive:>Program Files\Microchip\MPLAB C30\support\gld Device C Header file- YourDrive:>Program Files\Microchip\MPLAB C30\support\h Device ASM Include file- YourDrive:>Program Files\Microchip\MPLAB C30\support\inc c. Provide the appropriate path to your MPLAB C30 support file locations using the menu option: MPLAB IDE>>Project>>Build Options>>Project d. Chose the development board applicable to your device. Some options are provided below: e. Re-build the MPLAB® project using the menu option: MPLAB IDE>>Project>>Build All f. Download the hex file into the device and run. 5. Revision History : --------------------- 04/01/2006 - Initial Release of the Code Example 10/02/2006 - HW loopback is replaced with SW loopback, such that application receives and buffers 8 characters (from hypterterminal); once 8 characters are received, they are echoed back to hyperterminal 10/02/2006 - lock configuration bits are changed in the project (see configuration bits window) 10/02/2006 - DMA initialization is changed 10/02/2006 - UART initialization is changed to work on Explorer 16 board