Sie sind auf Seite 1von 5

EMBEDDED C

Auroras Scientific Technological and Research Academy

EMBEDDED C
Description
This subject introduces students to procedural programming in the C programming
language. Students analyse and develop programs that could run in an embedded environment
(which may not necessarily support an operating system). In addition, structured analysis and
design techniques are introduced and developed.
Embedded C, even if its similar to C, and embedded languages in general requires a
different kind of thought process to use. Embedded systems, like cameras or TV boxes, are
simple computers that are designed to perform a single specific task. They are also designed to
be efficient and cheap when performing their task. For example, they arent supposed to use a lot
of power to operate and they are supposed to be as cheap as possible. As an embedded system
programmer, you will have simple hardware to work with. You will have very little RAM, ROM
and very little processing power and stack space. Your goal is to write programs that are able to
leverage this limited processing power for maximum effect. As an ordinary C programmer, you
dont have as many constraints.
The reason why most embedded systems use Embedded C as a programming language is
because Embedded C lies somewhere between being a high level language and a low level
language. Embedded C, unlike low level assembly languages, is portable. It can run on a wide
variety of processors, regardless of their architecture. Unlike high level languages, Embedded C
requires less resources to run and isnt as complex. Some experts estimate that C is 20% more
efficient than a modern language like C++. Another advantage of Embedded C is that it is
comparatively easy to debug.
Subject objectives
Upon successful completion of this subject students should be able to:
1. Exhibit a high standard of competency as programmers in the C programming language.
2. Identify and describe thoroughly the use and workings of programming tools (such as
compilers, linkers and debuggers).
3. Use library and operating system functions to support program execution.
4. Systematically develop and test multi-file programs of a reasonable complexity.
This subject also contributes specifically to the development of the following course intended
learning outcomes:

Identify, interpret and analyse stakeholder needs


Identify and apply relevant problem solving methodologies
Design components, systems and/or processes to meet required specifications
Apply decision making methodologies to evaluate solutions for efficiency, effectiveness and
sustainability

EMBEDDED C

Auroras Scientific Technological and Research Academy

Implement and test solutions Teaching and learning strategies


SYLLABUS

UNIT I:
Programming Embedded Systems in C
Introduction, What is an embedded system, Which processor should you use, Which
programming language should you use, Which operating system should you use, How do you
develop embedded software, Conclusions
Introducing the 8051 Microcontroller Family
Introduction, Whats in a name, The external interface of the Standard 8051, Reset
requirements ,Clock frequency and performance, Memory issues, I/O pins, Timers, Interrupts,
Serial interface, Power consumption ,Conclusions
UNIT II:
Reading Switches
Introduction, Basic techniques for reading from port pins, Example: Reading and writing bytes,
Example: Reading and writing bits (simple version), Example: Reading and writing bits (generic
version), The need for pull-up resistors, Dealing with switch bounce, Example: Reading switch
inputs (basic code), Example: Counting goats, Conclusions
UNIT III:
Adding Structure to the Code
Introduction, Object-oriented programming with C, The Project Header (MAIN.H), The Port
Header (PORT.H), Example: Restructuring the Hello Embedded World example, Example:
Restructuring the goat-counting example, Further examples, Conclusions
UNIT IV:
Meeting Real-Time Constraints
Introduction, Creating hardware delays using Timer 0 and Timer 1, Example: Generating a
precise 50 ms delay, Example: Creating a portable hardware delay, Why not use Timer 2?, The
need for timeout mechanisms, Creating loop timeouts, Example: Testing loop timeouts,
Example: A more reliable switch interface, Creating hardware timeouts, Example: Testing a
hardware timeout, Conclusions
UNIT V: Case Study: Intruder Alarm
System Introduction, The software architecture, Key software components used in this example,
running the program, the software, Conclusions
TEXT BOOKS:
1. Embedded C - Michael J. Pont, 2nd Ed., Pearson Education, 2008
REFERENCE BOOKS:
1. PICmicro MCU C-An introduction to programming, The Microchip PIC in CCS C - Nigel
Gardner.

EMBEDDED C

Auroras Scientific Technological and Research Academy

SESSION PLAN
S.
N
o

Topics as per JNTU


Syllabus

Modules /Sub-modules

Lectur
e No.

Books Referred

UNIT I : Introduction to cellular mobile radio systems

6
7

8
9
10
11

12

13

14

Introduction

Overview of the subject,


Session Plan Discussion,
present trends
History
Efficiency considerations
Limitation of conventional
mobile systems

L1
T1-Ch1 Pg 1 7
L2

Remarks

EMBEDDED C

S.
N
o

15

16

17

18

18

19

20

21
22
23
24
25

26
27
28

Topics as per JNTU


Syllabus

Auroras Scientific Technological and Research Academy

Modules /Sub-modules

Lectur
e No.

Books Referred

Remarks

EMBEDDED C

S.
N
o
29

30

31

32

33

34

35

36

37

Topics as per JNTU


Syllabus

Auroras Scientific Technological and Research Academy

Modules /Sub-modules

Lectur
e No.

Books Referred

Remarks

Das könnte Ihnen auch gefallen