Register Account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Microchip Pic32Cm Mc Microcontroller For Power Electronics
#1
[Image: bc78aebb2c6fdb4526d40b406011fa94.jpg]
Microchip Pic32Cm Mc Microcontroller For Power Electronics
Published 10/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 11.83 GB | Duration: 18h 21m

Examples for power electronics applications using the Curiosity Nano Evaluation Kit

[b]What you'll learn[/b]

Architecture of the PIC32CM1216MC00032 microcontroller

Installing MPLAB X IDE and other SDK

Understanding project setup and libraries

Overview of the peripherals used in power electronics applications

Using GPIO pins through the PORT peripheral

Configuring and setting up interrupts and Interrupt Service Routines (ISR)

Using timers through the Timer Counter (TC) module

Generating PWM pulses through the Timer Counter for Control (TCC) module

Using the Analog to Digital Converter (ADC) for measured signals and control implementation

Using the Event System Module

[b]Requirements[/b]

C programming

Basics of data structures and types for embedded systems

Recommended: Microcontroller programming for power electronics engineers (Using the Texas Instruments TMS320F28069 kit)

[b]Description[/b]

The course will describe how to use the PIC32CM1216MC00032 microcontroller from Microchip for power electronics applications. The PIC32CM MC microcontroller is a very popular low-cost microcontroller used in the power industry for various applications such as motor control and power factor correction. The purpose of this course is to provide young engineers with exposure to microcontrollers used in industry, and help them land their first jobs as power electronics engineers or firmware engineers. The course can also be used as training material by companies to train their engineers in using PIC32 microcontrollers from Microchip. The course covers both theory and programming, with details on the architecture of the microcontroller and its peripherals, as well as code sessions where projects are built from the ground up. The projects are accompanied by experiments with the results being observable either through blinking LEDs or through waveforms on the oscilloscope.The course describes how students can setup a low-cost electronics lab with components available from online marketplaces. The microcontroller kit (Curiosity Nano Evaluation Kit) needed for the course is readily available in many online marketplaces and costs merely USD 16. The course will begin with very simple examples such as how to make LEDs glow and flash. The course will then progress towards generating Pulse Width Modulation (PWM) gating signals and using the Analog to Digital Converter (ADC) for closed-loop control. The course will use the MPLAB X IDE and the MPLAB XC32 compiler provided for free by Microchip, and also example projects and starter files available on the Microchip website and GitHub page. The course will describe how necessary software can be downloaded and how the student can interpret and understand the example projects.

Overview

Section 1: Introduction

Lecture 1 Welcome

Lecture 2 Target audience of the course

Lecture 3 Hardware requirements of the course

Lecture 4 Software requirements of the course

Lecture 5 Tips for completing the course

Section 2: System Setup

Lecture 6 Introduction

Lecture 7 Installing MPLAB X IDE and MPLAB XC32 compiler

Lecture 8 Downloading the starter project for the Curiosity Nano Evaluation Kit

Lecture 9 Microchip GitHub project repository

Lecture 10 Testing the evaluation kit with the starter project

Lecture 11 Project files and directories

Lecture 12 Technical documentation

Lecture 13 Tips for electronics

Section 3: Microcontroller architecture and GPIO (PORT) module programming

Lecture 14 Introduction

Lecture 15 Basics of microcontroller architecture

Lecture 16 GPIO pins and peripheral functionalities

Lecture 17 Setting up the PORT module (GPIO) project

Lecture 18 PORT registers

Lecture 19 Reading header files for PORT register configurations

Lecture 20 Reading PORT initialization function - part 1

Lecture 21 Reading PORT initialization function - part 2

Lecture 22 Cleaning up the base starter project

Lecture 23 Connecting LEDs to GPIO pins of evaluation kit

Lecture 24 Updating code for new project specifications - driving LEDs

Lecture 25 Compiling the project

Lecture 26 Executing the project

Lecture 27 Conclusions

Section 4: Timers

Lecture 28 Introduction

Lecture 29 Overview of timing

Lecture 30 Setting up the 48MHz on-board oscillator

Lecture 31 Setting up the 32.768kHz on-board oscillator

Lecture 32 Setting up Generic Clock Generators

Lecture 33 Setting up the Main Clock Generator

Lecture 34 Configuring the Timer Counter (TC) module

Lecture 35 Interrupt Vector Table

Lecture 36 Choosing an example project from GitHub

Lecture 37 Understanding example project code - part 1

Lecture 38 Understanding example project code - part 2

Lecture 39 Understanding example project code - part 3

Lecture 40 Setting up new project

Lecture 41 Correction on copying source file code

Lecture 42 Rewriting project - part 1

Lecture 43 Rewriting project (setting up 48MHz oscillator) - part 2

Lecture 44 Rewriting project (setting up 32kHz oscillator) - part 3

Lecture 45 Rewriting project (setting up GCLK Generators) - part 4

Lecture 46 Rewriting project (enabling peripheral channels) - part 5

Lecture 47 Rewriting project (main clock generator) - part 6

Lecture 48 Rewriting project (expand TC module library) - part 7

Lecture 49 Rewriting project (updating control register) - part 8

Lecture 50 Rewriting project (completing config of TC0 module) - part 9

Lecture 51 Rewriting project (duplicating config for TC3 module) - part 10

Lecture 52 Rewriting project (setting up timer interrupts) - part 11

Lecture 53 Rewriting project (update interrupt vector table) - part 12

Lecture 54 Rewriting project (enabling timers and toggling GPIO pins) - part 13

Lecture 55 Compiling the project

Lecture 56 Executing the timer project

Lecture 57 Conclusions

Section 5: Timer Counter for Control (TCC) - Pulse Width Generation Module

Lecture 58 Introduction

Lecture 59 Overview of the TCC module

Lecture 60 Waveform Generator

Lecture 61 Output matrix

Lecture 62 Interrupts

Lecture 63 Control and status registers

Lecture 64 Example TCC project from GitHub

Lecture 65 Expanding GPIO project to include TCC library files

Lecture 66 Choosing GPIO pins as TCC Waveform Output (WO) pins

Lecture 67 Configuring TCC WO pins

Lecture 68 Configuring clocks

Lecture 69 Resetting the TCC0 module and choosing the clock prescaler

Lecture 70 Choosing the waveform generator

Lecture 71 Setting the PWM cycle period

Lecture 72 Waiting for period register to synchronize

Lecture 73 Writing ISR for the TCC0 interrupt

Lecture 74 Updating the interrupt vector table

Lecture 75 Enabling/starting the TCC module

Lecture 76 Compiling the project

Lecture 77 Executing the project to view basic gating signals

Lecture 78 Inverting the gate pulses at output pins

Lecture 79 Executing project - complementary waveforms with pins inverted

Lecture 80 Dead-time insertion

Lecture 81 Configuring dead-time using WEXCTRL register

Lecture 82 Executing project - dead-time inserted between complementary pulses

Lecture 83 Conclusions

Section 6: Analog to Digital Converter (ADC)

Lecture 84 Introduction

Lecture 85 Overview of the ADC module

Lecture 86 Control and setup of the ADC module

Lecture 87 Configuring the analog input channels

Lecture 88 Completion of the ADC process

Lecture 89 Generating mock analog signals for testing

Lecture 90 Setting up the ADC project

Lecture 91 Choosing the analog input pins in the project

Lecture 92 Including Timer Counter (TC) modules for generating test signals

Lecture 93 Initializing the timer counter module

Lecture 94 Configuring the timer counter module

Lecture 95 Setting up interrupts for the timer counter module

Lecture 96 Generating rectangular waveforms for test signals

Lecture 97 Executing project - verifying analog test signals

Lecture 98 Including ADC in the project

Lecture 99 Choosing the analog inputs

Lecture 100 Updating clocks to include ADC

Lecture 101 Setting prescaler for ADC clock

Lecture 102 Calibrating the ADC module

Lecture 103 Configuring the analog input channels

Lecture 104 Enabling the ADC interrupt

Lecture 105 Updating interrupt vector table

Lecture 106 Enabling the ADC module and issuing SOC trigger

Lecture 107 Extracting converted values in the ISR

Lecture 108 Using the converted values to compute the original signals

Lecture 109 Verification of the conversion process

Lecture 110 Compiling the project

Lecture 111 Setting ADC reference

Lecture 112 Executing project - verifying sawtooth waveform thresholds

Lecture 113 Event System Module Overview

Lecture 114 Setting up the Event System Module

Lecture 115 Starting the Event System example project

Lecture 116 Updating the clocks to include the Event Systems module

Lecture 117 Setting the Event System configuration registers

Lecture 118 Updating configuration of TCC0 module for event generation

Lecture 119 Updating configuration of ADC0 module for event generation

Lecture 120 Compiling the project

Lecture 121 Executing the project - verifying the results

Lecture 122 Conclusions

Section 7: Conclusions

Lecture 123 Conclusions

Undergraduate students in electrical engineering,Early level graduate students in electrical engineering,Firmware and test engineers

[Image: oeZTIAUP_o.jpg]

[To see links please register or login]

[To see links please register or login]

[To see links please register or login]

[Image: signature.png]
Reply


Download Now



Forum Jump:


Users browsing this thread:

Download Now