Learn   /   Beginner Tutorials

PIC16 Microcontrollers Video Tutorial Series

Lecture on "Intro to Microprocessors" using Wilmshurst's "Designing Embedded Systems with PIC Microcontrollers" Chapter 1, sections 1-3 Topics: What is an Embedded system?, Embedded examples, CISC vs. RISC, Memory: Volitile vs. non-volitile, Memory Organization: Von Neumann vs. Harvard

Published
Updated

At a glance

CategoryBeginner Tutorials
IncludesVideo
Reading time~4 min

Summary of PIC16 Microcontrollers Video Tutorial Series

The lecture covers PIC microcontroller fundamentals from Wilmshurst: embedded systems, CPU types, memory models, PIC history and families, 16F84A features, memory and I/O organization, timing and reset, parallel ports and interfacing, oscillator and power, development tools (MPLABX, assembler, simulator), assembly programming techniques (branching, subroutines, delays, look-up tables, macros, indirect addressing), hardware prototyping, and peripheral topics including interrupts, keypads, LCDs, PWM, serial and ADC.

Parts used in the Intro to Microprocessors lecture:

  • PIC16F84A microcontroller
  • PIC12F508 microcontroller (block diagram reference)
  • Power supply components
  • LEDs
  • Switches
  • Keypad (for later chapters)
  • LCD (for later chapters)
  • ADC-related analog input components
  • PCB prototyping tools (Eagle CAD)
  • Programmer hardware (for programming device)
  • General-purpose prototyping components (resistors, capacitors)

Chapter 1, sections 4-6
Topics: Microcontrollers vs. Microprocessors, Microcontroller families, Microchip Inc. History and background, Table of PIC 8-bit Families, Block diagram of 12F508


Chapter 2, sections 1-2
Topics: Why use 16F84A?, PIC mid-Range Family, pinout, Block Diagram, Status Register

Chapter 2, sections 3-4
Topics: Program Memory and Stack, Data memory and Special Funct. Reg. Map, Interfacing with Peripherals, Configuration Word

Chapter 2, sections 5-7
Topics: Pipelining, Reset

Chapter 3, sections 3.1 - 3.2.1
Topics: Parallel Ports, Bi-directional

Chapter 3, sections 3.2.2 - 3.3
Topics: Parallel Ports: elect. char., switches, LEDs

Chapter 3, section 3.3
Topics: Parallel Ports: 16F84A

Chapter 3, section 3.5-3.7
Topics: Oscillator Configuration, Power supply

Chapter 3, section 2
Topics: Parallel Output Port Timing Diagram

Chapter 3, section 2
Topics: Parallel Input Port Read Timing, HW Prob. 3.2

Chapter 4, section 4-9
Topics: Hardware Tools

Chapter 4, section 1-3
Topics: Software Tools, Assembly Language, A Simple Program

Chapter 4, section 4-6
Topics: MPLABX Tutorial, First Assembly Language Program, MPLABX Simulator

Chapter 4, section 7-10
Topics: MPLABX, Compiling Assembly Code, Programming a Device, Ping Pong Game

Chapter 4, section 5
Topics: Configuration Word Setup, Ping Pong Project Tips

Chapter 4, section x
Topics: Prototyping a PCB in Eagle CAD, Ping Pong Game

Chapter 4, section 7-8
Topics: Assembly Move Commands

Chapter 5, section 1
Topics: Flow Diagrams, State Diagrams

Chapter 5, section 1
Topics: Ping Pong Game Student Designs in Eagle CAD

Chapter 5, section 2.1
Topics: Conditional Branching, BitSet Code

Chapter 5, section 5.1
Topics: Conditional Branching Example: BitSet

Chapter 5, section 5.1
Topics: MPLABX Simulation Tutorial: Bitset.asm

Chapter 5, section 2.1
Topics: MPLABX Hardware Download Tutorial: BitSet.asm

Chapter 5, section 2.2
Topics: Arithmetic & Branching

Chapter 5, section 3
Topics: Subroutines in Assembly

Chapter 5, section 4
Topics: Assembly Time Delays

Chapter 5, section 2
Topics: Branching, MPLAB X Watch Window, Exercise 5.2

Chapter 5, section 5.1
Topics: MPLAB X Simulator: Breakpoints, Exercise 5.5, Fibonacci Full

Chapter 5, section 5.2
Topics: MPLAB X Simulator: StopWatch, Exercise 5.6 and 5.7

Chapter 5, section 6
Topics: Assembly Logical Instructions, Exercise 5.9 Flashing LEDs 2, Example 5.7

Chapter 5, section 6
Topics: RRF command clarification

Chapter 4, section 6
Topics: MPLAB X Sim Tips: Watch & Trace Window (Update)

Chapter 5, section 7
Topics: Assembly Language: Look-up Tables, RETLW Command

Chapter 5, section 7
Topics: MPLAB X Look-up Simulation Example, Exer. 5.10, Exam. 5.8, Flashing LEDs 3

Chapter 5, section 8
Topics: Include Files, Macros, List Directives in Assembly

Chapter 5, section 12
Topics: Indirect Addressing

Chapter 6,8,9,10,11
Topics: Interrupts, Keypads, LCDs, PWM, Serial, ADC

  • What is an embedded system?
    An embedded system is a dedicated computer system integrated into a larger device to perform specific control functions, as introduced in the lecture.
  • What are examples of embedded systems?
    The lecture presents examples including microcontroller-based devices using LEDs, switches, keypads, LCDs, and peripherals like ADC, PWM, and serial interfaces.
  • What is the difference between CISC and RISC?
    The lecture contrasts CISC and RISC CPU philosophies as part of processor fundamentals.
  • What is the difference between volatile and non-volatile memory?
    Volatile memory loses data when power is removed while non-volatile memory retains data without power, as covered in the memory section.
  • How do Von Neumann and Harvard memory organizations differ?
    Von Neumann uses a single shared memory for code and data; Harvard uses separate memories for program and data, as discussed in the lecture.
  • How do microcontrollers differ from microprocessors?
    Microcontrollers integrate CPU, memory, and peripherals on one chip for embedded tasks, whereas microprocessors are general-purpose CPUs requiring external components; this distinction is explained in the lecture.
  • Why use the PIC16F84A?
    The lecture explains PIC16F84A selection for mid-range PIC family features, pinout, block diagram, and status register suitability for learning and projects.
  • What does the PIC configuration word specify?
    The configuration word sets device options such as oscillator and reset behavior, and is discussed in relation to program and peripheral setup.
  • What development tools are covered?
    The lecture covers software tools (MPLABX IDE, assembler, simulator), hardware programmers, and prototyping tools like Eagle CAD.
  • How are parallel ports used with PIC microcontrollers?
    The lecture covers parallel port operation, timing diagrams for input/output, bi-directional use, and interfacing with switches and LEDs, including 16F84A specifics.
Beginner Tutorials · PIC16F877A

PIC16F877 Driving LCD in 4-Bit Mode using PIC16F877 with Proteus Simulation

Introduction This microcontroller project shows how a PIC16F877 can drive an LCD display using 4-bit mode inside a Proteus simulation.The project demonstrates...

Beginner Tutorials · PIC18F4550

PICDEM FS USB CDC Evaluation Board using PIC18F4550 with Proteus Simulation

Introduction The PICDEM FS USB CDC Evaluation Board is a practical microcontroller project built around the PIC18F4550, designed to demonstrate USB communication...

Beginner Tutorials

PIC12CE518 I2C EEPROM using PIC12CE518 with Proteus Simulation

Introduction This microcontroller project demonstrates how to write and read data using the internal I2C EEPROM of the PIC12CE518 and visualize the...

Beginner Tutorials

Pico Timer Project using Pico with Proteus Simulation

Introduction Timers are one of the most important features in embedded systems because they allow microcontrollers to perform tasks at precise intervals...

Beginner Tutorials · PIC16F84A

PIC Stepper Motor Controller using PIC16F84A with Proteus Simulation

Introduction Stepper motors are widely used in embedded systems and DIY electronics projects where precise position control is required. This PIC Stepper...

Beginner Tutorials

What is a TVS diode? Working principle and parameters of TVS diode

TVS (Transient Voltage Suppressor) diode is a component specially used for protecting circuits. It can absorb excessive voltage pulses in an instant...

Ibrar Ayyub

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough...