Topics | |
Assignments | |
Labs |
Getting started |
|
| |
|
Intro to microcontrollers
- RISC vs. CISC arhitecture
- Microcontrollers vs. Microprocessors
- Getting started with Keil MicroVision IDE
- Creating a simple assembly project in Keil
- Resources and sample programs
|
|
| |
|
Programming ARM microcontrollers |
|
| |
|
Arithmetic, logic, and loops |
|
| |
|
Subroutines and recursion
- Call and return from subroutines
- Passing parameters in stack
- Saving the context, working with local variables
- Chain subroutine calls
- Returning values from subroutines
- Resources and sample programs
|
|
| |
|
***** Midterm Exam I ***** |
Working with peripheral modules |
|
| |
|
Interrupt processing |
|
| |
|
Working with communication
interfaces
- Serial communication with UART
- Serial communication with I2C
- Reading environmental sesors data (temperature, humidity, pressure)
- Serial communication with SPI
- Reading accelerometometer and air quality data
- Resources and sample programs
|
|
| |
|
***** Midterm Exam II ***** |
Working with floating point unit
(FPU) |
|
| |
|
Fundamentals of C programming
language
|
|
| |
|
Microcontroller programming in C
- Register-based configuration of peripherals
- Using EMLIB API library
- Writing mixed C/Assembler codes
- Passing parameters to assembler functions in C
- Calling assembler functions from C
- Calling C functions from assembler
- Resources and sample programs
|
|
| |
|
***** Final Exam ***** |