This document provides an overview and syllabus for a course on PIC microcontroller programming. It discusses the objectives of the course, which are to expose students to PIC architecture and peripherals, advanced PIC features, and assembly and C programming. The syllabus covers addressing modes, instruction sets, assembly, and C programming over 5 lectures. It also provides details on the PIC16F877 instruction set, which includes 35 instructions grouped into data transfer, arithmetic/logic, bit operations, program flow control, and other categories. Addressing modes for the PIC include immediate, register, memory, direct, and indirect.