13
Embedded Systems Embedded Systems Design Design Summer 1 2006 Summer 1 2006

Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Embed Size (px)

Citation preview

Page 1: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Embedded Systems Embedded Systems DesignDesign

Summer 1 2006Summer 1 2006

Page 2: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

2

Instructor InfoInstructor Info

Instructor: George RudolphInstructor: George Rudolph Office Hours: M, W one hour before Office Hours: M, W one hour before

classclass ContactContact

225 Thompson Hall225 Thompson Hall

[email protected]@citadel.edu

953-5032953-5032

Page 3: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

3

Course OverviewCourse Overview

Preparatory labs & in-class activitiesPreparatory labs & in-class activities 3 projects3 projects 1 Exam1 Exam 1 Final1 Final Some HomeworkSome Homework

Page 4: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

4

GoalsGoals

Give you skills, concepts and Give you skills, concepts and information that will information that will

Make you a better engineerMake you a better engineer Add to your value as an employeeAdd to your value as an employee Light your fireLight your fire

Education is not the filling of a pail, but Education is not the filling of a pail, but the lighting of a fire.the lighting of a fire.

William Butler YeatsWilliam Butler Yeats

Page 5: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

5

GoalsGoals

Learn toolsLearn tools Can use them, not an expertCan use them, not an expert Primary focus is software developmentPrimary focus is software development

Learn Embedded Systems ConceptsLearn Embedded Systems Concepts Deal Intelligently with Concepts/IssuesDeal Intelligently with Concepts/Issues Generalize skills learned in this courseGeneralize skills learned in this course

Hands-on funHands-on fun Get close to modern hardwareGet close to modern hardware Real-time Java programmingReal-time Java programming Build with LegosBuild with Legos

Page 6: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

6

Course MechanicsCourse Mechanics

Course is project-drivenCourse is project-driven Work in teamsWork in teams Activities and Lectures will be interleaved Activities and Lectures will be interleaved

during classduring class Minimize time spent outside class on projectsMinimize time spent outside class on projects

Testable MaterialTestable Material Questions in PrimerQuestions in Primer Variations fromVariations from

TutorialsTutorials PapersPapers

Page 7: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

7

“ “ Housekeeping lssues”Housekeeping lssues”

Circuit Cellar magazineCircuit Cellar magazine www.circuitcellar.com/electronic-editionwww.circuitcellar.com/electronic-edition Enter special access codeEnter special access code

WebCT loginsWebCT logins Id = last name + first initial Id = last name + first initial Last name cut to 6 or 7 letters if longerLast name cut to 6 or 7 letters if longer Last 4 numbers of SSIDLast 4 numbers of SSID

Page 8: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

8

Successful ES Programmer Successful ES Programmer Practices (Know & Do)Practices (Know & Do)

1.1. Hardware ArchitectureHardware Architecture Core hardware (processor/controller)Core hardware (processor/controller) Peripherals (what is being controlled)Peripherals (what is being controlled)

2.2. Tools & ToolchainsTools & Toolchains

3.3. Real-time embedded programmingReal-time embedded programming

4.4. Good concepts, techniques, habitsGood concepts, techniques, habits

Page 9: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

9

Assessment ActivityAssessment Activity

What is your experience with1. Hardware (alot, some, none)2. Windows or Linux OS (alot, some, none)3. Other OS (alot, some, none)4. Programming (a lot, some, none)5. Java (alot, some, none)6. Embedded Systems (a lot, some, none)

Page 10: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

10

Why Use Legos?Why Use Legos?

Popular Readily available No soldering required Quickly experiment with alternate

physical designs Mindstorms, Technics, etc. are easy

to program

Page 11: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

11

RCX IssuesRCX Issues

Hardware limitations of older technology

Iconic programming environment hides a lot of details Good or bad depending on what you want

to emphasize Issues with Java tools for RCX

“non-standard” JVM, tools Some language inconveniences (still?)

Page 12: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

12

What is this JCX thing?What is this JCX thing?

Lego-compatible hardware Java bytecode is the machine language Standards-based JVM and full language

J2ME CLDC 1.0-compliant Real-time extensions to Java language

Can compile and execute code using J2SE Don’t use classes that aren’t part of J2ME CLDC DO stub out hardware-dependent sections of

code Only have 3 units Not nicely packaged like the Brick

Page 13: Embedded Systems Design Summer 1 2006. Instructor: George Rudolph, Summer 20062 Instructor Info Instructor: George Rudolph Instructor: George Rudolph

Instructor: George Rudolph, Summer 2006

13

Why Choose Java?Why Choose Java?

See http://www.practicalembeddedjava.com/WhyJava.html