PIC18F452 UART code and Proteus Simulation




This post provides the UART code (compiled in MPLAB + HI-TECH C) for PIC18F452 (e-g to connect PIC18F452 controller with PC using serial adapter). Complete project code and the proteus simulation can be downloaded from the Downloads section at the bottom of this post. The following diagram shows the required circuit.

PIC18F452 UART

A crystal of 10MHz is used with PIC18F452. This crystal frequency is fed into PLL of PIC18F452, which boosts it to 40MHz. As we know that any PIC micro controller has an architecture which executes an instruction in 4 CPU cycles, hence this 10Mhz crystal + PLL makes this PIC run at 10MIPS (Million of instructions per second). The code for UART initialization is shown below.

In this function a baudrate of 9600 bps is defined (which you can easily change by changing the value from 9600 to any other number ). _XTAL_FREQ is basically the crystal frequency ( PLL output is 40MHz, which is the CPU frequency). After that different parameters of the serial port are being configured e-g the SPFRG register which is responsible for the baudrate generation for the UART. This function defines the UART to have these properties,

  • Baudrate = 9600 bps
  • 8 bit data mode
  • 1 start and 1 stop bit
  • No parity bit
  • No flow control

PIC18F452 UART schematic

The code for the main function is shown below.

Downloads

The code was compiled in MPLAB v8.76 with HI-TECH C and simulation was made in Proteus v7.7.
To download code and proteus simulation click here.

 

For more detail: PIC18F452 UART code and Proteus Simulation




Current Project / Post can also be found using:

  • usart code and proteus
  • usart simulation in proteus with pic16f
  • pdf serial communication of PIC and PC using mikroC program
  • Pic usart assembly code pdf

Leave a Comment

*
= 3 + 1

Read previous post:
PIC18F452 PWM
PIC18F452 PWM Code and Proteus Simulation

This post provides the PWM code (using C language) and Proteus simulation for PIC18F452 micro-controller CCP1 and CCP2 modules (...

Close
Scroll to top