UBC104 Embedded Systems Introduction to Embedded Systems.

Post on 19-Dec-2015

268 views 9 download

Tags:

Transcript of UBC104 Embedded Systems Introduction to Embedded Systems.

UBC104Embedded Systems

Introduction to Embedded Systems

UBC104 Embedded Systems 2

Goals of the Course

Understanding of the Components of an Embedded System My part: Programming Issues

Programming of microcontrollers Input/Output Control

UBC104 Embedded Systems 3

Overview of what’s to come

Refreshing C Programming Programming Microcontrollers

Interrupts & Timers Serial Communication

Microcontroller Interconnections Comparing various Interconnections

Overview of Microcontrollers Comparing Characteristics

UBC104 Embedded Systems 4

Overview of what’s to come

Refreshing C Programming Programming Microcontrollers

Interrupts & Timers Serial communication

Microcontroller Interconnections Comparing various interconnections

Overview of Microcontrollers Comparing characteristics

Exercises

Reports

UBC104 Embedded Systems 5

Recommended Reading:Programming in C & 8051 [1] B. W. Kernighan and D. M. Ritchie,

The C Programming Language,

ISBN 0-13-110362-8, Prentice Hall, 1988.

[2] M. J. Pont, Embedded C,

ISBN 0-201-79523-X, Addison-Wesley, 2002

UBC104 Embedded Systems 6

Recommended ReadingEmbedded Systems [1] D. E. Simon, An Embedded Software Primer,

ISBN 0-20-161569X, Addison-Wesley, 1999

[2] Q. Li & C. Yao, Real-Time Concepts for Embed-ded Systems, ISBN 1-57-8201241, CMP Books, 2003

[3] M. Ben-Ari, Principles of Concurrent Program-ming and Distributed Systems, ISBN: 0-13-7010788, Prentice Hall, 1982

UBC104 Embedded Systems 7

Characterization of Embedded Systems Specific purpose

Limited processing power

Invisible to user

* Figure is courtesy of philips.com, amazon.com & erricson.com

UBC104 Embedded Systems 8

Examples of Embedded Systems

UBC104 Embedded Systems 9

Ubiquitous devices

UBC104 Embedded Systems 10

Microcontroller vs. Microprocessor Low power consumption Specific meaning of

registers Limited amount of

memory

Intel 8051s, Atmel AVRs

Generic I/O Large instruction set Cache Requirement for

peripherials

68000, Pentium

Microcontroller Microprocessor

UBC104 Embedded Systems 11

Examples

UBC104 Embedded Systems 12

James’s Side of the Course

UBC104 Embedded Systems 13

Microcontroller

Motorola 68H11, 68HC12, … Intel 8051, 8052, 80251,… Microchip PIC16F628, 18F452, 16F877, … Atmel ATmega128, ATtiny28L, AT90S8515,…

Intel StrongARM1110, PXA25x

UBC104 Embedded Systems 14

Typical Quote“Personally I started with PICs and have not looked into the other ones much.

Motorola's 68HC family is often used for somewhat more complex tasks than PICs, but tends to be more difficult to buy.

The smaller AVR's are much like the PICs in price and performance. Hence PIC-or-AVR debates tend to be very hot.

There are so many 8051 clones around that it is difficult to say something in general about this family.”

Quote from Wouter Olaf van Ooijen

UBC104 Embedded Systems 15

Atmel 8051

UBC104 Embedded Systems 16

Tasks for Today

UBC Handbook - Exercise 1: (at the moment)

http://www.dsg.cs.tcd.ie/~sweber/Teaching/UBC104

Connect to a departmental machine called

“macneill.cs.tcd.ie” and get your environment set up: Editor Compiler Debugger

UBC104 Embedded Systems 17

Hello World

int main() {

/* The Hello World program */

printf(“Hello World\n”);

return 0;

}

UBC104 Embedded Systems 18

Hello World

int main() {

/* The Hello World program */

printf(“Hello World\n”);

return 0;

}

Comment

Output of “Hello World” followed by a “newline”

Start of the program