Advance Training Course on Microcontroller(AVR)
Introduction:
- Introduction to Embedded System
- What is microcontroller
- Comparison between Microcontroller & Microprocessor
- What is AVR?
- Why AVR?
- Comparison of AVR with other MCU
- AVR Block diagram
- Reason for choosing MCU for your project
- Atmel AVR 8-bit microcontroller architecture
- Special feature
- Block diagram
- System Clock
- Installation & Environment Setup:
- Development life cycle
- Proteus Setup
- Atmel Studio 7.0
- IDE features
- Schematic design
- Simulation Concept
- Development kit
- Hardware construction
- Testing & Debugging
- 10 Final Fabrication.
Lecture 1:
- Basic concept about C programming
- Concept about if-else, do-while, for loop and goto statement
- Concept about macro, header file, and library design
- Concept about Various custom data types
- Exercise: Exercise of few problems in C will be given in class.
Lecture 2:
- Concept about functional programming
- Basic concept about Pointers and it’s usages
- Basic about OOP (Object Oriented Programming) like C++
- The basic concept of class, properties, methods, constructor, destructor, static members & methods, etc of C++ programming
Exercise: Exercise of few problems in C & C++ will be given in class.
Lecture 3:
- I/O and port
- GPIO’s
- Analog I/O’s
- Configuring ports and controlling their status
Example: Input and output detection method
Project: LED Blink and LED Turn on/off using Button, Interfacing 7 segments.
Lecture 4:
- Memory Management
- Types of memories and its usage
- SRAM
- EEPROM
- Special function registers
- System Clock and Clock Options
- Concept of Interrupt and it’s usages
Example: Internal Interrupt, External Interrupt, Pin Change Interrupt
Project: Interfacing PIR Sensor using External Interrupt
Lecture 5:
- Timers in AVR
- Using 8-bit & 16-bit Timers
- Asynchronous Timer
- Counters & their usages
Example: Making ‘Delay’ using Timers, Count exact 1 second using Asynchronous Timer, Counting total input pulse using Counter
Project: Countdown display using 7 segments.
Lecture 6:
- Analog to digital conversion
- ADC in AVR
- Using different types of Reference for ADC
- Detecting input voltage in ADC pin
- Reading ADC value with interrupt & without interrupt
- Measuring High Voltage DC/AC using ADC
- Interfacing various analog sensors using ADC
- Analog Comparator & its usages
Example: ADC reading, Interrupt based ADC reading
Project: Design a voltmeter, Temperature reading using sensor LM35, Capacitor meter
Lecture 7:
- Concept about Digital to Analog Conversion (DAC)
- Generating PWM using Timer0, Timer1 & Timer2
- Making various voltage level using PWM
- Making Sine Wave using PWM
- Generating Sound using PWM
Example: Generating PWM and analyze it, generating Sine Wave & Sound
Project: Making various sound frequencies, Generating Siren using PWM
Lecture 8:
- Basic communication protocols
- Basic about Serial Communication
- Details about UART protocol
Example: Serial communication with PC and another microcontroller.
Project: Controlling load by giving the command from the computer, Connect Bluetooth module with microcontroller and control load remotely.
Lecture 9:
- Basic about SPI Communication
- Details about SPI protocol and interfacing methodology
Example: SPI communication with other hardware & microcontroller
Project: Interfacing and reading SD card data using SPI protocol from the microcontroller.
Lecture 10:
- Basic about I2C/TWI protocol
- Advantages of I2C/TWI protocol over other protocol
- Details about I2C/TWI protocol and interfacing methodology
Example: SPI communication with other hardware & microcontroller
Project: Interfacing and reading SD card data using SPI protocol from the microcontroller.
Lecture 11:
- Basic Concept about the Internet of Things (IoT)
- Connect microcontroller with the Internet through Ethernet Cable
- Pulling data from server to microcontroller and pushing data to server from microcontroller
- Controlling Load from a Webpage over Internet
Example: Controlling load and getting the device status update through the Internet.
Project: Design an Internet controlled Home Automation project.
Lecture 12:
- Basic electronics design concept
- Basic electronics calculation for designing circuit
- PCB design basic
- PCB design practice
Lecture 13:
- Design custom component in Proteus
- Design PCB for custom component
- Details about PCB Production in practical