This page is no longer in use for ECE4760!
Students should refer to the NEW PAGE
The material here uses PIC32 and is for reference only!
==============================================================
ECE 4760 deals with microcontrollers as components
in electronic design and embedded control. The course is taught
by Hunter Adams, who
is a staff member in
Electrical and Computer Engineering. The course is currently taught using PIC32MX processors.
Final Projects | Assignments| Links | Lectures s2021, f2017
Assignments Lab exercises | Reading | Policy
Homework and Final Project Proposal
- 1. Bird call synthesis Homework
- 2. Boids Homework
- 3. Helicopter Homework
- 4. Final project proposal
Lab Exercises
1. Bird Song Synthesizer -- Week 1 Aug30 -- Week 2 Sept 6 -- Week 3 Sept 13- 2. Boids! -- Week 1 Sept 20 -- Week 2 Sept 27 -- Week 3 Oct 4
- 3. 1-DOF helicopter -- Week 1 Oct 11 -- Week 2 Oct 18 -- Week 3 Oct 23
- 4. Design project --- Demo Dec 8 to 10---Report due on date specified by Cornell
--See policy page for writeup examples. Possible new labs.
Reading
- POLICY PAGE: This is the implicit contract you are agreeing to by taking the course!
- Picoscope Software users guide
- --- PIC32 specific manuals ------------ -------------------------------------------------
- PIC32 hardware manual sections (local copy of Full Manual -- HUGE)
- PIC32 Peripheral Libraries for MPLAB C32 Compiler (local copy)
- PIC32MX2xx datasheet -- Datasheet errors! Errata
- MPLABX IDE users guide
PIC32 I/O pin and Configuration bit details - Specific header p32mx250f128b.h for info only. The complier includes this for you
- PIC32MX1XX/2XX Interrupt Table 1, 2
- PIC32 interrupt IRQ names and vector names int_1xx_2xx.h for info only. The complier includes this for you
- --- ProtoThreads and Sean Caroll's Big board (SECABB) --------------------------------
- ProtoThreads on PIC32: background and current version
- Development Board page (including example codes for ProtoThreads 1.3.2)
General:
- Synthetic Serendipity (IEEE Spectrum, Volume: 41, Issue: 7, Year: July 2004) Off-campus link
- The Ariane 5 explosion
- IEEE code of ethics
- Ethical Issues in Empirical Studies of Software Engineering
- Student projects plagiarized
PIC32 Lectures (from Fall 2015, 2016, 2017) and PIC32 projects
AVR Lectures (from Spring 2012) and AVR final projects. (hackaday, hackedgadgets)
Old AVR-based home page (Fall 2014), Old Homework, Old Lab exercises.
Old PIC32 home page (Fall 2019)
Links Cornell | C-language | History
- PIC32 Staff Maintained
- Final Projects and Ideas for Microcontroller projects
- Lab supporting docs
- ProtoThreads on PIC32
- PIC32 Development boards
- Remote Access interfaces for remote teaching spring 2021 (Day Zero lab s2021)
- TFT LCD display
- Keypad
- Port Expander
- Fixed Point Arithmetic systems
- PLIB, GCC and assembler considerations
- PIC32MX250 peripherials
- Direct Memory Access (DMA) event table, block diagram (DMA weird machine)
- Input/output ports (I/O)
- Comparator
- Time ( timers, input capture, output compare, oscillators, RTCC)
- Serial Peripheral Interface (SPI)
- Inter-Integrated Circuit (I2C)
- Serial using UART (UART)
- Analog to Digital Converter (ADC)
- Charge Time Measurement Unit (CTMU)
- Real Time Clock (RTCC)
- Vref as a digital-to-analog converter (CVREF)
- Power Managment
- Interrupts on PIC32
- Interfaces
- Applications
- Software
- --------------------------------------
- PIC32 experiments
- DMA event table
- DMA block diagram
- -- PIC32 Student written --
- USB mass store for PIC32 -- Douglas Katz, Fred Kummer
NRF24L01 library for PIC32 -- Douglas Katz, Fred Kummer
Tahmid's Blog -- Syed Tahmid Mahbub
Port Expander (ZIP code) -- Sean Carroll
Small target board assembly -- Sean Carroll
Large target board assembly -- Sean Carroll - TFT, USB, Ethernet, Dev Boards -- Alex Whiteway
- PIC32 pinout email am859@cornell.edu for corrections
- USB -- Qinrong Yu
- WiFi using ESP8266 -- Mikhail Rudinskiy
- Development board -- Michael David Ross
- -- IP concerns --
- Plagiarized 4760 projects (2011)
- Plagerized 4760 projects (2015)
- C compiler information
- PIC32 standalone information
- PICKIT3 and PIC32
- PICKIT3 and PIC32
- PICKIT3 users manual
- Tahmid's dev setup -- Tahmid's blog
- MCP1702 3.3 volt LDO regulator (MCP1702-3302E)
- USB
- USB HID Class on an Embedded Device AN1163
- M-stack USB stack
- General Electronic Design
- Introduction to Circuits -- Thanks to Nicole for finding this.
- Circuits -- electric and electronic -- Digilent
- Animated circuit simulator -- very cool, easy to get started
- LTspice circuit simulator -- getting started
- Computer history
- Computer History Muesum
- Computer history at Cornell
- Relay Computer
- Digi-Comp I toy state machine 1963 (current vendor) images,
- Turing Train Terminal
- Wireworld computer, wireworld, wireworld
- Lego Turing Machine (details)
- Eniac Museum, Eniac story, Technical Report, ENIAC was announced on Feb 14, 1946
- Manchester Mark 1 1948
- Ferranti Mark 1 1951 --First commerically available computer
- IBM 650 1953 --First computer in ECE
- Bendix G-15 and computer museum 1958 --First computer I used (Bruce)
- IBM 1620 1959 --The only computer at my college in 1964
- IBM System/360 --The main computer at Cornell in 1968
- IBM 1800 --The first "embedded" computer I used 1969 at Cornell
- DEC GT-40 -- The first "lab" computer I used in 1975 at Cornell
- RP2040: (hardware manual)