ECE 4760 deals with microcontrollers as components in electronic design and embedded control. The course is taught by Bruce Land, who is a staff member in Electrical and Computer Engineering and Neurobiology and Behavior.
Final Projects | Policy | Assignments | Staff and Schedule | Links
ECE 4760 thanks:
- INTEL for their donation of laboratory computers.
- ATMEL for their donation of development hardware and microcontrollers.
- FREESCALE for their donation of sensors for final projects
Assignments
Homework | Lab exercises | Reading
Homework
- 0. Required Reading for lab 0
- 1. Due with lab 1 writeup
- 2. Due with lab 2 writeup
- 3. Due with lab 3 writeup
- 4. Due with lab 4 writeup
- 5. Due in lecture March 10
- 6. Due with lab 5 writeup
Lab Assignments
- 0. Introduction to the hardware and software (week of Jan 28)
- 1. Capacitance measurement (week of Feb 4)
- 2. DTMF dialer with voice feedback (weeks of Feb 11,18)
- 3. Security system (week of Feb 25)
- 4. Video Game (weeks of Mar 3, 10)
- 5. Digital thermometer and fan controller (week of Mar 24)
- 6. Design project (weeks of March 31, April 7, 14, 21, 28).
Old Lab exercises. See policy page for writeup examples. Possible new labs.
Reading Assignments
Week of Jan 21:
- Mega32 datasheet and the essential page 297 register summary
- Class Overview and Policy
- Command line debugger
- Optional--Text Chapter 1 and 2.1-2.7 and Appendix B
- Notes on ESD How to avoid killing chips (Microchip)
- Mega32 Timers
- CodeVision C user manual
- Optional--Text Chapter 2.8-2.11
- Direct Digital Synthesis using the links at the bottom of the page (for instance DDS)
- D/A on Mega32
- Video Generation with AVR.
- Mega32 ADC
- Fixed point math and filters
- Optional--Text Chapter 3
- Synthetic Serendipity (IEEE Spectrum, Volume: 41, Issue: 7, Year: July 2004) Off-campus link
- Will programmers become obsolete? ( The Blacksmith and the Bookkeeper Part 1), Part 2, Part 3
- The Ariane 5 explosion
- Patriot Missile Failure
- Medical Devices: Therac 25
- An Investigation of the Therac-25 Accidents
- Therac-25 (MIT)
- IEEE code of ethics
- Ethical Issues in Empirical Studies of Software Engineering
- Teaching engineering ethics with case studies
Schedule and Staff
-
Lecture: MWF 1010-1100 Phillips 101
-
Lab Sections (238 Phillips--Digital Lab):
DayTimeTAMonday1630-1930Willie, ChrisMonday1930-2230MorganWednesday1330-1630MarkWednesday1630-1930SamThursday1330-1630RobFriday1330-1630Adrian -
Office Hours (in lab) :
-
DayTimeStaffMonday, 28 Apr0900-1230, 1630-2400Bruce, Willie, Morgan, ChrisTuesday, 29 Apr0000-0130, 1630-2400Rob, Willie, ChrisWednesday, 30 Apr0000-0130, 0900-2400Chris, Bruce, Sam, ChrisThursday, 1 May0900-2400Bruce, Adrian, Mark, ChrisFriday, 2 May0000-0130, 0900-1630Chris, Bruce
- Bruce Land, 246 Mudd Hall (MAP) , 4-4346, BRL4@cornell.edu
- Amato, Mark: mra29
- Dolen, Chris: cd247
- Huang, Willie: wh84
- Jones, Morgan: mdj23
- Lee, Sam Hsiang Wei: hl336
- Mak, Tytus: tm253 (grade records)
- Wong, Adrian: aw259
- Zimmerman, Rob: rmz8
Links
Cornell | Atmel | Design | Comm | Eng&society | Other courses
- Cornell staff-maintained pages
- Final Projects and Ideas for Microcontroller projects
- Mega32 Prototype board and useful parts list
- PCB surface-mount adaptors
- Organizing your programs
- A simple keyboard monitor
- RS232 serial communications with AVR
- Serial Peripheral Interface (SPI)
- Mega32 A/D and D/A
- Video Generation with AVR.
- Speech generation on a Mega32.
- A preemptive, multitasking OS
- Codevision Command line debugger
- Fixed point math
- DSP on mega32
- Timers on mega32
- Debugging the Mega32 and STK500
- Wireless Protocol by Meghan Desai
- Interactive Mega32 debugger by William Goodrich
- Keypad library by Richard West
- COMATOS by Ben Greenblatt
- COMATOS optimizations by Nick Liu
- Digital Oscilloscope by Reid Gurnee
- BUG: Hexapod Walker by Nidhi Kalra
- Mixed Signal AVR simulator by Engin Ipek
- Slotcar -- A possible ECE476 motor lab by John Stang
- Wireless ECG by Mathew David Melnyk and Joshua Marc Silbermann
- Embedded Mega32 webserver by Jeremy Tzeming Tan
- Wireless Retrieval of Vital Signs via RFID by Daniel Golden
- Electric field animal presence detector by Catherine Kung
- Improved webserver code by Eric Mesa and Richard West -- report
- A MESSAGE PASSING INTERFACE FOR MULTIPROCESSING on Mega32 By Kalim Moghul
- Zigbee Wireless network By Scott Bingham and Yunfan Donald Zhang
- Full list of ECE491 and ECE690 projects (includes non-microcontroller projects)
- Atmel Software and Data Sheets
- AVR Studio Guide
- STK-200 Users Manual STK-200 schematic STK-200 Programming Dongle schematic (Claudio Lanconelli)
- STK-500 data sheet
- STK-500 schematic
- Atmel 8-bit cpus
- AVR Instruction Set
- AT90S1200 data sheet pdf : AT90S4414 data sheet pdf : AT90S 4414/8515 summary data sheet pdf
- Mega163 data sheet
- Mega32 full data sheet ; Mega32 summary
- AVR Dragon
- Atmel MCU design information
- General information
- AT90/Mega MCU summary (very nice graphical interface)
- Atmel Application notes
- AVRFreaks
- AVR web ring
- AVR links page.
- Microcontroller.net
- AVRlib -- C-Language Function Library for Atmel AVR Processors by Pascal Stang
- C Tutorial (Stanford)
- AVRora simulator
- Atmel C compiler information
- CodeVision C vendor
- CodeVision User's manual
- CodeVision C maillist
- CodeVision C Tutorial
- GNU Development Environment
- C Language Reference
- Embedded C snippets Bob Stout's math snippets
- C reference material (AEP438, Computational Engineering Physics)
- Other languages
- FORTH compilers
- pFORTH
- Forth for AVR microcontrollers
- Forth links
- PFAVR -- An ANS Forth Implementation for the Atmel AVR
- Forth Interest Group
- attoBASIC
- BASIC and C resouirces (Ron Nicholson)BASIC written in C BASIC written in C
- BASIC written in obfuscated C and another one
- Pymite -- Python for microcontrollers
- General information
- Atmel MCU realtime operating systems
- Larry Barello's AVR, RTOS and Robotics
- AVR Minithreads
- microC/OS II
- Ultimate Realtime Operating System I.
- Salvo (Pumpkin Inc)
- PR_RTX (Progressive Resources LLC)
- embOS (Segger)
- Proc (Nilsen Elektronikk)
- NutOS (ethernut)
- XMK FreeRTOS aOS and the local copy:
- Experiments with a preemptive, multitasking OS
- FlaxOS
- TinyRealTime
- General design information
- Proverbs and quotations
- microcontroller.com
- ASCII codes and VT100 (hyperterm) escape codes
- Embedded Systems Magazine.
- Circuit Cellar magazine
- Nuts and Volts magazine
- Tom Loredo's Electronics
- Dick Cappels' Project Pages (LCD, RF and attoBASIC)
- Alan Parekh's projects
- www.mikrocontroller.net
- Beyond Logic
- How To Write Unmaintainable Code
- Stepping down to 8-bits
- The case of the crashing 68000
- Ganssle Group
- Embedded Muse
- Articles on design
- Debouncing contacts
- Firmware Standards Manual
- Watchdog Timers
- Commenting Firmware
- How to Become an Embedded Geek
- Floating Point
Approximations
- Video Chips
- Using the MC6847 Video Controller (MIT)
- MC6847 data sheet
- ELM data sheet
- NTE879 RGB encoder
- SAA1101 synch generator
- TDA8501 PAL/NTSC encoder
- MC13077 encoder
- AD722 encoder
- LM1881 sync separator (national) and EL1881 synch separator (intersil)
- TV tutorialsVideo DVM using the AT90S1200.
- Video generation on 8515
- PIC-Pong SX Microcontroller
- Video Display
- Software generated video
- STIGLitz fast video by thread integration
- TinyGL graphics package
- AVRcamColor video (PIC version, SX version, AVR version)
- Color LCD Serial LCD (crystalfontz) Serial graphics LCD (MicroEngineering labs)
- Using graphics LCD (Dincer Aydin)
- KS0108 Controller and code
- Practical Analog Design (from Circuit Cellar)
- Guide to instrumentation amplifier design (analog devices)
- Single power supply opamp circuits (TI)
- Linear circuit collection (Linear Technology)
- Micropower circuts (Linear Technology)
- Single supply amplifier (EDN)
- Charlieplexing LEDs, and another
- Charlieplexing switches
- Discover Circuits
- Analog-input circuit serves any microcontroller (EDN magazine12/20/2001)
- National Semiconductor Texas Instruments Dallas Semiconductor/Maxim
- Field-programmable Analog Arrays (FPAA)
- Numerical Recipes in C
- Matlab (mathtools.net)
- Intro to DSP
- DSP applets
- DSP on MEGA32
- Bob Stout's math snippets
- Fixed Point arithmetic
- CORDIC (COordinate Rotation DIgital Computer)
- CRC error detection and code
- Direct Digital Synthesis (of sinewaves) by Martin Pechanec
- Direct Digital Synthesis Tutorial Osicom
- Direct Digital Synthesis Analog Devices
- Direct Digital Synthesis (Jesper)
- DDS on AVR (ZL1BPU)
- Scale-invariant nonlinear digital filters (EDN, 1/24/2002)
- Floating Point coprocessor for microcontrollers
- Fixed point math (David J Berube)
- iAppli - Fixed Point Math Routines
- An Introduction to Fixed Point Math
- Walsh/Hadamard transforms
- Fast Walsh Transform in Matlab
- Fast Tranforms ( Jörg Arndt)
- Fast, in-place WHT and in C
- Fixed Point FFT
- AVR spectrum analyzer
- Karplus-Strong string synthesis (matlab simple string, matlab w/input filter)
- Musical instrument physical modeling and synthesis
- Physical synthesis
- Center for computer research in music and acoutics
- Digital Sound Synthesis
- Sinewave synthesis (Columbia)
- Sinewave synthesis (Haskins)
- LPC (Klatt)
- Linear Predictive Coding (connexions)
- Speech Synthesis
- Speech Compression
- Interactive Multi-Lingual Demo (ATT)
- PICtalkerFlite: a small, fast speech synthesis engine (CMU)
- Speech chipsVoice recognition module (Sensory Inc)
- DoubleTalk voice synthesizer (RC systems)
- TextSpeak (digital Acoustics)
- FreeTTS (sourceforge)
- Digital recorder chips (Eletech)
- Speech recognition ( University of British Columbia, ECE341, aimed at embedded design )
- VOICEBOX (Imperial College UK, written in matlab)
- IBM ViaVoice ADPCM (microchip.com)
- ADPCM (intel) local copy
- Comparison of PID Control Algorithms
- Digital Control Systems
- PID Tutorial in Matlab
- DC motors
- Motor overview
- Stepper Archive
- Generate stepper-motor speed profiles in real time
- Control of Stepping Motors
- Introduction to Stepper Motors
- ServoMotor description
- RC servos (dragonfly)
- RC servos (acroname)
- Servo timing
- NanoMuscle actuators
- Tiny stepper (nidec copal)
- Piezoelectric motor (New Scale Tech)
- Tiny motors (Didel)
- PCBs with SMT Components
- Prototyping with Surface Mount Devices
- Prototyping SMD (Pegasus Systems
- SMT Magazine
- Energy-Aware Wireless Microsensor Networks
- Validation of a wireless modular monitoring system for structures
- Sensor Portal
- Useful Sensors for biology labs
- LEDs as sensors and more LED multitouch arrayHuman interface projects
- Freescale (Motorola) robot sensors
- Automotive sensors
- Mechatronics Resources (Colorado State)
- Mechatronics, IEEE/ASME Transactions on (For full text, go to Cornell Library links)
- Mechatronics, Elsevier (full text)
- Atmel balancing scooter
- Active Robots
- LED plethysmograph Fingerprint sensorGalvanic skin response Vital-signs monitor consumes less than 50µA
- Electromyography low cost pulsometer -- Circuit Cellar Magazine #186 January 2006
- Neural modeling on microcontrollers
- USB interface (ActiveWire)
- USB chips (Delcom)
- USB instruments (USBee)
- USB interface (TM1000)
- IgorPlug USB
- USB Host chipMAX3420 (maxim-ic.com)
- FTDI USB-UART
- AVR USB firmware Projects using AVRUSB
- Tiny web server (Siteplayer)
- Embedded web server (GeistTek)
- uIP Small TCP/IP
- uIP-AVR
- NTP server for AVR
- Web server in a RJ-45 housing (Lantronix)
- Linux box in a RJ-45 housing (NetSilicon, DigiConnect ME)
- Microchip ENC28J60 single chip ethernet (Datasheet)
- Mciroship TCP/IP stack
- WIZnet
- PicoServ miniature web server
- Wireless/RF/Radios
- RF transmitter/receiver and GPS (Laipac)
- RF trans/rec (Abacom)
- Tranceivers (Aerocomm)
- Zigbee proecessor CC2480 (TI)
- Packet radios and trans/rec (Radiometrix)
- Radios (Lemos International)
- Tranceivers (Radiotronix)
- application notes, wireless 101, antennas
- LinxRF -- tranceiver by Pascal Stang
- Digital Radio Mondiale
- Zarlink low powered implantable tranceiver
- Near field wireless
- ECMA-340 and a local copy. This is also ISO/IEC 18092:2004
- NFC forum
- PhillipsMelexis
- Aura
- Nokia
- Sony
- Zigbee.org
- Microchip stack for Zigbee protocol
- AtmelTranceiver (Chipcon)
- Module (MaxStream)
- XB24 (GridConnect)
- Ember
- Data over power line Noise Generation
- Engineering and society
- Standards
- IEEE standards home
- IEEE stds search
- IEEE standards
- Standards by technology
- Standards organizations
- ISO online
- IEEE code of ethics
- Software engineering code of ethics and professional practice
- Software engineering ethics resources -- Code cases
- Ethical Issues in Empirical Studies of Software Engineering
- Engineering Ethics Links
- Online Ethics Center -- Computers and Software
- Web Clearinghouse for Engineering and Computing Ethics
- 1992 NSF Engineering Ethics Case Report
- Numerical Problems Associated with Ethics Cases
- Ethics in Computing
- Applied Ethics in Professional Practice
- Engineering Ethics
- Teaching engineering ethics with case studies
- Online resources
- Off the shelve software in medical devices
- Medical Devices: Therac 25
- An Investigation of the Therac-25 Accidents
- We did nothing wrong!
- Motor Industry Software Relability
- Safe systems
- The Ariane 5 explosion and A Bug and a Crash
- Patriot Missile Failure
- The sinking of the Sleipner A offshore platform
- Some disasters caused by numerical errors
- Crash and burn and more by Jack Ganssle
- The Case of the Killer Robot
- Safety critical systems
- Topics in Dependable Embedded Systems
- Dependable Systems
- Embedded System Security
- FCC
- Understanding FCC regs for Low-power, non-licensed, transmitters
- What is Part 15?
- Part 15 RF devices
- PART 18--INDUSTRIAL, SCIENTIFIC, AND MEDICAL
- Part 68 -- connecting to the telephone system
- FDA
- GNU public license,
- List of approved licenses and OpenSource.org
- OpenCore including open source
- Atmel coresOpen hardware list
- Software Freedom Law Center
- US patent office
- Cornell Research Foundation
- BitLaw
- Electronic Frontier - IP online
- DOJ--cybercrime
- The Embedded Muse Will programmers become obsolete? ( The Blacksmith and the Bookkeeper Part 1), Part 2, Part 3
- Synthetic Serendipity (IEEE Spectrum, Volume: 41, Issue: 7, Year: July 2004) The Science behind the story
- Bad Human factors
- Human Factors in Programming Languages
- Enabling Technology for Users with Special Needs
- Human-Computer Interaction
- Interesting Human Factors Sites
- Human Factors Science
- IBM 1800 process control computer
- The History of the Microcomputer
- Computer History Museum
- A history of the microprocessor
- Great Microprocessors of the Past and Present
- Intel mcu comparisonIntel 4004 the first microcontroller Intel 8008
- MosTech 6502 (Apple II)
- Intel 8080Intel 8088 (First IBM PC)
- Chronology of Personal Computers
- Computer history
- Computer History Muesum
- Computer history in ECE
- Computer history at Cornell
- Relay Computer
- TinkerToy computer and a picture
- Digi-Comp I toy state machine 1963 (current vendor) images,
- DigiCompII and a Lego version of a marble-logic computer
- Turing Train Terminal
- A Unary Multiplier Wrapped in a Turing Machine Wrapped in a Train Set Inside WireWorld
- Wireworld computer
- Eniac Museum,
- Eniac story,
- Technical Report, ENIAC was announced on Feb 14, 1946
- Manchester Mark 1 1948
- Ferranti Mark 1 1951
- IBM 650 1953
- Bendix G-15 and computer museum 1958
- IBM 1620 1959
- Standards
- 74121 One-shot pdf 555 Timer pdf icm7211 LCD driver pdf ca3140 Op-amp pdf LM 741 Op-amp pdf
- DAC 0808 pdf
- Stanford EE 281
- Mech 143 Santa Clara University
- Mechtronics University of Wisconsin
- Madison
CTEC1630 Computer Systems Design - Robotic Systems Labratory, Stanta Clara University
- ECE
473 - System Design with Microcontrollers Oregon State
Site Stats
Year |
Page visits /year |
April 2000 to July 2002 |
50,834 |
July 2002 to July 2003 |
51,341 |
Jan 2004 to Jan 2005 |
55,905 |
Jan 2005 to Jan 2006 |
52,057 |
Jan 2006 to Jan 2007 |
59,019 |
Jan 2007 to Jan 2008 |
57,594 |
