Back close

Course Detail

Course Name Embedded Programming
Course Code 23CSE458
Program B. Tech. in Computer Science and Engineering (CSE)
Credits 3
Campus Amritapuri ,Coimbatore,Bengaluru, Amaravati, Chennai

Syllabus

Unit I

Hardware and Software Architecture of Embedded Systems. Review of general C programming and data types, arrays, functions, pointers, structure, enum, and files. Introduction to Embedded C, Interfacing C with Assembly. Embedded programming issues – Reentrancy, Portability, Optimizing, and testing embedded C programs.

Unit II

Embedded Applications using Data structures, Linear data structures– Stacks and Queues, Linked Lists. Embedded C++ and Scripting Languages for Embedded Systems. Software to hardware mapping for a specific architecture.

Unit III

Introduction to real-time systems, RTOS basic architecture, RTOS Kernel, Kernel services: Task Management -tasks, process and threads, task attributes and types – task states and transition, task control block, Introduction to real-time task scheduling. RTOS for multi-core processors. OS for end and edge devices in cyber-physical systems. Development and debugging and version control tools for Embedded systems.

Objectives and Outcomes

Pre-Requisite(s): 23CSEXXX Computer Organization and Architecture

Course Objectives

  • The course will stress the importance of embedded systems in modern applications.
  • The course will pave the way for understanding the various sources of data streams from an embedded system point of view and recording these data streams for processing.
  • This will enable the students to develop various systems and analyze the data from the system for decision-making.
  • The course will enable the student with basic real-time operating system concepts for application development.

Course Outcomes

CO1: Enabling the student with fundamentals of micro-controller architecture, building components, and embedded data streaming devices.

CO2: To program various micro-controllers, application development, and data streaming using various sensors.

CO3: Working with Free RTOs for developing real-time data streaming and intelligent applications.

CO4: To develop real-time embedded system applications in healthcare, agriculture, autonomous car, and other data streaming systems.

CO-PO Mapping

 PO/PSO

PO1

PO2

PO3

PO4

PO5

PO6

PO7

PO8

PO9

PO10

PO11

PO12

PSO1

PSO2

CO

CO1

3

2

2

2

2

CO2

2

3

3

2

2

CO3

2

2

3

3

3

2

2

CO4

2

3

2

3

3

3

3

3

2

2

Evaluation Pattern

Evaluation Pattern: 70:30

Assessment

Internal

End Semester

MidTerm Exam

20

 

Continuous Assessment – Theory (*CAT)

10

 

Continuous Assessment – Lab (*CAL)

40

 

**End Semester

 

30 (50 Marks; 2 hours exam)

*CAT – Can be Quizzes, Assignments, and Reports

*CAL – Can be Lab Assessments, Project, and Report

**End Semester can be theory examination/ lab-based examination/ project presentation

Text Books / References

Textbook(s)

Michael Barr, “Programming Embedded Systems in C and C++”, Oreilly Publications, SecondEdition, 2012.

Reference(s)

Brian Amos,” Hands-On RTOS with Microcontrollers: Building real-time embedded systems using FreeRTOS, STM32 MCUs, and SEGGER debug tools”, PACKT publishing, 15 May 2020.

David E Simon, “An Embedded Software Primer”, Pearson Education Asia, 2005.

Wang, K. C. “Embedded and Real-Time Operating Systems”, Springer, Cham, 2017. 401-475.

DISCLAIMER: The appearance of external links on this web site does not constitute endorsement by the School of Biotechnology/Amrita Vishwa Vidyapeetham or the information, products or services contained therein. For other than authorized activities, the Amrita Vishwa Vidyapeetham does not exercise any editorial control over the information you may find at these locations. These links are provided consistent with the stated purpose of this web site.

Admissions Apply Now