PICPIO logoPICPIO
PICPIO

PIC16F877A bare-metal course

13 lessons, from a blinking LED to SPI. Every one is a ready project inside PICPIO, with its circuit wired in the simulator.

FreePICPIO for VS Code and Microchip's XC8 compiler cost nothing.
No board neededEvery lesson runs in PICPIO's simulator. Real hardware is optional.
Registers, not librariesBare-metal C on the PIC16F877A at 20 MHz: TRIS, PORT, timers, MSSP.
Six languagesVideos in English, Malayalam, Hindi, Tamil, Telugu and Kannada.

Open a lesson in PICPIO

  1. Install PICPIO (version 1.8.354 or later) and Microchip's free XC8 compiler. The guide shows how.
  2. In the PICPIO sidebar, under Quick Access, click Course Lessons.
  3. Pick a lesson, then Finished code or Starter. The Starter leaves empty the functions the video types, so you can follow along.
  4. PICPIO creates the lesson as your own project in Documents/PICPIO/Projects/Course_PIC16F877A and opens it.
  5. Build, then the arrow next to Build → Simulate. In CIRCUIT, click Open Circuit, pick circuit.json, then Restart.
Opening the same lesson again makes a new folder (L09_PWM_2, and so on). Your changes are never overwritten.

The lessons

Projects

Four real projects built from the lessons, each a ready project with its circuit wired in the simulator. They are in Course Lessons too, under PIC16F877A Projects, with Finished code and Starter. Needs PICPIO 1.8.356 or later.

One board for the whole course

The lessons use the same pins throughout, so one breadboard layout carries you from lesson to lesson: LEDs, the 7-segment display and the LCD data lines on PORTD, LCD RS and EN on RE0 and RE1, buttons on RB0 and RB1, the pot on RA0, UART on RC6 and RC7, and the MSSP (I2C and SPI) on RC3 to RC5.