Contents |
General Information
|
On individual or immediate matters, contact your instructor or associate instructor via email.
We very much like to talk to students after class or in posted
office hours.
Email can be awkward for detailed answers, so reread your email
note before you send to make certain that it is clear.
A very good use of email is to schedule an appointment
for technical conversations.
If you have a personal emergency, by all means send us email.
If other office hours are necessary, we'll
move some or post more.
This course is designed very much by Professor Geoffrey Brown. C335 will explore how programs written in a high level language are evaluated by a processor to control the physical world. In particular, we will use C to write programs that control "Goofy Giggles" - a 3 wheeled robot with an embedded processor, an infrared (IR) remote control, an audio system, and various sensors. In the process we will touch topics covered in a number of subsequent CS classes including compilers, operating systems, computer architecture, and digital design. It's obvious that we will be skimming the surface of these topics; for example, we will examine what a compiler and its associated tools (assembler, linker) do in some detail, but not how they are implemented to perform their function. Our goal is that at the end of this course every student will be able to explain, in technically accurate manner, the path from program to I/0 and will be proficient in using one representative set of tools to write programs to control a defined physical world - Goofy Giggles. The progression of experiments introduces embedded system programming, programmed I/O, IR communications, PWM motor control, A/D based sensors, interrupts, and DMA.
| Week | Monday | Wednesday | Lab |
| 1, Jan7 | Intro, UNIX | Unix Shell/C |
Shell/Editor Tutorial
due Jan 17-18 |
| 2, Jan14 |
C / Make
HW1 due Jan. 23 | Make/Data Repr. |
C/gdb
due Jan. 24--25 |
| 3, Jan21 | Martin Luther King, Jr. |
Numbers
HW2 due Jan. 30 |
Numbers
due Jan. 31--Feb. 1 |
| 4, Jan28 | Numbers |
LPC computer
HW3 due Feb. 6 |
Goofy can C.
due Feb. 7--8 |
| 5, Feb4 |
ARM Instruction Set
Sec. 2.0--2.3, Chap. 3 |
ARM Instruction Set
Chap. 3 HW4 due Feb. 13 |
Lights and Switches
due Feb. 14--15 |
|
6, Feb11
Career Fair Feb12 |
EXAM
Career Fair Feb12 |
Embedded Prog, Communication to Goofy
HW5 due Mar. 3 |
Motors and Sound
due Feb. 21--22 |
| 7, Feb 18 | Embedded Prog |
Goofy IR reception
|
IR Decoder pt. 1
due Feb. 28--29 |
| 8, Feb25 |
More on IR C to Assembly | C assembled |
IR Decoder pt. 2
due Mar. 6--7 |
| 9, Mar3 |
Assembly optimization
Exercise due: HW5 HW6 due Mar. 24 | Assembly optimization |
IR Decoder pt. 3
due Mar. 20--21 |
| Mar10 | recess | recess | Goofy can see. |
| 10, Mar17 | Interrupts | Interrupts |
GG Resurrection
due Mar. 27--28 |
| 11, Mar24 | Interrupts | TEST |
Drive by wire
due Apr. 3--4 |
| 12, Mar31 | Logic/Adders | Logic/Adders |
Interrupts
buttonmain.c main-lec.c due Apr. 10--11 |
| 13, Apr7 | Processor as Interpreter |
Processor as Interpreter
Bring 12 copies of this sheet. |
Hi Jack! Attacking the OS due Apr. 24--25 |
| 14, Apr 14 | Processor as Interpreter | The Memory Hierarchy; read textbook Chap. 14.1--14.3. | work |
| 15, Apr 21 | Array access | Superscalar Processing | Final reports due |
| 16, Apr 28 | study | study |
May 2 FINAL EXAM 12:30-2:30pm With prior arrangements, one can start as late as 2pm. |
![]() |
![]() |
![]() |
![]() |
|
![]() |
|
Page Owner: David S. Wise
Last Modified: 2008 January 5 1am |