CS3691
EMBEDDED
SYSTEMS AND IOT
COURSE
OBJECTIVES:
• To learn the internal architecture and
programming of an embedded processor.
• To introduce interfacing I/O devices to
the processor.
• To introduce the evolution of the
Internet of Things (IoT).
• To build a small low-cost embedded and
IoT system using Arduino/Raspberry Pi/ open platform.
• To apply the concept of Internet of
Things in real world scenario.
UNIT
I 8-BIT EMBEDDED PROCESSOR
8- Bit Microcontroller – Architecture –
Instruction Set and Programming – Programming Parallel Ports – Timers and Serial Port – Interrupt
Handling.
UNIT
II EMBEDDED C PROGRAMMING
Memory
And I/O Devices Interfacing – Programming Embedded Systems in C – Need For RTOS
– Multiple Tasks and Processes – Context Switching – Priority Based Scheduling
Policies.
UNIT
III IOT AND ARDUINO PROGRAMMING
Introduction
to the Concept of IoT Devices – IoT Devices Versus
Computers
– IoT Configurations – Basic Components – Introduction to Arduino – Types of
Arduino – Arduino Toolchain – Arduino Programming Structure – Sketches – Pins –
Input/Output From Pins Using Sketches – Introduction to Arduino Shields –
Integration of Sensors and Actuators with Arduino.
UNIT
IV IOT COMMUNICATION AND OPEN PLATFORMS
IoT
Communication Models and APIs – IoT Communication Protocols – Bluetooth – WiFi
– ZigBee
–
GPS – GSM modules – Open Platform (like Raspberry Pi) – Architecture – Programming
– Interfacing – Accessing GPIO Pins – Sending and Receiving Signals Using GPIO
Pins – Connecting to the Cloud.
UNIT
V APPLICATIONS DEVELOPMENT
Complete
Design of Embedded Systems – Development of IoT Applications – Home Automation
– Smart Agriculture – Smart Cities – Smart Healthcare.
PRACTICAL
EXERCISES:
1. Write 8051 Assembly Language experiments
using simulator.
2. Test data transfer between registers and
memory.
3. Perform ALU operations.
4. Write Basic and arithmetic Programs Using
Embedded C.
5. Introduction to Arduino platform and
programming
6. Explore different communication methods
with IoT devices (Zigbee, GSM, Bluetooth)
7. Introduction to Raspberry PI platform and
python programming
8. Interfacing sensors with Raspberry PI
9. Communicate between Arduino and Raspberry
PI using any wireless medium
10. Setup a cloud platform to log the data
11. Log Data using Raspberry PI and upload to
the cloud platform
12. Design an IOT based system
COURSE
OUTCOMES:
CO1:
Explain the architecture of embedded processors.
CO2:
Write embedded C programs.
CO3:
Design simple embedded applications.
CO4:
Compare the communication models in IOT
CO5:
Design IoT applications using Arduino/Raspberry Pi /open platform.
TEXTBOOKS
1. Muhammed Ali Mazidi, Janice Gillispie
Mazidi, Rolin D. McKinlay, “The 8051 Microcontroller and Embedded Systems”,
Pearson Education, Second Edition, 2014
2. Robert Barton, Patrick Grossetete, David
Hanes, Jerome Henry, Gonzalo Salgueiro, “IoT Fundamentals: Networking
Technologies, Protocols, and Use Cases for the Internet of Things”, CISCO
Press, 2017.
REFERENCES
1. Michael J. Pont, “Embedded C”, Pearson
Education, 2007.
2. Wayne Wolf, “Computers as Components:
Principles of Embedded Computer System Design”, Elsevier, 2006.
3. Andrew N Sloss, D. Symes, C. Wright, “Arm
System Developer's Guide”, Morgan Kauffman/ Elsevier, 2006.
4. Arshdeep Bahga, Vijay Madisetti,
“Internet of Things – A hands-on approach”, Universities Press, 2015