0% found this document useful (0 votes)
46 views

Embedded Software Course

The document outlines an embedded software course covering C programming, AVR microcontrollers, and various projects using microcontrollers. It includes 15 sections covering topics like digital I/O, interrupts, ADC, SPI, I2C, and embedded software design. Requirements include an engineering degree and basics of digital electronics and C programming. The course will be online and fees are paid after completion.

Uploaded by

Malak Adel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views

Embedded Software Course

The document outlines an embedded software course covering C programming, AVR microcontrollers, and various projects using microcontrollers. It includes 15 sections covering topics like digital I/O, interrupts, ADC, SPI, I2C, and embedded software design. Requirements include an engineering degree and basics of digital electronics and C programming. The course will be online and fees are paid after completion.

Uploaded by

Malak Adel
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Embedded Software Course

Ahmed Tolba
For confirmation:
[email protected]
COURSE CONDITIONS
1. GRADUATE FROM ELECTRONICS – COMMUNICATION –
MECHATRONICS – COMPUTER ENGINEERING – ELECTRICAL
POWER – BIOMEDICAL- AVIONICS – COMPUTER SCIENCE
STUDENTS MUST HAVE KNOWLEDGE IN DIGITAL ELECTRONICS
2. BASICS OF DIGITAL ELECTRONICS
3. BASICS OF ANY PROGRAMMING LANGUAGES LIKE C
4. FEES ARE TO BE PAID AFTER COURSE IS FINISHED – 3000LE TO BE
PAID THROUGH VODAFONE CASH OR INSTAPAY – I TRUST YOU
5. ALL PROJECTS ARE DONE IN SIMULATOR LIKE PROTEUS – YOU
DON’T NEED A SPECIAL KIT , JUST TO SAVE MONEY
6. WE LEARN BY DOING – YOU MUST PRACTICE AND DO THE
PROJECTS YOURSELF! – WITH SUPERVISION AND SOLVING THE
PROBLEMS WITH ME
7. DOWNLOAD PROTEUS FROM HERE
https://www.yasdl.com/57569/%D8%AF%D8%A7%D9
%86%D9%84%D9%88%D8%AF-proteus.html
8. THIS IS AN ONLINE COURSE
9. THERE ARE NO HOUR’S LIMIT – I HAVE TO FINISH THE CONTENT
OF COURSE HOWEVER IT NEEDS

START DATE TO BE EXPECTED ON 1.11-2023


COURSE STARTS AT 8PM SAT - SUNDAY- MENOFIA TIME ZONE .

CONTENTS
1. C PROGRAMMING FOR EMBEDDED SOFTWARE
1.1 BEGINNING CONCEPTS
1.2 VARIABLES AND CONSTANTS
1.3 I/O OPERATIONS
1.4 OPERATORS AND EXPRESSIONS
1.5 CONTROL STATEMENTS
1.6 FUNCTIONS
1.7 POINTERS AND ARRAYS
1.8 STRUCTURES AND UNIONS
1.9 MEMORY TYPES
1.10 EXERCISES ON HACKER-RANK
2. THE AVR RISC PROCESSORS
2.1 INTRODUCTION
2.2 ARCHITECTURAL OVERVIEW
2.3 MEMORY
2.4 RESET AND INTERRUPT FUNCTIONS
2.5 PARALLEL I/O PORTS
2.6 TIMER/COUNTERS
2.7 SERIAL COMMUNICATION USING USART
2.8 ANALOG INTERFACES
2.9 SERIAL COMMUNICATION USING SPI
2.10 SERIAL COMMUNICATION USING I2C
3. PROJECTS
3.1 BLINKING AN LED
3.2 EXPERIMENTING WITH DIGITAL OUTPUT PORT
3.3 BIT-SHIFTING DIGITAL OUTPUTS
3.4 EXPERIMENTING WITH NOT , AND, OR, XOR
3.5 BUILDING A SINGLE DIGIT NUMERICAL COUNTER
3.6 EXPERIMENTING WITH AVR ADC
3.7 TESTING THE USART – SENDING TEXT, NUMBERS
3.8 EXPERIMENTING WITH RISING EDGE, FALLING EDGE INTERRUPTS
3.9 EXPERIMENTING WITH TWO INTERRUPTS – PIN CHANGE INTERRUPTS - CREATING
UP-DOWN COUNTER USING INTERRUPTS
3.10 EXPERIMENTING WITH TIMER OVERFLOW AND INTERRUPTS
3.11 USING PULSE WIDTH MODULATION AND PIEZO, RGB LEDS
3.12 DC MOTOR CONTROL WITH PWM AND MOSFET
3.13 STORING BYTES IN EEPROM , FLOATING POINT VARIABLES
3.14 USING MCP3008 ADC WITH SPI
3.15 USING MCP23017 WITH I2C
3.16 BUILDING AN AVR BASED LCD DIGITAL CLOCK

4. EMBEDDED SOFTWARE GEMS


4.1 INTRODUCTION TO SOFTWARE ARCHITECTURE IN EMBEDDED SOFTWARE
4.2 MATH CONCEPTS FOR EMBEDDED SOFTWARE ENGINEERS
4.3 FIRMWARE CONCEPTS IN C
4.4 DESIGN PATTERNS IN EMBEDDED SOFTWARE
4.5 SOFTWARE DESIGN USING COMPONENT BASED ARCHITECTURE
4.6 VARIOUS TOPICS IN EMBEDDED SOFTWARE
4.7 INTRODUCTION TO DATA STRUCTURE AND ALGORITHMS

REFERENCES
1. Tricks of the windows game programming gurus
2. Design Patterns Gang of Four
3. Operating System Concepts
4. Embedded Software Design
5. The C Programming Language

6. THE AVR MICROCONTROLLER – MAZIDI

7. EXPERIENCE

You might also like