PROBLEM SOLVING USING EMBEDDED C L T P C
21EC1701 PROGRAMMING 3 0 0 3
COURSE OBJECTIVES:
The Students should be made
To understand the basics of Embedded and IoT System.
To study the Architecture of ARM Processor.
To understand interfacing concepts of ARM.
Ability to select appropriate hardware and microcontrollers based on need of
application.
To illustrate about robotic vision
To apply robot based concepts in AI
UNIT I EMBEDDED OS FUNDAMENTALS (LINUX) 9
Introduction: Operating System Fundamentals, General Linux Architecture, Linux
Kernel, Linux file systems, ROOTFS, Sysfs and Procfs, Embedded Linux: Booting
Process in Linux, boot loaders, U-boot, Kernel Images, Linux File systems. GNU
Tools: gcc, gdb, gprof, Makefiles
UNIT II EMBEDDED C PROGRAMMING 9
Review of data types –scalar types-Primitive types-Enumerated types-Subranges,
Structure types-character strings –arrays- Functions Introduction to Embedded C-
Introduction, Data types Bit manipulation, Interfacing C with Assembly.
UNIT III EMBEDDED PROGRAMMING ISSUES 9
Reentrancy, Portability, Optimizing and testing embedded C programs. Modelling
Language for Embedded Systems: Modeling and Analysis of Real-Time and
Embedded systems
UNIT IV EMBEDDED APPLICATIONS USING DATA STRUCTURES 9
Linear data structures– Stacks and Queues Iimplementation of stacks and
QueuesLinked List - Implementation of linked list, Sorting, Searching, Insertion and
Deletion, Nonlinear structures – Trees and Graphs Object Oriented programming
basics using C++ and its relevance in Embedded systems.
UNIT V SCRIPTING LANGUAGES FOR EMBEDDED SYSTEMS
9
Shell scripting, Programming basics of Python, Comparison of scripting languages
TOTAL: 45 PERIODS
COURSE OUTCOMES:
At the end of the course students will be able to
CO1: Learn to configure and build a customized Linux kernel.
CO2: Provide depth knowledge about ARM architecture and its interfacing
CO3: Ability to identify, formulate and solve engineering problems by using
Embedded Systems with IoT.
CO4: Create an embedded system application.
CO5: Realize the description of components of vision sytems
CO6: Understand the applications of robotics in AI
TEXT BOOKS:
1. C Programming language, Kernighan, Brian W, Ritchie, Dennis M 2. “Embedded
C”,Michael J. Pont, Addison Wesley
REFERENCES:
1. “Exploring C for Microcontrollers- A Hands on Approach”,Jivan S. Parab,
Vinod G. Shelake, Rajanish K.Kamot, and Gourish M.Naik, Springer.
2. Daniel W. Lewis, “Fundamentals of embedded software where C and
assembly meet”, Pearson Education, 2002.
3. Bruce Powel Douglas, “Real time UML, second edition: Developing efficient
objects for embedded systems”, 3rd Edition 1999, Pearson Education. 3.
Steve Heath, “Embedded system design”, Elsevier, 2003.
4. David E. Simon, “An Embedded Software Primer”, Pearson Education,
2003.
5. The Complete Reference C++, Herbert Schildt, TMH
6. C++ programming language, Bjarne Stoustrup,Addison-Wesley
7. GNU C++ For Linux, Tom Swan , Prentice Hall India
8. Object_Oriented programming in C++, Robert Lafore , Galgotia
publications
9. Operating System Concepts, Peter B. Galvin, Abraham Silberschatz, Gerg
Gagne, Wiley Publishers
10. GNU/LINUX Application Programming, Jones, M Tims