一、課程說明(Course Description)



We use C/C++ in this course with ARM mbed library to write control codes for an embedded Cortex M4
board. And we show through hands-on practice labs on interfacing with different sensors and actuators, and
eventually building a smart IoT device. Starting with basic digital and analog inputs and outputs, we build an
arbitrary wave generator and analyzer. Also we demo how to display captured information on a full-color LCD.
Several serial protocols are then introduced including UART, SPI and I2C. Remote procedure calls with serial
protocols are applied to send control messages between PC and M4. Besides wired control, we use Zigbee
for low power wireless messaging. IoT applications based on Ethernet (WiFi) will also be demonstrated.
Finally, we use a Boe Bot car platform to integrate all components.



二、教科書(Textbooks)



Fast and Effective embedded Systems Design: Applying the ARM mbed (Second Edition), 2016, by Rob

Toulson and Tim Wilmshurst, Newnes.



三、參考書籍(References)



Embedded System Interfacing 1st Edition, Design for the Internet-of-Things (IoT) and Cyber-Physical

Systems (CPS), by Marilyn Wolf, Morgan Kaufmann, 2019



四、教學方式 (Teaching Method)



One-hour lecture and two-hour lab per week



五、教學進度(Syllabus)



週次 授課內容

1 Course overview

2 Lab 1 mbed Introduction

Lab 2 Digital Input and Output

3 Lab 3 Analog Output

Lab 4 Analog Input

4 Lab 5 Liquid Crystal Displays

5 Lab 6 Interrupts, Timers, Tasks and RTOS

6 Lab 7 Serial Communication

7 Lab 8 Machine Learning on mbed

8 Midterm Exam

9 Lab 9 Serial RPC

10 Lab 10 Wifi and MQTT

11 Lab 11 Zigbee

12 Lab 12 Servos, Encoder and Ping sensors

13 Lab 13 BOE BOT Car

14 BB Car Integration

15 Final project preparation

16 Final Project Demo





六、成績考核(Evaluation)



* Lab demo, quiz, reports 40%

* Midterm Exam 30%

* Final project and demo 30%



七、可連結之網頁位址



http://www1.ee.nthu.edu.tw/ee240500/