
Learn to program the 8051 microcontroller with embedded C. Explore how embedded C extends traditional C for device-specific applications, loading hex files into hardware instead of a computer.
Explore how embedded C differs from standard C by highlighting hardware dependence and microcontroller architecture, and learn to program the 8051 using embedded C with simulation on a development board.
Identify microprocessor as the CPU that performs arithmetic and logical operations on binary data. Contrast microcontroller as microprocessor plus RAM, ROM, I/O, and timers integrated on a single chip.
Explore microcontroller variants from Freescale, Microchip, Dialogue, and Intel 8051. Learn criteria for choosing hardware based on RAM, ROM, computational ability, development environment, and market availability for assembly language programming.
Explore the 8051 architecture, including on-chip program memory and ram, a cpu with a crystal oscillator and two-phase clock, interrupt control, ports, timers, serial interfaces, and bus.
The 8051 microcontroller uses on-chip RAM and ROM, and connects external memory via ports when needed for program and data storage.
Understand hexadecimal notation in the 8051 microcontroller, relate hex to binary and decimal, and learn that one byte uses two hex digits (four bits per digit), with optional 0x prefix.
Explore the 8051 data memory architecture: 128 bytes of memory, four register banks of eight 8-bit registers, and the role of special function registers.
Explore the 8051 memory map, including RAM, banks, and 128 bytes of special function registers, and learn bit-addressable access, along with the accumulator and data pointer.
Explore 8051 ports: four 8-bit, bidirectional, bit-addressable I/O ports, usable as bytes or bits, with port 0 address/data multiplexing for external sensors and actuators.
Explore the structure of embedded C, contrast it with standard C, and learn hardware-specific headers for 8051 microcontrollers, plus the infinite while(1) loop that keeps embedded programs running.
Learn about basic C data types for 8051, including unsigned and signed integers and characters, with their 8- and 16-bit ranges and ASCII considerations.
Learn how keil ide, an integrated development environment, combines the compiler, linker, and object-to-hex converter to produce hex files for loading into the 8051 microcontroller.
Explore the 8051 development board hardware, its sockets, inputs and outputs, seven-segment display, and the programming interface used to connect a pc for testing.
Write a C program to blink leds on an 8051 microcontroller by toggling ports in a continuous loop with a delay. Learn hardware dependent setup in MicroVision and debugging basics.
Demonstrates blinking LEDs in C on an 8051 microcontroller, with LEDs connected to port 0 and driven by input signals from the board.
Toggle 8051 ports using C to blink leds with controlled delays, illustrating port initialization and bit patterns, and programming flash memory to run the embedded code on hardware.
Perform a hardware demo of toggling the ports on an 8051 microcontroller, showcasing alternate leads turning on for timed intervals and how to program them.
Explore the shifting concept in 8051 microcontroller code by using the shift operator to move a binary value by one bit, discarding zeros.
Demonstrate hardware shifting with a left shifter, feed input through a port, and observe successive one bits propagate toward the destination.
Interface a seven segment display with the 8051 using common anode or cathode configurations, multiplexed data lines, and segment selection to light digits.
Learn to drive a seven-segment display with an 8051 by using a digit code array, port 1 data, a bit-addressable control line on port b, and a 0-9 delay cycle.
Learn to drive a four-segment seven-segment display from an 8051 board by wiring port one to the common data line and using control lines to select each segment.
Learn how to drive multiple seven-segment displays from a single common data bus using time-multiplexing, enabling and disabling segments to show different digits.
Demonstrates interfacing multiple seven-segment displays with an 8051 microcontroller by sending digits via port 1 and rapidly turning segments on and off to display numbers.
Learn how to interface a 4x4 matrix keypad with the 8051 by scanning columns and rows, driving columns low to enable a key press and detecting signals.
Explore embedded c to interface a 4x4 keypad with 8051, scan columns, use a lookup table to map keys, and display pressed values on a seven-segment display.
Watch a hardware demo on interfacing a keypad with an 8051 microcontroller, wiring port pins and columns to drive a multi-column display and read key presses in real-time.
Explore how timers and counters generate precise delays by counting clock pulses from a crystal oscillator, with registers controlling the operation. Convert the frequency to a one microsecond tick and use division to create desired delays.
Explore how to program timers on the 8051 microcontroller, distinguish timers from counters, and configure timer0 and timer1 with modes and key registers for accurate counting.
Program 8051 timers in mode 1 using a delay calculation formula to compute 16-bit reload value, load it into timer registers, start the timer, monitor overflow flag, then clear it.
Learn how to generate a one second delay on 8051 by applying timer 0 with a 50 millisecond overflow, counting twenty delays, and toggling a port to blink an LED.
Explore timer mode 2 in 8051 microcontrollers with embedded C, including 8-bit auto-reload, initializing timer values, calculating delays, and simulating timer output using the debugging environment.
Understand interrupts in the 8051 microcontroller, including external hardware and timer interrupts, how ISR functions are automatically invoked with priority, and the drawbacks of polling.
Learn to implement the 8051 external interrupt 0 in embedded c by wiring a switch to p3.2, enabling int0, and toggling port 0 in the isr, with debugging feedback.
Demonstrate hardware interrupts on the 8051 by wiring four switches to external interrupt lines, showing how pressing a switch triggers an ISR, preempts the main loop, and runs while held.
Configure timer 0 on an 8051, enable its overflow interrupt, and use the interrupt service routine to toggle a port every 15 milliseconds, avoiding busy loops.
Program the hardware with the written code and observe the board blinking due to a delay, while a timer overflow triggers an interrupt and its service routine toggles the LED.
Build a stopclock on an 8051 microcontroller using external interrupts and a timer. Drive a four-digit seven-segment display and implement run, stop, and reset with hundreds, tens, and ones decomposition.
Implement a stopclock on 8051 in embedded C, using timer zero for 100 ms intervals, update seven-segment display, and control start stop behavior with hardware buttons.
demonstrates hardware implementation of a stopwatch using the 8051 microcontroller, wiring port 0 and port 2 to a multiplexed seven-segment display, with start, stop, reset switches and 100 ms delay.
By learning this course,
You'll be able to
1. Understand the differences between C and Embedded C
2. Know how to program in Embedded C
3. Understand the internal architecture, on chip and off chip peripherals of 8051 microcontroller.
4. Understanding the usage of Keil IDE to program 8051.
5. Understanding the hardware components in 8051 development kit.
6. Build Embedded Systems Projects.
This course is completely practical oriented. We will be working with an hardware kit called 8051 development kit. Perhaps it's not necessary to buy the hardware if you don't wish to. Since, the results of each code can be verified in the simulation tool itself. But, working with hardware and getting the practical knowledge enhances the learning.
An embedded system is a microprocessor-based computer hardware system with software that is designed to perform a dedicated function, either as an independent system or as a part of a large system. At the core is an integrated circuit designed to carry out computation for real-time operations.
Hardware + Software = Embedded System!
We will be understanding both the things in this course. At the end of this course, the learner should be able to develop an embedded product using 8051 microcontroller for any application.