ECE 3362- 001, ECE 3362-002 Digital Design Using Micro-Controllers Fall 2014
ECE3362-001 MWF 10:00 - 10:50 am, Room: EE 222
ECE3362-002 TuTh 12:30 - 1:50 pm, Room: EE 118
Catalog Data: ECE 3362: Digital Design Using Microcontrollers (3:3:0).Prerequisite: ECE 1305, ECE 2372. Advanced digital systems design. Assembly language programming, interfacing, and applications of microcontrollers.
Textbook: MSP430 Microcontroller Basics, John H. Davis, Elsevier, 2008, ISBN: 978-0-7506-8276-3.
Reference: Datasheets and examples will be posted on Blackboard
Instructor: Dr. Michael Helm, michael.helm@ttu.edu Office: EE 210 Class webpage: via Blackboard Office Hours: TBD, will be provided later
Objectives/Outcomes: Upon completion of this course students should be able to analyze and design both hardware and software aspects of digital systems using microprocessors and microcontrollers. The students will be able to write and debug assembly language programs. The students will be able to analyze and design systems with real-time control.
Prerequisites by topic: 1. Combinational logic design, Boolean Algebra 2. SSI, MSI, and LSI circuits and applications 3. Sequential machine fundamentals
Topics: 1. Micro-Controllers versus hard-wired logic 2. Mathematics of computers and elementary computer operations 3. Introduction to the MSP430 Micro-Controller Family 4. LaunchPad (Evaluation Board) familiarization 5. Input/output using ports of the MSP430 6. Transfer, arithmetic and logic instructions 7. Branches, stacks, and subroutines 8. Execution speed and Real-Time Control 9. Assemblers and simulators 10. Hardware configuration, resets and interrupts 11. Timing and Pulse Width Modulation (PWM) system 12. Use of Analog to Digital system 13. Function and use of the Serial communication systems 14. Tests and reviews
Projects: Several programming projects that will use the LaunchPad bd and Experimenters bd will be assigned.
Attendance: Is expected. Students are responsible for all material and assignments covered during class time, including any quizzes. Quizzes are generally not announced in advance and may occur at the very beginning of class. Late arrivals forfeit the right to take quizzes. University policy provides for certain excused absences for specific reasons.
Important Note There will be no make-ups for exams. Projects and homework will not be accepted after the due date and time. Start early on your projects to avoid problems. There will be a single one-time optional replacement project at the end of the semester which can replace exactly one earlier project grade.
Academic Integrity is required. Turning in project assignments which are clearly directly plagiarized from another student will result in a zero grade for that assignment for all students involved and repetition of such activity can and will result in F grade for the class.
Contributions to professional component:
This course prepares students for engineering practice through design experiences in the classroom. This course also includes further experience in algorithms, computer hardware and assembly language programming. This course includes engineering topics and engineering design.
Expected Learning Outcomes: Upon completion of this course, the students will be able to:
1. Analyze and design microcontroller based systems. 2. Understand the engineering tradeoffs between HW and SW in a microcontroller based system. 3. Understand different types of microprocessor and microcontroller architectures. 4. Be able to demonstrate SW control of timing, and use of interrupt based designs. 5. Be able to demonstrate manipulation of registers, memory, and I/O in a microcontroller.
Methods of Assessment of Learning Outcomes
Multiple student projects using the Development Boards. Written exams and quizzes.
Expected schedule for MWF section, TuTh section will cover same material during same week, TuTh classes will have exams on Thursdays (specific dates and topics subject to change)
Aug 25 M Intro to microcontrollers, dedicated HW vs uC, embedded systems Aug 27 W Microcontroller model vs Microprocessor, Harvard vs von Neumann architecture Aug 29 F Program Counter, Fetch-Decode-Execute process, register operations, register set, simple register operations
Sep 1 M Class Holiday Labor Day Sep 3 W PORT concept in uC, I/O, direction control, sink/source limits, intro to Assembly Language Sep 5 F Memory Map and use of SW simulator and IDE, basic Input/Output (I/O), simple addressing modes
Sep 8 M Structure of an Assembly Language program and simple Add, Subtract, and data manipulation Sep 10 W Memory access methods and addressing methods, pointers Last Drop Day with no academic penalty Sep 12 F Loops and conditional instructions
Sep 15 M Overflow and underflow, limits of 16 bit registers, 2s comp and unsigned ops, shift operations, Boolean Logic operations, status register and its flags Sep 17 W Subroutines and operation of the stack, RAM variables and debugging Sep 19 F Stack Pointer, and stack operations
Sep 22 M Advanced simulation, debugging, and other IDE topics Sep 24 W MIDTERM EXAM Sep 26 F Bit Test and Bit Set/Clear instructions
Sep 29 M Advanced Digital I/O and SW based timing loops, executions times Oct 1 W Arrays and other table based memory structures Oct 3 F More table structures and arrays, pointer and indexed pointer addressing, advanced table structures
Oct 6 M Multiplexing Oct 8 W Analog to Digital Converter, sensors, polling based approach Oct 10 F Analog to Digital (A/D) converter
Oct 13 M Analog to Digital (A/D) converter Oct 15 W Interrupts Oct 17 F Interrupts
Oct 20 M Interrupt driven SW design Oct 22 W MIDTERM EXAM Oct 24 F Timers
Oct 27 M Timers Last Drop Day Oct 29 W Timers Oct 31 F Clocks
Nov 3 M Interrupts for real-time operation Nov 5 W Simple serial communications Nov 7 F Advanced serial communications
Nov 10 M PWM Nov 12 W Use of C language Nov 14 F Use of C language
Nov 17 M Use of C language Nov 19 W Use of C language Nov 21 F MIDTERM EXAM
Nov 24 M Advanced Topics Nov 26 W No class Nov 28 F No class
Dec 1 M Advanced Topics Dec 3 W Last class day, Wrapup of final topics
Dec 6 S Final Exam (comprehensive) Section -002 (12:30 pm TuTh section): Saturday Dec 6th, 1:30 pm to 4:00 pm Dec 9 T Final Exam (comprehensive) Section -001 (10:00 pm MWF section): Tuesday Dec 9th, 7:30 am to 10:00 am
Students with disabilities
Any student who, because of a disability, may require special arrangements in order to meet the course requirements should contact the instructor as soon as possible to make any necessary arrangements. Students should present appropriate verification from Student Disability Services during the instructors office hours. Please note instructors are not allowed to provide classroom accommodations to a student until appropriate verification from Student Disability Services has been provided. For additional information, you may contact the Student Disability Services office at 335 West Hall or 806-742-2405. I would appreciate hearing from anyone who has a disability that may require special accommodations. I am sure we can work out whatever arrangements are necessary. Please see me during my office hours.
Exam and Quiz Policy
Quizzes and Exams including the final exam are of limited time duration. Once you have started a quiz or exam, if you leave the room for any reason you have forfeited all rights to continue work on the exam. No use of computers or cell phones or any other mechanism supporting communication with other parties are allowed during the exam. This policy will be strictly enforced!
Programming Projects
There will be several projects during the semester. Each of these is an individual project. Students are welcome to make use of the example programs provided by the instructor, but if such material is used directly or with only minor modifications it must be referenced and attributed to the original source in the program header. Failure to do so will result in a grade penalty. Once some basic foundations have been established, projects will begin at the rate of about one every 2 weeks, typically about 6 or 7 projects per semester with one optional one-time replacement project in case of a missed project or low grade project. Projects are graded aggressively for functionality, structure, header, comments, and correct filename format. Projects which wont assemble or compile as turned in will receive a grade of zero. Projects which have no functionality will receive a grade of zero.