Get File
Get File
Exam
Lecture Study Time Homework Total
(incl. Prep.) 5
42 20 60 20 142
Language English
Compulsory/Elective Compulsory
Prerequisites Math101 or Math102
Lectures will focus on microprocessor organization, assembly language, I/O techniques, real-
time interfaces, applications, hardware and software. Lab sections will focus on the STM32F0
32 bit Flash microcontrollers based on the ARMCortex M0 processor, in order to learn how to
design, build, and program embedded systems. STM32F0 Cortex-M0 offers a 32 bit product
Course Contents range that combines very high performance, real-time capabilities, digital signal processing,
and low power, low voltage operation, while maintaining full integration and ease of
development. Labs during the first half of the course will focus on essential topics. The second
half of the course will focus on the design and implementation of non-trivial, open-ended
project involving both hardware and software.
The primary goal of this course is to give students the fundamental skills needed to
understand, use, and design microcontroller-based systems. The class focuses on basic
computer organization and introductory microprocessor architecture. Specifically, this class
will be covering the following:
• Introduction to assembly language programming: basic instructions, program
segments, registers and memory.
Course Objective • Control transfer instructions; arithmetic, logic instructions; rotate instructions and
bitwise operations in assembly language.
• Basic computer architecture: pin definitions and supporting chips. Memory and
memory interfacing.
• Basic I/O and device interfacing: I/O programming in assembly and programmable
peripheral interface (PPI).
• Interfacing the parallel and serial ports.
1. An ability to program a microcontroller to perform various tasks.
Learning Outcomes and 2. An ability to interface a microcontroller to various devices.
Competences 3. An ability to effectively utilize microcontroller peripherals.
4. An ability to design and implement a microcontroller-based embedded system.
1. Daniel W. Lewis, Fundamental of Embedded Software with ARM Cortex M3, 2nd Edition, Pearson
2013, ISBN 978-0-13-291654-7
Textbook and /or References
2. Joseph Yiu, The Definitive Guide to the ARM Cortex-M0, 1st Edition, Elsevier 2011, ISBN
9780123854773
If any, mark as (X) Percentage (%)
Midterm Exams X 30
Quizzes X 10
Homework X 0
Assessment Criteria
Projects X 5
Laboratory work X 15
Other
Final Exam X 40
Instructors Assist. Prof. Dr. Enver ÇAVUŞ
Weekly Schedule
Week Subject
1 Introduction to embedded systems and review of digital systems and data representation
2 Introduction to embedded systems and review of digital systems and data representation
Microcontroller Instruction Set: Addressing modes; Data transfer, arithmetic, logical, branch, stack and
3
machine control groups of instruction set; Unspecified flags and instructions
Microcontroller Instruction Set: Addressing modes; Data transfer, arithmetic, logical, branch, stack and
4
machine control groups of instruction set; Unspecified flags and instructions
Assembly Language Programming: Assembler directives, simple examples; Subroutines, parameter
5
passing to subroutines.
Assembly Language Programming: Assembler directives, simple examples; Subroutines, parameter
6
passing to subroutines.
Interfacing: microcontroller bus timing analysis, multiplexed bus expansion, general-purpose I/O and
7
printer interface, buffered I/O handling, interrupt handling, applications
Interfacing: microcontroller bus timing analysis, multiplexed bus expansion, general-purpose I/O and
8
printer interface, buffered I/O handling, interrupt handling, applications
9 Mid-term Exam
Interfacing: microcontroller bus timing analysis, multiplexed bus expansion, general-purpose I/O and
10
printer interface, buffered I/O handling, interrupt handling, applications
Interfacing: microcontroller bus timing analysis, multiplexed bus expansion, general-purpose I/O and
11
printer interface, buffered I/O handling, interrupt handling, applications
Interrupts:Interrupt structure of Cortex-M0 microprocessor, processing of vectored and nonvectored
12
interrupts, latency time and response time; Handling multiple interrupts
Interrupts:Interrupt structure of Cortex-M0 microprocessor, processing of vectored and nonvectored
13
interrupts, latency time and response time; Handling multiple interrupts
Interrupts:Interrupt structure of Cortex-M0 microprocessor, processing of vectored and nonvectored
14
interrupts, latency time and response time; Handling multiple interrupts
Interrupts:Interrupt structure of Cortex-M0 microprocessor, processing of vectored and nonvectored
15
interrupts, latency time and response time; Handling multiple interrupts