Table of contents : GETTING THE BEST OUT OF THIS PROJECT CREATING A SIMPLE LED CLASS (PART I) CREATING A SIMPLE LED CLASS (PART II) CONFIGURING OUR UART DRIVER FOR DISPLAYING RESULTS (PART I) CONFIGURING OUR UART DRIVER FOR DISPLAYING RESULTS (PART II) UNDERSTANDING CLASSES AND OBJECTS DYNAMIC ALLOCATION VARIABLE REFERENCES UNDERSTANDING FUNCTION TEMPLATES USING DEFAULT ARGUMENTS UNDERSTANDING PASS BY REFERENCE AND PASS BY VALUE UNDERSTANDING PASS BY ADDRESS RETURN BY ADDRESS CLASS PROPERTY FUNCTIONS CLASS CONSTRUCTORS UNDERSTANDING SCOPE RESOLUTION UNDERSTANDING THIS POINTER DIFFERENCES BETWEEN CLASS AND STRUCT THE FUNCTION _FRIEND CLASS INHERITANCE UNDERSTANDING ACCESS SPECIFIERS CLASS POINTERS FUNCTION OVERRIDING VIRTUAL FUNCTIONS POLYMORPHISM (PART I) POLYMORPHISM (PART II) THE CLASS _FRIEND STATIC VARIABLES STATIC FUNCTIONS UNDERSTANDING NAMESPACES CLASS DESTRUCTORS CLASS VIRTUAL DESTRUCTORS INTRODUCTION TO MICROCONTROLLER TEMPLATE PROGRAMMING DEVELOPING A TEMPLATE FOR ACCESSING MICROCONTROLLER REGISTERS (VERSION 1) DEVELOPING A TEMPLATE FOR ACCESSING MICROCONTROLLER REGISTERS (VERSION 2) REGISTER BIT-MAPPING (PART I) REGISTER BIT-MAPPING (PART II) APPLYING REGISTER BIT-MAPPING TO REGISTER ACCESS CLASS TEMPLATE OVERVIEW OF ARM CORTEX-M GENERAL PURPOSE INPUT_OUTPUT MODULE DEVELOPING A GPIO OUTPUT DRIVER USING THE BSRR REGISTER DEVELOPING A GPIO INPUT DRIVER OVERVIEW OF THE UART PROTOCOL RECEIVING DATA WITH THE UART TWO-WAY UART COMMUNICATION UART STD COUT RETARGETING OVERVIEW OF THE SYSTEM TICK TIMER OVERVIEW OF GENERAL PURPOSE TIMERS CREATING A DELAY FUNCTION USING THE SYSTEM TICK TIMER ANALYZING GENERAL PURPOSE TIMER REGISTERS WRITING A DRIVER FOR A DIFFERENT TIMER MODULE INTRODUCTION TO ANALOG TO DIGITAL CONVERSION DEVELOPING THE ADC DRIVER INTRODUCTION TO I2C ANALYZING THE DS1307 REAL TIME CLOCK CREATING I2C REGISTERS WRITING THE I2C INITIALIZATION FUNCTION WRITING THE I2C READ AND WRITE FUNCTIONS TESTING OUR I2C DRIVER INTRODUCTION TO SPI CREATING SPI REGISTERS WRITING A BASIC SPI DRIVER DEVELOPING AN SPI LIBRARY (PART I) DEVELOPING AN SPI LIBRARY (PART II) TESTING THE SPI LIBRARY DOWNLOAD KEIL UVISION 5 INSTALLING KEIL UVISION 5 INSTALLING PACKS OVERVIEW OF KEIL UVISION 5