PIC16F877A Mini Development Board – Overview

The PIC16F877A Mini Development Board from rhydoLABZ can be used to evaluate and demonstrate the capabilities of Microchip PIC16F877A microcontrollers. The board is designed for general  purpose applications and includes a variety of hardwares to exercise microcontroller peripherals. Ideally suitable for training and development purposes.

Key Features

  • Compact and Ready to use
  • Professional EMI/RFI Complaint PCB Layout for Noise Reduction
  • High Quality Two layer PTH PCB
  • Board supports PIC18F4520, PIC18F4550 ,PIC18F4580 series
  • No separate power adapter required (USB power source)
  • External power supply ranges from 7V to 12V Adapter (any standard 9-12V power supply)option
  • RS-232  and CP2102 Interface (for direct connection to PC’s serial port)
  • On board two line LCD display(2×16)
  • On board  Reset button
  • Built in potentiometer interface for ADC  
  • On board Temperature Sensor Interface
  • On board Buzzer Interface
  • On board JTAG connector for Debugging/Programming
  • On board ICSP connector
  • On board 20 MHz crystal oscillator
  • On board DB9 connector and USB connector
  • On board interface to CAN bus   
  • There is a provision for interface Zigbee   
  • There is a provision for interface RFID
  • There is a provision for interface Servo motor
  • There is provision for adding mini bread board ,if needed.
  • Male and Female berg strip to access port pins

PIC16F877A Chip Specifications

  • Microchip PIC 16F877A with 20 MHz Crystal Oscillator (With Boot loader Software)
  • High Performance RISC CPU
  • 8 K Words Programmable Flash Memory
  • 368 bytes Data Memory (RAM) and 256 bytes EEPROM
  • 20 MHz Operation (200ns instruction cycle) and 33 I/O pins
  • 8-Channel 10-bit Analog to Digital Converter (ADC)
  • Two PWM Channels
  • Two Capture modules (16-bit with max. resolution 12.5 ns)
  • Two Compare modules (16-bit with max. resolution 200 ns)
  • Two 8-Bit Timer/Counter, One 16-Bit Timer/Counter
  • One Serial USART
  • One Master Synchronous Serial Port (MSSP)
  • One Serial Peripheral Interface(SPI) Module
  • One Inter-Integrated Circuit (I2C) Module
  • Power-On Reset (POR), Power-Up Timer (PWRT)
  • Oscillator Start-up Timer (OST) Interrupt Capability (up to 14 sources)
  • Eight Level Deep Hardware Stack
  • ICSP Programming and Brown Out Reset
  • Low Voltage Programming and Power Saving Sleep Mode
  • Programmable Code Protection, Low Power Consumption
  • Fully Static Design ,Wide Operating Voltage 2.0V to 5.5V

The following figures illustrate the peripheral features of the board:

  •  J3,J4 – To select communication port as serial port/USB port
  •  Power LED – Glows when the board is powered
  •  J18(Power jumper) – To select power source as USB/DC source
  •  LED – 3 x On-board SMD LED s
  •  SWITCH – 3 x On-board switches
  •  SW (RESET) – Reset switch
  •  ICSP (K10) – Connector for programming

  • K15 – Connector for accessing UART 5V
  • K17 – Connector for accessing UART 3V3
  • K14 – Connector for accessing CAN
  • K16 – Connector for interfacing Servo Motor at RE1
  • J16 – Connects Potentiometer to RA0
  • J17 – Connects Temperature Sensor to RA1
  • J1,J2,J10 – Jumpers connects LEDs to port pins RB1, RB2 & RB3
  • J8,J9,J15 – Jumpers connects Switches to port pins RC3, RC2 & RB5
  • J20,J21 – Jumpers connects Zigbee Rx & Tx
  • J19 – Jumper connect Buzzer to RE0
  • K9 – Connector for Power supply
  • J6,J7 – Connects CAN TX , CAN RX to CAN Controller (MCP 2551)
  • LCD – 16 pin Berg strip connector for LCD

Layout

Powering

PIC16F877A Board can be powered in 3 ways :

  1. Through an RMC connector (7V – 12V External DC Power Supply)  
  2. Through the motherboard USB port  
  3. Through a Barrel jack connector (7V – 12V External DC Power Supply)

The supply source can be selected as DC/USB using the jumper (J18). If DC source is selected, then either DC Barrel Jack or RMC connector can be used and the supply voltage should be in the range of 7-12 V.  Once the board is powered, the power LED(red LED on the board) glows.

How to test ?

Mini USB and Serial Cable can be used for programming PIC16F877A Mini Development Board. When USB cable is connected to the PIC16F877A board, Power LED(Red) on the top of mini development board glows, which shows the power indication.Coding is done in MPLAB IDE(Download) . Basic steps after installation are mentioned below.

  • Step 1: Launch MPLAB IDE
  •  Step 2: The MPLAB IDE window opens as shown below
  • Step 3: To create a new project, select Project >Project Wizard from menu
  • Step 4: Click next on the Project Wizard window
  • Step 5: The following window opens. Select PIC16F877A from the drop-down list and click ‘Next
  • Step 6: The following window open. Select HI-TECH PICC TOOL suite as compiler, check the Toolsuite Contents are the same as shown below ,else select and click ‘Next

Note:

  • To write a program in assembly language, select Microchip MPASM Tool-suite and to write a program in C, select HI-TECH PICC Tool-suite.  
  • If a cross marking is shown on the left side of the tool contents, then select that particular tool and browse its corresponding .exe file at the location path provided and click ‘NEXT’ to continue.
  • Step 7: Go for Browse, Save the project in a suitable location with appropriate name
  • Step 8: Click Next to the following window open. 
  • Step 9: Click Finish to the following window open.
  • Step 10: Thus create a project with project name ‘Sample‘ as shown below
  • Step 11: Create a new file either by clicking the New File icon,or by selecting File >New or using keyboard shortcut CTRL + N
  • Step 12: Save the file in the appropriate folder by File >Save as or by save icon, with .c extension
  •  Step 13: Add the c file to the project by right click over the Source files and select
  • Step 14: From the following window select the proper c file and click ‘open‘, thus add the c file
  • Step 15: Now type the code in the c file
  • Step16: To Specify ROM ranges, select Project >Build Options…>Project>Global>ROM ranges from menu. Type the ROM ranges as shown below.Step 17: . Then click Apply and OK. Now compile the code by selecting Project <Build All or BUILD ALL icon as shown below. Errors(if any)get listed in the Build output window.Correct them and build again.On successful building, the hex file will be generated in the project folder.
  • Step 18: Now the code can be flashed to the controller.

              On the board, make sure to do the following jumper connections

    • Select the power source as USB cable or DC source.  
    • Select USB or serial port for flashing the code.

Now power up the board. The power LED on the board glows. Open Tiny Bootloader(Download), Load/Browse the required hex file.Select the correct COM port recognized by PC and if its more than COM5 change it to any any lower COM port in Device Manager and select suitable baud rate.

  • Step 19: Click Write Flash(in Tiny bootloader) and simultaneously press Reset button in the on-board  mini development board. After successfully flashing the code, use controller for the desired purpose.

Topics related to PIC16F877A Development Board-Mini

  1. PIC16F877A Mini Development Board – Overview
  2. PIC16F877A Mini Development Board – Interfacing LED
  3. PIC16F877A Mini Development Board – Interfacing LCD
  4. PIC16F877A Mini Development Board – Serial communication(USART)
  5. PIC16F877A Mini Development Board – Interfacing Switch
  6. PIC16F877A Mini Development Board – Interfacing Buzzer
  7. PIC16F877A Mini Development Board – Interfacing  POT(ADC)
  8. PIC16F877A Mini Development Board – Interfacing Temperature sensor
  9. PIC 16F877A Mini Development Board – Interfacing Servo Motor
  10. PIC 16F877A Mini Development Board – Interfacing μRFID Reader

Resources

How To Buy

Support

Please share your ideas with us, visit our forum for discussion

Leave a Reply