All in One Offer! | Access Unlimited Courses in any category starting at just $29. Signup today. Offer Ends in: 4 Days!

Browse Library

  • Business Solutions
  • Become an Instructor
  • 0
    Shopping Cart

    Your Cart is empty. Keep shopping to find a course!

    Browse Courses
Get Unlimited Learning Access
4 days left at this price!
30-Day Money-Back Guarantee

All Plans Includes

  • Full Access to 16000+ online courses
  • Play & Pause Course Viewing
  • HD Recorded Lectures
  • Access on Mobile/PC/Tablet
  • Quizzes and Real Projects
  • Certificate of Completion

Need to train more people?

For team of 5 or more users.
Try Learnfly for Business
  • Learn basics of Embedded C
  • Developing Embedded System around AVR Microcontroller
  • Master Masking Technique in C
  • Interface Sensors and Actuators using GPIOs / Ports
  • Demystify Timers to write delays
  • Learn how to generate PWM, also learn to vary Duty Cycle and Frequency of PWM Wave
  • Interface Liquid Crystal Displays (LCDs) to print Characters, String and Integers, Also Learn to write Library for LCD
  • Interface Analog Sensors using inbuilt analog to digital converters

Learn Embedded C with AVR Microcontrollers!!

  • 8.5 Hours of Video Content.

  • 8 Quizzes with more than 70 Questions.

  • 13 Hands-on Practicals

  • All Codes are available in the resources

  • Lecture Material (PDF / PPTs) are available in the resources

  • All Wiring Diagrams are available resources


This course Demystifies the internal working of Microcontroller and Peripherals. You will learn register-level Embedded C programming to use inbuilt peripherals on the microcontroller to interface sensors, actuators, and Liquid Crystal Displays (LCD). You will learn to use Timers to generate accurate delays, Use timers to generate Pulse Width Modulation (PWM) Waveforms with variable duty cycle. Learn to use analog to digital converter (ADC) to gather data from analog sensors and display it to LCDs.

Each section ends with a Quiz to examine your learning outcomes from this course. All the codes (C Programs) are available in resources along with the lecture material.

This is NOT Arduino Style Programming!!

I believe that Arduino is for quick prototyping of products but not for Mastering Microcontrollers and peripherals. In Arduino, you use many Third-Party Libraries, In this course, you will be writing your own libraries, Your code will be talking and manipulate microcontroller registers, True Register Level programming is presented in this course.

Major Topics Covered

  1. Masking: Learn to manipulate (Set/Reset) a particular bit in a port or MCU register without altering other bits.

  2. Pull-up Register: Learn the importance of pull-up resistors, enabling and disabling them, also learn to use them in interfacing digital sensors.

  3. Timers: Learn to write C programs to generate accurate delays using MCU Timers.

  4. Pulse Width Modulation: Learn to generate PWM wave with variable duty cycle using MCU timers and PWM registers.

  5. Liquid Crystal Display:  Learn to interface LCDs with MCU using GPIOs, No third-party library is used for LCD, You will learn to write your own library for LCDs.

  6. Analog to Digital Converter: Learn to interface analog sensors such as a potentiometer to read voltage across it.

  7. Temperature Monitoring System: Learn to interface LM35 temperature sensor IC to read ambient temperature and display the same on LCD.

  8. Speed Control of DC Motor: Learn to control the Direction and Speed of DC Motor using half-bridge integrated circuit L293D and PWM Technique. Vary the Speed using a POT connected to ADC and vary the PWM duty cycle accordingly.   

  • Be familiar to any programming language, Basics only
  • Beginners to develop Embedded Systems around Microcontroller
  • Beginners curious to write and test Embedded C Programs on Hardware
View More...
  • Section 1 : Expectation from the course 1 Lectures 00:09:47

    • Lecture 1 :
    • Expectation from the course. What's inside the course Preview
  • Section 2 : Microcontrollers Basics 3 Lectures 00:19:55

    • Lecture 1 :
    • Microcontrollers Vs Microprocessors
    • Lecture 2 :
    • Von-Neumann Vs Harvard Architecture
    • Lecture 3 :
    • How to Select a Microcontroller?
  • Section 3 : AVR & Its Ports 3 Lectures 00:24:54

    • Lecture 1 :
    • Hello AVR!!
    • Lecture 2 :
    • AVR Ports
    • Lecture 3 :
    • The First Embedded C program
  • Section 4 : Embedded C - Masking 5 Lectures 00:28:49

    • Lecture 1 :
    • Bit Wise Masking !!
    • Lecture 2 :
    • LED Blink using Masking
    • Lecture 3 :
    • Masking using Shifting
    • Lecture 4 :
    • Blink LED using Masking with Shifting
    • Lecture 5 :
    • Circular Shifting / Bit Rotation
  • Section 5 : Play with Switches , Pull Up Resistors, & LEDs 5 Lectures 00:36:46

    • Lecture 1 :
    • Switch and Pull Up Resistors
    • Lecture 2 :
    • How to Enable inbuilt pull-up resistors in AVR?
    • Lecture 3 :
    • Interface LED and Switch with AVR using Embedded C
    • Lecture 4 :
    • Switch with LED Blink - Have Fun with Embedded C
    • Lecture 5 :
    • Switch and LED Blink with Multiple Delay - More Fun With Embedded C
  • Section 6 : Times and Delays 4 Lectures 00:35:20

    • Lecture 1 :
    • Introduction to AVR Timers
    • Lecture 2 :
    • Lets get inside TIMER0
    • Lecture 3 :
    • How to calculate TCNT value to generate a particular delay?
    • Lecture 4 :
    • Programming AVR Timers
  • Section 7 : Let us Explore Pulse Width Modulation (PWM) 6 Lectures 00:54:31

    • Lecture 1 :
    • Introduction to PWM
    • Lecture 2 :
    • How PWM wave is generated in Microcontrollers
    • Lecture 3 :
    • PWM Registers in AVR and PWM Modes
    • Lecture 4 :
    • PWM Frequency
    • Lecture 5 :
    • PWM Duty Cycle
    • Lecture 6 :
    • Programming to generated PWM Wave - LED Brightness Control
  • Section 8 : Liquid Crystal Displays (LCDs) 10 Lectures 01:29:03

    • Lecture 1 :
    • Introduction to LCD Displays
    • Lecture 2 :
    • LCD - Initialization
    • Lecture 3 :
    • LCD - Command and Data Embedded C Functions
    • Lecture 4 :
    • LCD - Initialization Function
    • Lecture 5 :
    • LCD - Printing Characters using Embedded C
    • Lecture 6 :
    • LCD - Embedded C functions to position cursor and print strings
    • Lecture 7 :
    • LCD - Printing Strings
    • Lecture 8 :
    • LCD - Embedded C Function to Print Integers
    • Lecture 9 :
    • LCD - Printing Integers
    • Lecture 10 :
    • Embedded C - User defined library for LCD
  • Section 9 : Analog to Digital Conversion 8 Lectures 00:41:00

    • Lecture 1 :
    • Need of Analog to Digital Conversion
    • Lecture 2 :
    • Characteristics of ADC
    • Lecture 3 :
    • Relation between Input Analog Voltage and Binary Output Data
    • Lecture 4 :
    • Features of ADC on AVR
    • Lecture 5 :
    • ADC - ADMUX Register
    • Lecture 6 :
    • ADC - ADCSRA Register
    • Lecture 7 :
    • Programming ADC using Embedded C - EXP 1
    • Lecture 8 :
    • Programming ADC to Calculate and Display Input Analog Voltage
  • Section 10 : Projects 3 Lectures 00:35:17

    • Lecture 1 :
    • Temperature Monitoring System using LM35 Sensor
    • Lecture 2 :
    • Speed Control of DC Motor - Part 1
    • Lecture 3 :
    • Speed Control of DC Motor - Part 2
  • How do i access the course after purchase?

    It's simple. When you sign up, you'll immediately have unlimited viewing of thousands of expert courses, paths to guide your learning, tools to measure your skills and hands-on resources like exercise files. There’s no limit on what you can learn and you can cancel at any time.
  • Are these video based online self-learning courses?

    Yes. All of the courses comes with online video based lectures created by certified instructors. Instructors have crafted these courses with a blend of high quality interactive videos, lectures, quizzes & real world projects to give you an indepth knowledge about the topic.
  • Can i play & pause the course as per my convenience?

    Yes absolutely & thats one of the advantage of self-paced courses. You can anytime pause or resume the course & come back & forth from one lecture to another lecture, play the videos mulitple times & so on.
  • How do i contact the instructor for any doubts or questions?

    Most of these courses have general questions & answers already covered within the course lectures. However, if you need any further help from the instructor, you can use the inbuilt Chat with Instructor option to send a message to an instructor & they will reply you within 24 hours. You can ask as many questions as you want.
  • Do i need a pc to access the course or can i do it on mobile & tablet as well?

    Brilliant question? Isn't it? You can access the courses on any device like PC, Mobile, Tablet & even on a smart tv. For mobile & a tablet you can download the Learnfly android or an iOS app. If mobile app is not available in your country, you can access the course directly by visting our website, its fully mobile friendly.
  • Do i get any certificate for the courses?

    Yes. Once you complete any course on our platform along with provided assessments by the instructor, you will be eligble to get certificate of course completion.
  • For how long can i access my course on the platform?

    You require an active subscription to access courses on our platform. If your subscription is active, you can access any course on our platform with no restrictions.
  • Is there any free trial?

    Currently, we do not offer any free trial.
  • Can i cancel anytime?

    Yes, you can cancel your subscription at any time. Your subscription will auto-renew until you cancel, but why would you want to?

448 Course Views

4 Courses

I am a certified trainer with over 11 years of experience as a professional trainer and product design engineer. My areas of interest are Embedded System design, IoT design, front end VLSI design. Certified in the Internet of Things, Embedded system, and VLSI. My teaching strategy is to start slow and then gradually increase complexity to ensure that students achieve learning outcomes.
View More...
  • pcb-design-for-everyone-with-easyeda-a-free-and-online-tool

    PCB Design for everyone with EasyED...

    By : Amit Rana

    Lectures 17 Beginner Level 2:21:24
  • learn-the-art-and-science-of-pcb-design-with-eagle

    Learn the Art and Science of PCB De...

    By : Amit Rana

    Lectures 34 Beginner Level 2:48:17
  • embedded-systems-with-8051-micro-controller-using-embedded-c

    Embedded Systems with 8051 Micro Co...

    By : Amit Rana

    Lectures 35 Beginner Level 4:38:4
Sign Up & Start Learning
By signing up, you agree to our Terms of Use and Privacy Policy
Reset Password
Enter your email address and we'll send you a link to reset your password.