|
Home |
|
EE443 Microcontroller BogazIcI UnIversIty Department of ElectrICal & ELECTRONIC EngINEERING |
|
Instructor: Assistant Professor Senol Mutlu BETA Lab, Tel: (212) 359-7442 e-mail address: senol.mutlu@boun.edu.tr Office Hours: At my office, by appointment. I have an open door policy. Lectures: Tuesday 12-1 p.m., Friday 11-1 pm at KBPCLAB. Lab, Monday 9-11 and 3-5 p.m. at Microprocessors Lab Credits: (3+1+0) 4 Teaching Assistant: To Be Determined (TBD) Course Description: This course aims to expose the students to analysis and design of microcontroller system software and hardware. Assembly language as well as C language programming skills for real-time applications and interfacing will be gained through the laboratory experiments. MC68HC912D60, 16 bit microcontroller of Freescale from HC12 family is used in the experiments. This microcontroller is on an evaluation board, M68EVB912D60. The experiments are about programming the microcontroller using Freescale’s Codewarrior and MCUEZ assembler, debugger and emaluator. These experiments will teach registers, addressing modes, instruction sets, branching, subroutines, memory structure, interrupts and background debugging mode of the microcontroller. Serial communication interface, analog to digital conversion unit, and timing unit of the microcontroller will be studied. Website: http://www.cims.ee.boun.edu.tr Your username is your student ID. Your initial password is also your student ID if this is the first time you are using it. Please change your password after the first time you logged in. Course info, some additional course material and your grades will be published on this website. Prerequisites: Digital design: gates, combinational and sequential circuits Programming fundamentals EE-140/CmpE-240: Digital design Recommended: CmpE-344: Computer Organization Textbook: MC68HC912D60 Technical Data http://www.freescale.com/files/microcontrollers/doc/data_sheet/MC68HC912D60.pdf?fsrch=1 CPU12 Reference Manual: M68HC12 and HCS12Microcontrollers http://www.freescale.com/files/microcontrollers/doc/ref_manual/CPU12RM.pdf Reference textbooks: 68HC12 microcontroller : theory and applications / Daniel J. Pack, Steven F. Barrett, Prentice Hall, c2002. (BU Library: TJ223.M53 P33 2002). Introduction to microcontrollers: architecture, programming, and interfacing of the Motorola 6812, Lipovski, G. Jack. San Diego: Academic Press, c1999. (BU Library: TJ223.P76 L57 1999). Embedded microcomputer systems: real time interfacing / Jonathan W. Valvano, Brooks/Cole, c2000. (BU Library: TK7895.E42 V35 2000). Literature Search Inspec and Compendex databases: Membership is required. Since the university is a member, these databases can be reached from computers on campus by following the link below from the library and choosing “Ei Engineering Village 2”: http://www.library.boun.edu.tr/OnlineVeritabanlari.phtml IEEE Xplore: All IEEE conference proceeding and journal papers can be reached from the following link: http://www.ieeexplore.ieee.org Membership is required. Again, this site can be reached from a computer on campus. US patents: Look for issued patent and also patent applications. http://www.uspto.gov/patft/index.html European Patents: http://ep.espacenet.com Digital Dissertations Full Text: You can search Ph.D. and Master thesis. It is not free but may be you can have view couple pages as preview. http://www.library.boun.edu.tr/OnlineVeritabanlari.phtml choose Digital Dissertations Full Text Laboratories: The purpose of laboratory experiments is to gain experience on registers, addressing modes, instruction sets, memory structure, interrupts, background debugging mode, serial communication interface, analog to digital conversion unit, and timing unit of the microcontroller. Codewarrier and MCUEZ assemblers, debuggers and emulators will be used to write assembly and C codes intended for MC68HC912D60 16-bit microcontroller of Freescale’s HC12 family. Lab 1: Introduction to CodeWarrior and Simple Assembly Code to Read a Switch and Turn on a LED Lab 2: Assembly Code for Sorting and Arithmetic Operations Lab. 3: Understanding and Using Stack and Subroutines: Sorting Example and turning on LEDs with a sequence using subroutines and stack. Lab 4: Interfacing PS/2 Keyboard to MCU: Synchronous Serial Communication Example Lab 5: Pulse Generation with Adjustable Pulse Width and Period Using the Timer Module and Interrupts Lab 6: A Simple Voltmeter Using Analog to Digital Conversion Unit of the Microcontroller Lab 7: Using the Serial Communication Interface of the Microcontroller and Introduction to C Programming Laboratory Resources: Microprocessor laboratory will be used to develop, run and test assembly and C codes for the experiements. Laboratory has 13 PCs loaded with Freescale’s Codewarrior and MCUEZ software. A limited version of Codewarrior is available at: http://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=01272600610BF1 Each PC is connected to M68EVB912D60, an evaluation board with MC68HC912D60 microcontroller. Serial Debugging Interface board can be used to program the microcontroller and do hardware debugging. Midterms: The approximate dates of the midterms in this course are indicated in the course outline. It will be held in class, and will be about 2 hours long. Final Project: The final project will take place during the final examination period. A group of three students will form a project team. Each team is going to propose a project topic that needs to be approved by the instructor. Grading Policy: Course grades will be assigned according to the following grading formula. Please note that this formula is tentative; students will be informed of any major changes. Labs..................................................... 35% Midterms .............................................. 30% Final Project:......................................... 35% In most cases students will be made aware of the basic statistics (mean, median, and standard deviation) for each assignment. Course Outline (Tentative)
|
|
Mo. |
Date |
Material Covered |
Labs |
Comments |
|
Sep. |
23 |
Setting Class Time & Location, Administrative Information, Introduction, Motivation (1 hr) |
|
|
|
Sep |
26 |
Basic Microprocessor Architecture and the 68HC12 (2 hrs) |
|
|
|
September 30-October 3 Ramadan Holiday |
||||
|
Oct. |
7 |
The Instruction Set |
|
|
|
|
10 |
The Instruction Set |
|
|
|
|
14 |
Addressing |
|
|
|
|
17 |
Addressing |
|
|
|
|
21 |
Branching, Stack, Subroutines |
Lab. 1 |
|
|
|
24 |
Branching, Stack, Subroutines |
|
|
|
|
28 |
Assembly Language Programming |
Lab. 2 |
|
|
28 October Tuesday afternoon and 29 October Wednesday Republic Holiday |
||||
|
|
|
Midterm I (2 hrs) |
|
|
|
|
31 |
Assembly Language Programming |
|
|
|
Nov. |
4 |
Exceptions-Resets and Interrupts |
Lab. 3 |
|
|
|
7 |
Exceptions-Resets and Interrupts |
|
|
|
|
11 |
Exceptions-Resets and Interrupts |
Lab. 4 |
|
|
|
14 |
Exceptions-Resets and Interrupts |
|
|
|
|
18 |
Timer Module |
Lab. 5 |
|
|
|
21 |
Timer Module |
|
|
|
|
25 |
Timer Module |
|
|
|
|
28 |
Timer Module |
|
|
|
Dec. |
2 |
Analog to Digital Converter Module |
|
|
|
Dec |
5 |
Analog to Digital Converter Module |
|
|
|
|
|
Midterm II (2 hrs) |
|
|
|
Dec 8, 11, Monday, Thursday, Sacrifice Holiday |
||||
|
|
16 |
Multiple Serial Interface Module |
Lab. 6 |
|
|
|
19 |
Multiple Serial Interface Module |
|
|
|
|
23 |
Multiple Serial Interface Module |
Lab. 7 |
|
|
|
26 |
Introduction to C Programming |
|
|
|
|
30 |
Introduction to C Programming |
|
|
|
Dec 31th, Wednesday, Last Day of Classes |
||||
|
Jan 5-17, 2009 Monday-Saturday Final Period |
||||