ESET 369 Embedded Systems Software, Fall 2017 Syllabus Contact Information: Professor: Dr. Byul Hur Office: Fermier 008A Telephone: (979) 845-5195 FAX: E-mail: byulmail@tamu.edu Web: rftestgroup.tamu.edu Teaching Assistant: Kai He Office: Telephone: FAX: E-mail: kaihe@tamu.edu Web: Class Period and Location: Monday, Wednesday, and Friday, 9:10 am - 10:00 am, Thompson Hall 122 Lab Period and Location: Friday 3:50 pm - 6:30 pm, Thompson Hall 101A (Section 501) Monday 11:10 am - 1:50 pm, Thompson Hall 101A (Section 502) Office Hours: Monday, Wednesday, and Friday, 10:10 am - 11:00am, Fermier 008A, or by appointment. Teaching Assistant / Lab Instructor: Kai He Course Description: A study of the technical aspects of embedded computer software systems, with emphasis on embedded real-time systems, programming techniques and development methodologies. This course will cover various aspects of the embedded systems in both hardware and software concepts and principles, microcontroller applications, and real-time operations system concepts throughout this course. Course Sequence Goals: Develop understanding of the technical aspects of embedded systems including Hardware and Software methodologies, Advanced C and Assembly programming techniques, and Embedded operating system concepts. At the end of this course, students should be able to do the following things: (1) Write C language programs for microcontrollers, (2) Design C programs for microcontroller systems, (3) Design an interface between a microcontroller and a peripheral device, (4) Test and debug microcontroller hardware and software systems, and (5) Document microcontroller system designs Prerequisite: ESET 349 with a grade of C or better; completion of ENGL 104, MATH 151, MATH 152, CHEM 107 and CHEM 117, and PHYS 218 with a grade of C or better; junior or senior classification in electronic systems engineering technology. Textbook: (Required) An Embedded Software Primer, D. E. Simon, Addison-Wesley MSP430 Microcontroller Basics, Davies, J. H. Davies, Elsevier (Reference) ARM Assembly Language - Fundamentals and Techniques, W. Hohl, CRC Press Exam Dates: There will be one mid-term exam and one final exam. While tentative dates are included in the syllabus, the actual dates will be announced in class. The final exam date will be given by the University.
Midterm Exam: October 9th, 2017 (Monday) Final Exam: December 11th, 2017 (Friday) Laboratory: All laboratory work except Lab0 must be completed to meet the minimum requirements for a passing grade in this course. Only Lab0 will not be included on your total lab points. You must pass the all labs except Lab0 in order to pass this course. You can pass the labs by earning equal or higher grade than C on Lab Performance and Lab report. Any missed lab will result in a failing grade this course. Later in this course, the instructor may give a chance by assigning one take-home extra lab. This extra lab may make up one missed lab. However, it is completely up to the instructor whether this extra lab would be available this semester in this course. While students are working in the laboratory, they should keep and remember Laboratory safety rules It is recommended to use your own laptop for your lab assignments. However, there are a few PCs available for you to use in the laboratory. When you choose to use the PCs in the laboratory for your lab session, it is not guaranteed that these PCs are perfectly ready for your lab session and you may be ended up experiencing unexpected difficulties due to these PCs. (Note) Please, do not blame on the instructor for the problems of PCs in the laboratory, but you can contact TAMU/ETID IT to resolve your problem. Term Project: While the tentative date is included in the syllabus, the actual date will be announced in class Term Project Due: December 4th, 2017 (Monday) The term project is your opportunity to demonstrate your skills learned throughout this course. The term project can be done in a group of two students, or you can choose to do it individually. Your term project will be evaluated by the overall work and performance for the term project. Students who worked in a group for the term project require to report each member s contribution as percentage (Max: 100% per each student), which will be included in the grading. You must pass the Term project in order to pass this course. Attendance: Attendance is required, and only documented university approved absences will be allowed. The university guidelines on attendance can be found the following link: http://student-rules.tamu.edu/rule07 For lectures, attendance will be checked once or twice per week during the classes. Students who missed the roll call and who came late to the class will be mark late, which will result in deduction of the attendance points. These students who are late to the class should report to the instructor right after the end of the class. Otherwise, their attendance will be remained as absent. For lab sessions, lab quizzes can be used as attendance check. Later in this course, there will be Term Project Preparation Sessions. These are optional help sessions for students. Attendance for the term project preparation sessions is recommended but not required. The first week lecture class attendance will be checked but will not be included in your grading calculations.
Late assignments or reports: You will receive an additional points deduction due to late submission penalty. The late assignment or report is only acceptable within 24 hours past its deadline. Any assignment or report submission past 24 hours of its deadline will not be considered nor graded. It results zero point on the assignment or the report. Grading Policy: Your course grade will be based on the following tentative point distribution: Midterm Exam 20% Final Exam 25% Homework 10% Laboratory 20% Term Project 15% Quiz and Attendance 10% Total 100% Your final grade will be determined by the total percentage as follows: A: 100% 90%, B: 89% 80%, C: 79% 70%, D: 69% 60%, F: Below 60% (Round to the Nearest One) Academic Integrity: "An Aggie does not lie, cheat, or steal or tolerate those who do." For questions about honor code violations or the review/appeal process see: http://aggiehonor.tamu.edu American with Disabilities (ADA) Policy Statement: The Americans with Disabilities Act (ADA) is a federal anti-discrimination statute that provides comprehensive civil rights protection for persons with disabilities. Among other things, this legislation requires that all students with disabilities be guaranteed a learning environment that provides for reasonable accommodation of their disabilities. If you believe you have a disability requiring an accommodation, please contact Disability Services, currently located in the Disability Services building at the Student Services at White Creek complex on west campus or call 979-845-1637. For additional information, visit http://disability.tamu.edu. Tentative Schedule of Topics: Weekly Date, (No. of Classes) 8/28 (2) Topics: Embedded Systems and MSP430 Assembly Programing (Textbook) Ch. 2, Hardware fundamentals for the software engineer Monday Lab session: N/A Friday Lab session: Lab 0 9/4 (3) Topics: MSP430 Assembly Programing and MSP430 General Purpose I/O (Textbook) Ch. 2, Hardware fundamentals for the software engineer Monday Lab session: Lab 0 Friday Lab session: Lab 1
9/11 (3) Topics: MSP430 Assembly Programing, MSP430 General Purpose I/O, and Timers (Textbook) Ch. 3, Advanced Hardware Fundamentals Monday Lab session: Lab 1 Friday Lab session: Lab 2 9/18 (3) Topics: Timers and S/W PWM (Textbook) Ch. 3, Advanced Hardware Fundamentals Monday Lab session: Lab 2 Friday Lab session: Lab 3 9/25 (3) Topics: Timers, S/W PWM, and LCD (Textbook) Ch. 4, Interrupts Monday Lab session: Lab 3 Friday Lab session: Lab 4 10/2 (3) Topics: LCD, ADC theory, and Review (Textbook) Ch. 4, Interrupts Review for Midterm Exam Sample Midterm Exam Solution Monday Lab session: Lab 4 10/9 (3) Midterm exam, October 9, 2017 (Tentative) Topics: ADC, MSP430 ADC modules (Textbook) Ch. 5, Survey of Software Architectures Midterm Exam solution Monday Lab session: No Lab Friday Lab session: Lab 5 10/16 (3) Topics: H/W PWM, DC motor, H-bridge driver (Textbook) Ch. 5, Survey of Software Architectures Monday Lab session: Lab 5 Friday Lab session: Lab 6 10/23 (3) Topics: Servo motor and Serial Communications (Textbook) Ch. 6, Introduction to Real-Time Operating Systems Monday Lab session: Lab 6 Friday Lab session: Lab 7
10/30 (3) Topics: Serial Communications UART and RS232 (Textbook) Ch. 6, Introduction to Real-Time Operating Systems Monday Lab session: Lab 7 Friday Lab session: Lab 8 11/6 (3) Topics: Serial Communications I2C and SPI (Textbook) Ch. 7, More operating system services Monday Lab session: Lab 8 Friday Lab session: Lab 9 11/13 (3) Topics: Topics: Timers (Capture), IR sensor & decoding (Textbook) Ch. 7, More operating system services Monday Lab session: Lab 9 Friday Lab session: Term Project Preparation Session 11/20 (1) Topics: TI RTOS and examples (Textbook) Ch. 8, Basic Design Using a Real-Time Operating System No class, Thanksgiving Holiday (23, 24) No class, Reading day (22) Monday Lab session: Term Project Preparation Session 11/27 (3) Topics: TI RTOS examples, Embedded system security, and More embedded system examples (Textbook) Ch. 8, Basic Design Using a Real-Time Operating System Monday Lab session: Term Project Preparation Session Friday Lab session: Term Project Preparation Session 12/4 (2) Term Project Presentation on December 4, 2017 (Tentative) Redefined day, Friday classes (4) Review for Final Exam Sample Final Exam Solution (Ref.) Redefined day, Thursday classes (5) (Ref.) No class, Reading day (7) Monday Lab session: No Lab 12/11 (-) Final Exam, December 11, 2017