
I have discussed the PIC microcontrollers and the features of the microcontroller I am going to use in this course for the demonstrations.
Let us know about the software needed for the course and how to download them.
All the components and the tools you need to have for the hands-on exercises.
In this video, I have spoken about the design objectives of our hardware design.
Let us dive into the circuit design of our prototype board. This prototype board will be later used for the hands-on exercises of the Internet of Things using PIC Microcontroller.
Let us complete the schematic by adding wireless modules, LEDs, Switches, temperature sensors, and LCD.
In this video, I have shown how to place the components after importing the netlist in the PCB editor.
This video shows how to route a single-layer PCB.
This video shows how to generate BoM and Gerber files. For manual etching, I will also print the bottom layer and silkscreen layers. You may download the KiCAD project files from resources.
Let us see how to etch PCB we designed for the prototype board on a copper clad using the toner transfer method and Ferric chloride solution.
Now it's time to do the component assembly and solder the PCB. Later we will see how to perform a basic test of the board.
In this video, you will know how to test the prototype board for functionality by programming the PIC MCU. Check the resources for the firmware and Android App used in the video.
Watch this video to create your first MPLABX Project for PIC MCU and to access the MPLABX Editor options. Keep the device datasheet with you for ready reference.
The oscillator module generates the system clock and peripheral clock. Let us know the clock source types, the PLL specifications and oscillator registers in this video.
Configuration Bits are a collection of binary data located in the Flash program memory of a PIC microcontroller. These bits control the behavior of the PIC MCU. So these bits must be configured properly for the correct operation of the MCU. Watch this video to know more.
This video shows how to easily generate configuration codes in the MPLABX IDE.
General-purpose Input Output ports allow the PIC microcontroller to monitor and control other devices. You will come to know about:
IO ports in PIC MCU
Registers associated with the IO ports
In this video, you will understand:
Driving a pin High and Low
Producing accurate delays
Usage of Bitwise operators
This video shows you how to
Configure IO pins as input
Reading port pins
Controlling LEDs with Switches
Limitations of polling an input pin
The project files are available for download.
This video gives :
an insight into interrupts in PIC microcontrollers
Interrupt logic
Interrupt sources
Registers to enable and monitor interrupts
In this video, you will learn:
Enabling INT interrupt on RB0
Writing ISR
Determine the cause of interrupt in ISR
Sharing a data variable between the main function and ISR
In this video, you will understand:
Peripheral Pin select module
Registers associated with PPS
Mapping INT Pin to RB1 and RB2
This video gives you:
a basic understanding of Interrupt-on-change module
configuring IOC for RB1 and RB2
detection of rising and falling edge of the signal
Header files and source files constitute an Embedded C Project. Watch this video to see how to create user-defined header and source files for your project.
This video gives all the basic information for you to interface an LCD with PIC MCU. The demo code is available for download.
Understand the Timer0 module and the registers associated with it.
This demo covers the following for the timer-0 module:
8-bit mode & 16-bit mode
Timer 0 interval calculations
Timer 0 PPS output
Timer 0 interrupts
MPLABX IDE project is available for download.
In this video you will understand:
Timer 1 operation
Gate for Timer 1
Timer 1 Clock Sources
Gate Toggle Mode and Single-pulse mode
Registers associated with Timer 1
In this video you will know the following:
How to use timer 1
Enabling MFINTOSC
Usage of MF Internal Oscillator to clock timer1
Usage of Gate Toggle Mode
Fixing shared resource problem-fixing LCD malfunction
The project files are provided for download.
In this video, you will understand the operation of the timer 2 module, the Modes of operation, and the registers associated with it.
In this video you will know :
Configuring Timer 2 to generate interrupts
Usage of MF/16 clock Source
Free-running mode with Gate
One-show mode
Mono-shot mode
MPLABX Project is available for download.
Pulse width modulation or PWM is a commonly used control technique that generates analog signals from digital devices such as microcontrollers. You will know more in this video.
Learn to configure PWM6 module to generate variable pulse width signal of fixed frequency in this video. The MPLABX project is provided in resources.
What is a Watchdog Timer?
How can one protect against system failure in case of unexpected events?
How to use Watchdog Timer in PIC MCU?
What is Windowed Watchdog Timer?
Get all these questions answered in this video.
In this demo you will know:
Enabling Watchdog Timer in Configuration Words
Configuring Watchdog Timer in registers
Effect of WDT in system Reset
MPLABX Project is available in resources for download.
This course is special for me for a few reasons. Having already published a few courses on PIC microcontrollers, PCB Design and PIC32 MCU with more than 5500 students registered for my courses, I was getting a feeling that my courses are incomplete. I wanted to prepare a course that covers both hardware design and firmware development. This course is the outcome of all the inputs and experiences I gained from my previous courses and my professional experience.
This course covers the following items as you can see from the course curriculum:
PCB Design and prototype development
PIC programming from basics to advanced concepts
The first section is an introduction to PIC MCUs and the tools you need to install for the course. You will get a list of components required for the hardware development.
In the second section, you will get all the knowledge required to design your own hardware based on PIC MCU. You will be able to design a PCB on KiCAD and then produce a DIY PCB using a simple etching process. You will know how to solder the components on the PCB and then test the hardware by using the test code provided by me.
In the third section, you will understand how to write a simple LED blink code using MPLABX IDE and XC8 C compiler. You will know how to interface switches using external interrupts and LCD display with the PIC MCU. You will know how to use the peripheral pin select feature to map PIC peripheral feature with the possible set of pins.
After getting a hold of PIC basics, you will understand timers, PWM modules, watchdog timer, Analog to Digital Converter and UART modules to meet advanced project requirements in the fourth section