Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
PIC16F877A Microcontroller Masterclass with MikroC
Rating: 4.7 out of 5(2 ratings)
63 students

PIC16F877A Microcontroller Masterclass with MikroC

Learn PIC16F877A from scratch with hardware setup, programming, sensor interfacing, displays, motors and projects.
Last updated 5/2026
English
English [Auto],

What you'll learn

  • Learn PIC16F877A from scratch, including architecture, datasheets, hardware setup, programming and debugging using PICKIT 3.
  • Build practical embedded systems using ADC, PWM, UART, GPIO, timers, interrupts, displays, sensors and motors.
  • Interface LCDs, 7-segment displays, Nextion touch screens, Bluetooth, RF modules and various sensors with PIC16F877A.
  • Master MikroC for PIC by developing real projects and learning libraries for ADC, PWM, UART, LCDs and communication.
  • Design, simulate and test PIC16F877A projects using Proteus before implementing them on actual hardware.
  • Develop complete real-world applications such as temperature monitors, motor controllers, wireless systems and alarms.
  • Learn hardware interfacing techniques for buttons, relays, buzzers, keypads, accelerometers, displays and sensor modules.
  • Gain the skills needed to create your own PIC16F877A-based automation, robotics and embedded systems projects.

Course content

1 section71 lectures22h 34m total length
  • What is an embedded systems?21:01
  • What is a microcontroller ?19:43

    Discover how a microcontroller is an embedded computer with built-in cpu, memory, and input/output ports, enabling connection to sensors, displays, and modules via uart, spi, i2c, adc, pwm, and timers.

  • What is a difference between a microcontroller and a microprocessor ?11:45
  • Write down your view on what microcontroller have to do with an embedded system
  • PIC16F877A a basic introduction.7:00

    Explore the basics of the PIC16F877A microcontroller, its 40-pin DIP package, flash-based memory, and core interfaces—UART, SPI, I2C, timers, interrupts, and PWM—paired with MikroC and Proteus.

  • Going through datasheet of PIC16F877A microcontroller.10:20

    Explore the PIC16F877A datasheet to learn its 40-pin DIP form, 8-bit instruction set, 20 MHz clock, 200 ns per instruction, and peripherals like 8-channel 10-bit ADC, SPI, I2C, UART, PWM.

  • Derive the specification sheet of PIC16F877A microcontroller from pages reviewed
  • MikroC for PIC a Basic introduction.7:58
  • Setting up your PIC16F877A board for burning using PICKIT 3 programmer tool.8:05
  • Write Pros/Cons of Breadboard vs Vero board vs PCB board. 3 for each.
  • Blinking an LED with a PIC16F877A microcontroller.4:27
  • Modify the code of lec 8 yourself. Change blink speed and LED pin.
  • Blinking LED in train formation using PIC16F877A microcontroller.17:47

    Drive eight LEDs in a train pattern using the PIC16F877A microcontroller and MikroC for PIC, with port B outputs, 220-ohm resistors, and Proteus simulation.

  • Modify code of lec 9. Move train in opposite direction.
  • Interfacing a Button with a PIC16F877A microcontroller.7:24
  • From lec 10. Make 2 schematics one for button sending 0 and other for 1.
  • Using a button to turn LED on/off using PIC16F877A microcontroller.7:24

    Interface a push button with the PIC16F877A using an input pin and a 10k resistor to drive an LED through a 330 ohm resistor, zero logic and debouncing in mikroC.

  • Write me what you learnt about TRIS register. How it turns a pin input or output
  • Introduction to ADC Library of MikroC for PIC with Demo on PIC16F877A.13:42

    Explore using the mikroC for PIC ADC library on the PIC16F877A, configure 10-bit ADC with Vref and Vdd, read AN0, and control an LED in Proteus.

  • Do some reasarch on what ADC resolution is for ?
  • Introduction to LCD Library of MikroC for PIC with Demo on PIC16F877A.13:52

    Learn to interface a PIC16F877A with an LM016 LCD using MikroC for PIC's LCD library, with Proteus simulation and LCD initialization and display commands.

  • If i use 16x4 LCD will same library will work ? From lec 13.
  • Introduction to PWM Library of MikroC for PIC with Demo on PIC16F877A.15:54
  • To generate PWM we need library ? Cant we use GPIO pin toggling at fast speed ?
  • Introduction to UART Library of MikroC for PIC with Demo on PIC16F877A. part 116:19
  • Introduction to UART Library of MikroC for PIC with Demo on PIC16F877A. part 212:07
  • Modify code of lec 16 and display your name on virtual terminal on proteus.
  • Make Temperature measurement system using LM35 ,PIC16F877A and Lm016 LCD.26:13
  • Modify lec 17 code and add 10 degree Celsius to readings on LCD.
  • Make darkness/light detection system using LDR, PIC16F877A and LM016 LCD.23:05

    Interface an LDR with a PIC16F877A to read light with A0, drive an LED, and display results on a LM016 16x2 LCD. Calibrate a threshold for LED on/off.

  • Make detection go opposite when its dark it should say light. Modify lec 18 code
  • Convert input of Potentiometer to pecentage and display on LCD using PIC16F877A.25:49

    Interface a PIC16F877A with a potentiometer using the formula method to read an ADC value from A0 and display the percentage on a LM01616 16x2 LCD with backlight.

  • PIC16F877A's PWM based speed control of a DC motor using TIP-122 transistor.17:18
  • Use push buttons to control the brightness of an LED using PIC16F877A.15:00
  • Brightness control of an LED using PIC16F877A and a potentiometer.18:53
  • DC motor speed control using a potentiomter, PIC16F877A and a TIP122 transistor.15:26

    Explore dc motor speed control with a PIC16F877A using pwm driven by an adc from a potentiometer through a TIP122 transistor in a half-bridge configuration.

  • Joystick based variable speed control of a DC motor using PIC16F877A.24:16
  • PIC16F877A interface Air Quality measurement sensor.15:11
  • PIC16F877A Interface 3-Axis accelerometer ADXL335.38:57
  • Temperature measurement system with PIC16F877A,LM015 LCD & LM35.26:13

    Interface a PIC16F877A with an LM35 sensor using MikroC to read ADC values, convert to Celsius and Fahrenheit, and display results on a 16x2 LCD with a threshold-triggered LED.

  • Measurement temp using K-Type thermocouple with PIC16F877A.35:57
  • PIC to PIC wireless communication using 2xHC12 Radio Frequency modules.26:52
  • PIC16F877A interface RGB LED module.8:59

    Learn to interface an RGB LED module with a PIC microcontroller using MikroC, wiring blue, green, red to Port C pins and ground, and program a color cycling sequence.

  • PIC16F877A interface Potentiometer to adjust threshold for LDR.15:02
  • PIC16F877A interface LCD LM016. Run counter from 0 to 1000.16:22
  • Control Blinking speed of an LED using Potentiometer with PIC16F877A.15:35
  • LED train formation with adjustable speed using Potentiometer with PIC16F877A.17:02
  • PIC16F877A interface 4 digit 7-sengment display. Run counter from 0 to 99.25:49
  • PIC16F877A interface 4 digit 7-segment display run counter from 0 to 999.21:08
  • PIC16F877A inteface 4-digit 7 segment display. Counter from o to 9999.24:51
  • Make a stopwatch using PIC16F877A.55:49

    Learn to design and implement a precise stopwatch using the PIC16F877A microcontroller in MikroC, exploring timing, counters, and interfacing fundamentals.

  • Light intensity measurement using PIC16F877A,LD & 4 digit 7-segment display29:28
  • Temperature measurement system using LM35, PIC16F877A & 4-digit 7-segments.30:29
  • Incerement/decrement counter on 4-digit 7-sgement display using push buttons.32:50
  • LPG/CNG leakeage detection system using PIC16F877A.24:12
  • Start/Stop LED blinking using push buttons.15:08
  • PIC16F877A interface Nextion touch screen.27:03
  • PIC16F877A interface Nextion touch screen. Sending/Receiving data.25:03

    Interface PIC16F877A with a 2.8 inch nextion touch screen via uart, use touch buttons to send a,b,c,d commands that turn leds on and off.

  • Sending Values to Nextion touch screen from PIC16F877A.32:53

    Learn how to send data values from a PIC16F877A microcontroller to a Nextion touch screen using MikroC.

  • PIC16F877A , LM35and Nextion Touch Screen based Temperature measurement system.28:14
  • PIC16F877A interface 4x4 capacitive keypad module.12:58
  • Caller/receiver circuit using PIC16F877A.21:45
  • PIC16F877A interface Keyes-032 obstacle detection module.11:45
  • LED blinking speed control using 2 push buttons with PIC16F877A.19:50
  • DC voltmeter using PIC16F877A, 7-segment display & LED.33:01
  • LED blinking sequemce using PIC16F877A.10:31
  • Start Stop LED blinking using a single push button.17:18
  • PIC16F877A inteface NEMA stepper motor.13:40
  • PIC16F877A interface NEMA stepper motor use push buttons to control direction.15:24
  • PIC16F877A interface TTP-223 capcitive touch module9:50

    Learn to interface a TTP223 capacitive touch button with a PIC16F877A microcontroller using MikroC, wiring digital input and output pins, and driving an LED with simple code.

  • PIC16F877A interface sunfounder 5v operated 220VAC-10A/30VDC-30A relay7:57
  • Tilt detection system using PIC16F877A & Keyes-KY-020 module9:00

    Explore tilt detection using a KY-020 switch and the PIC16F877A, wiring ground, vcc, and a digital input to light an LED with MikroC for PIC.

  • PIC16F877A interface Passive Buzzer.8:32
  • PIC16F877A interface Microwave Radar Module.11:27
  • Distress call generation with Passive buzzer using PIC16F877A9:37

    Demonstrates generating a distress call with a passive buzzer using a PIC16F877A in mikroC for PIC, driving pin C2 with timed pulses and a do while loop.

  • LASER security system using PIC16F877A.33:21
  • 360 degree fire detection system using PIC16F877A.15:45
  • How to change default setting of HC-05 bluetooth module.14:13
  • PIC16F877A interface HC-05 bluetooth module.21:23
  • Unique way of displaying LDR reading using an LED with PIC16F877A.13:51
  • Making an 4WD RC car using HC-05 bluetooth module & PIC16F877A.27:50
  • Soil moisture measurement system using PIC16F877A.33:31

    Develop a soil moisture measurement system using the PIC16F877A microcontroller in MikroC within a hands-on masterclass.

  • Send text messages from Smartphone to PIC using HC-05 bluetooth module.19:08
  • Send text messages from PIC16F877A to SMartphone using HC-05 bluetooth module.13:27

Requirements

  • No prior knowledge of PIC microcontrollers, embedded systems or programming is required. Everything is taught from scratch.
  • A willingness to learn and experiment with electronics is the only requirement for this course.
  • Basic computer skills such as installing software and creating files will be helpful but are not mandatory.
  • Students who wish to follow the practical demonstrations may use a PIC16F877A board, PICKIT 3 programmer and basic electronic components.
  • MikroC for PIC and Proteus software will be used throughout the course. Installation guidance is provided.
  • No previous experience with MikroC, Proteus, sensors, displays or microcontrollers is required.
  • Whether you are a student, hobbyist, technician or engineer, this course is designed to help you learn step by step.
  • All concepts are explained from the fundamentals before moving to practical hardware interfacing and projects.

Description

PIC16F877A Microcontroller Masterclass with MikroC

Welcome to one of the most comprehensive PIC16F877A courses available online.

This course is designed for students, hobbyists, engineering graduates, technicians, and anyone interested in learning embedded systems using the PIC16F877A microcontroller and the MikroC for PIC compiler.

Unlike many courses that focus only on programming, this course covers both hardware and software. You will learn how to build circuits, connect sensors and modules, program the microcontroller, troubleshoot hardware issues, and develop complete embedded projects from scratch.

We begin with the fundamentals:

  • What is an Embedded System?

  • What is a Microcontroller?

  • Microcontroller vs Microprocessor

  • Introduction to PIC16F877A

  • Understanding PIC16F877A Datasheets

  • Introduction to MikroC for PIC

  • Hardware Setup and PIC Programming using PICKIT 3

Once the basics are covered, we move into practical hands-on learning through real projects and interfacing examples.

What You Will Learn

  • PIC16F877A programming from beginner to advanced level

  • Hardware setup and circuit building

  • PIC programming using PICKIT 3

  • MikroC for PIC compiler

  • Proteus simulation

  • LCD interfacing

  • 7-Segment display interfacing

  • ADC (Analog to Digital Conversion)

  • PWM (Pulse Width Modulation)

  • UART serial communication

  • Bluetooth communication

  • RF wireless communication

  • Touch screen interfacing

  • Sensor interfacing techniques

  • Motor control applications

  • Embedded project development

Practical Projects Included

Throughout the course you will build numerous practical projects including:

  • Temperature Monitoring Systems

  • Light Intensity Measurement Systems

  • LPG/CNG Gas Leakage Detection Systems

  • Air Quality Monitoring Systems

  • DC Motor Speed Controllers

  • Joystick Controlled Systems

  • RGB LED Controllers

  • Wireless PIC-to-PIC Communication

  • Bluetooth Communication Projects

  • Touch Screen Based Projects

  • Fire Detection Systems

  • Stopwatch Applications

  • Obstacle Detection Systems

  • Stepper Motor Control Projects

  • Relay Control Systems

  • Capacitive Touch Applications

and many more.

Sensors, Modules and Devices Covered

This course includes practical interfacing of a wide range of components including:

  • LM35 Temperature Sensor

  • LDR (Light Dependent Resistor)

  • ADXL335 Accelerometer

  • HC-05 Bluetooth Module

  • HC-12 RF Communication Module

  • Nextion Touch Screen

  • LM016 LCD

  • 4-Digit 7-Segment Displays

  • RGB LEDs

  • Potentiometers

  • Push Buttons

  • Relay Modules

  • Passive Buzzers

  • Obstacle Detection Sensors

  • Tilt Sensors

  • Microwave Radar Modules

  • Keypads

  • Stepper Motors

  • DC Motors

  • Transistors and Driver Circuits

and many more.

Software Tools Covered

  • MikroC for PIC

  • Proteus

  • PICKIT 3 Programmer

  • Timer Calculator Tools

  • Nextion Editor

  • DWIN DGUS Tools

Course Updates

This course is actively maintained and regularly updated.

New lectures, projects, sensors, modules, and practical examples are added on a regular basis. My goal is to continuously expand this course into a complete PIC16F877A learning platform with well over 200 lectures covering real-world embedded systems development.

Whether you are a complete beginner or someone looking to strengthen your PIC microcontroller skills, this course will provide the practical knowledge needed to design, build, program, and troubleshoot your own embedded systems projects.

Enroll today and start your journey into the world of PIC16F877A microcontrollers and embedded systems development.

Who this course is for:

  • Beginners who want to learn PIC16F877A microcontroller programming and hardware interfacing from scratch.
  • Students of Electrical, Electronics, Mechatronics, Robotics and Computer Engineering.
  • Hobbyists and makers interested in building embedded systems, automation and electronics projects.
  • Anyone wanting hands-on experience with sensors, displays, motors, communication modules and microcontrollers.
  • Technicians and engineers looking to strengthen their practical embedded systems development skills.
  • Arduino users who want to expand their knowledge by learning PIC microcontrollers and MikroC programming.
  • Final-year project students seeking practical experience with real-world microcontroller applications.
  • Anyone interested in learning both the hardware and software aspects of embedded systems development.