In this tutorial, you will learn how to program a PIC using in-circuit serial programming with the MPLAB® Snap debugger/programmer. This will be critical for your semester project as you will be working with a surface mount microcontroller that cannot be easily removed for offboard programming and does not have a USB port.
A finite state machine (FSM) is a way of modeling a system such that there are a limited number of finite “states” that a system can be in, and that it can only be in one of those states at a time. Events (e.g., pushing a button) cause the system to change from one state to the next. Unexpected events do not cause the system to change states, which is useful for ignoring spurious inputs. Rather than coding for every possible input, you can instead code only for inputs that matter at the given time. The following resources provide a solid conceptual framing and implementation examples:
This method involves applying solder paste to the pads on the PCB, manually placing your surface mount components into the solder paste, and baking the board in a special oven to solder the entire PCB at once. This method is not really easier than hand soldering for one-off PCBs; you are trading one set of challenges for a different set. If you are interested in using solder paste and the reflow oven to solder your components, please contact Osama Jameel in PRLTA 109.
These distributors are often used by professionals in industry, and provide the most complete selection of different parts.
Serial Communication - SPI & Shift Register Tutorial
Getting familiar with the SPI serial communication protocol using MCC under the MPLAB X programming environment to program the PIC16F18446 Curiosity Nano development board and control a shift register to drive 8 LEDs on and off. In this tutorial, you will learn to set up the Serial Peripheral Interface (SPI), Shift Registers, and 3 of the major numeral system (decimal, binary, and hexadecimal).
To develop and demonstrate individual proficiency in:
Using SPI communication to control LEDs connected to a shift register
This tutorial builds off of Part 1. Go Back and start there if you haven’t yet completed it.
This is a basic tutorial for the steps required to get SPI working on the PIC18F47Q10 Curiosity Nano