Course syllabus
010123120-64 ปฏิบัติการออกแบบระบบฝังตัว (Embedded System Design Laboratory)
Course Syllabus
Data entry : Dr.Danucha Prasertsom
1. Course number and name
010123120-64 ปฏิบัติการออกแบบระบบฝังตัว (Embedded System Design Laboratory)
2. Credits and contact hours
1(0-3-1)
3. Instructor’s or course coordinator’s name
Dr.Danucha Prasertsom
Dr.Pruk Sasithong
4. Text book, title, author, and year
- Embedded Systems Laboratory Sheet for CprE. Students Prepared by Dr. Danucha Prasertsom, Department of Electrical and Computer Engineering
5. Specific course information
- brief description of the content of the course (catalog description)
All experiments are corresponded to the course of 010123119 Embedded System Design. - prerequisites or co-requisites
010123119-64 Embedded System Design - indicate whether a required, elective, or selected elective (as per Table 5-1) course in the program
Required :
6. Specific goals for the course
- specific outcomes of instruction (e.g. The student will be able to explain the significance of current research about a particular topic.)
- CLO1 Understand and use basic development tools, IDEs, and workflows for embedded programming on both ESP32 (Arduino IDE) and STM32 (STM32Cube IDE / CubeMX) platforms.
- CLO2 Understand the principles and physical-layer signaling of common embedded communication protocols:I²C, UART, SPI, Modbus.
- CLO3 Analyze real communication signals using logic analyzers or oscilloscopes, including clock, data, and framing behavior.
- CLO4 Interface embedded systems with external devices such as: Ultrasonic distance sensors (HC-SR04), Temperature sensors (LM73), Real-time clocks (MCP79411), Analog-to-digital converters (MCP3202), Three-phase power smart meters (ZM194-D9Y).
- CLO5 Develop C-based embedded programs for peripheral control and data acquisition.
- CLO6 Design and implement modular C library functions to improve code readability, reuse, and maintainability.
- explicitly indicate which of the student outcomes listed in Criterion 3 or any other outcomes are addressed by the course.
ABET Student Outcome (SO) Listed in Criterion 3 Course learning outcome (CLO) PO1 : ความรู้ทางด้านวิศวกรรม และพื้นฐานทางด้านคณิตศาสตร์ และวิทยาศาสตร์ สามารถประยุกต์ความรู้ทางด้านคณิตศาสตร์ วิทยาศาสตร์ วิทยาการคำนวณ พื้นฐานทางด้านวิศวกรรม และความรู้เฉพาะทางวิศวกรรมเพื่อกำหนดกรอบความคิดในการแก้ปัญหาวิศวกรรม รวมทั้งการพัฒนาแบบจำลองทางคณิตศาสตร์และวิศวกรรม หรือ ให้นิยาม รวมทั้งประยุกต์วิธีการ กระบวนงาน กระบวนการ หรือระบบงานทางวิศวกรรมในการทำงานได้ - CLO2 Understand the principles and physical-layer signaling of common embedded communication protocols:I²C, UART, SPI, Modbus.
- CLO1 Understand and use basic development tools, IDEs, and workflows for embedded programming on both ESP32 (Arduino IDE) and STM32 (STM32Cube IDE / CubeMX) platforms.
PO2 : การวิเคราะห์ปัญหาทางวิศวกรรม สามารถระบุปัญหา สืบค้นทางเอกสาร สร้างแบบจำลองรวมตั้งสมการความสัมพันธ์ระหว่างตัวแปรต่าง ๆ เพื่อหาคำตอบ และแก้ไขปัญหาทางวิศวกรรมที่ซับซ้อน จนได้ข้อสรุปเบื้องต้น โดยใช้หลักการและเครื่องมือวิเคราะห์ทางด้านคณิตศาสตร์ วิทยาศาสตร์ และทางด้านวิศวกรรมศาสตร์ ทั้งนี้ ให้คำนึงถึงการพัฒนาที่ยั่งยืนในทุกองค์ประกอบ - CLO3 Analyze real communication signals using logic analyzers or oscilloscopes, including clock, data, and framing behavior.
PO3 : การออกแบบและพัฒนาเพื่อหาคำตอบของปัญหา สามารถหาคำตอบของปัญหาทางวิศวกรรมที่ซับซ้อน และออกแบบระบบงานหรือกระบวนการทางวิศวกรรมตามความต้องการและข้อกำหนดงานโดยคำนึงถึงข้อกำหนดด้านสังคม วัฒนธรรม ความปลอดภัย การอนามัยและสิ่งแวดล้อม มาตรฐานการปฏิบัติวิชาชีพ และการพัฒนาที่ยั่งยืน อาทิ มูลค่าตลอดวัฏจักรชีวิต การปลดปล่อยคาร์บอนสุทธิเป็นศูนย์ และประเด็นทางสิ่งแวดล้อมต่าง ๆ ที่เกี่ยวข้อง - CLO4 Interface embedded systems with external devices such as: Ultrasonic distance sensors (HC-SR04), Temperature sensors (LM73), Real-time clocks (MCP79411), Analog-to-digital converters (MCP3202), Three-phase power smart meters (ZM194-D9Y).
PO4 : การพิจารณาตรวจสอบ สามารถตรวจสอบ วินิจฉัย ประเมินผล งานและปัญหาทางวิศวกรรมซึ่งครอบคลุมถึงการตั้งสมมติฐาน การหาข้อมูล การทดลอง การวิเคราะห์ การแปลความหมายข้อมูล สังเคราะห์ข้อมูล ข้อสนเทศ และออกแบบ เพื่อให้ได้ผลสรุปที่ถูกต้องตามหลักเหตุผล - CLO5 Develop C-based embedded programs for peripheral control and data acquisition.
- CLO6 Design and implement modular C library functions to improve code readability, reuse, and maintainability.
PO5 : การใช้อุปกรณ์เครื่องมือทันสมัย สามารถสร้าง เลือก และประยุกต์ใช้เทคนิควิธี ทรัพยากร อุปกรณ์เครื่องมือทางวิศวกรรมและเทคโนโลยีสารสนเทศที่เหมาะสมและทันสมัย โดยคำนึงถึงข้อกำหนดและข้อจำกัดของเครื่องมือและอุปกรณ์เหล่านั้น - CLO3 Analyze real communication signals using logic analyzers or oscilloscopes, including clock, data, and framing behavior.
- CLO4 Interface embedded systems with external devices such as: Ultrasonic distance sensors (HC-SR04), Temperature sensors (LM73), Real-time clocks (MCP79411), Analog-to-digital converters (MCP3202), Three-phase power smart meters (ZM194-D9Y).
PO6 : การทำงานร่วมกันเป็นทีม สามารถทำงานร่วมกับผู้อื่นที่มีความหลากหลายในสหสาขาวิชาได้อย่างมีประสิทธิภาพ สามารถทำงานในฐานะสมาชิกของกลุ่มและผู้นำกลุ่มในรูปแบบต่าง ๆ ได้ - CLO6 Design and implement modular C library functions to improve code readability, reuse, and maintainability.
- CLO5 Develop C-based embedded programs for peripheral control and data acquisition.
PO8 : ความรับผิดชอบของวิศวกรต่อโลก มีความเข้าใจและความรับผิดชอบต่อการปฏิบัติวิชาชีพวิศวกรรมในบริบทของสังคม เศรษฐกิจ สิ่งแวดล้อม การพัฒนาที่ยั่งยืน และกรอบของกฎหมาย รวมทั้งสามารถประเมินผลกระทบของการแก้ไขปัญหาทางวิศวกรรมที่มีต่อสังคม สิ่งแวดล้อม และการพัฒนาที่ยั่งยืนด้วย - CLO6 Design and implement modular C library functions to improve code readability, reuse, and maintainability.
PO9 : จรรยาบรรณวิชาชีพ มีความเข้าใจและยึดมั่นในจรรยาบรรณแห่งวิชาชีพ และยึดถือตามกรอบมาตรฐานการปฏิบัติวิชาชีพ ที่สอดคล้องกับกฎหมายทั้งในประเทศและต่างประเทศ เข้าใจถึงความหลากหลายทางสังคม - CLO6 Design and implement modular C library functions to improve code readability, reuse, and maintainability.
PO10 : การบริหารงานวิศวกรรม มีความรู้และความเข้าใจในด้านเศรษฐศาสตร์และการบริหารงานวิศวกรรมโดยคำนึงถึงความเสี่ยงและความเปลี่ยนแปลงที่อาจเกิดขึ้น - CLO5 Develop C-based embedded programs for peripheral control and data acquisition.
PO11 : การเรียนรู้ตลอดชีพ ตระหนักถึงความจำเป็น และมีความสามารถในการเรียนรู้ตลอดชีพและพัฒนาตนเองอย่างต่อเนื่อง อาทิ การเรียนรู้ตลอดชีพและการพัฒนาตนเอง การปรับตัวต่อเทคโนโลยีใหม่ ๆ การคิดวิเคราะห์ที่เกี่ยวข้องกับความเปลี่ยนแปลงของเทคโนโลยี - CLO1 Understand and use basic development tools, IDEs, and workflows for embedded programming on both ESP32 (Arduino IDE) and STM32 (STM32Cube IDE / CubeMX) platforms.
- CLO2 Understand the principles and physical-layer signaling of common embedded communication protocols:I²C, UART, SPI, Modbus.
- CLO3 Analyze real communication signals using logic analyzers or oscilloscopes, including clock, data, and framing behavior.
- CLO4 Interface embedded systems with external devices such as: Ultrasonic distance sensors (HC-SR04), Temperature sensors (LM73), Real-time clocks (MCP79411), Analog-to-digital converters (MCP3202), Three-phase power smart meters (ZM194-D9Y).
- CLO5 Develop C-based embedded programs for peripheral control and data acquisition.
- CLO6 Design and implement modular C library functions to improve code readability, reuse, and maintainability.
7. Brief list of topics to be covered
| Week | Topic | Details | Activities |
|---|---|---|---|
| Week 1. | Basic Tools and Arduino IDE. | Basic Tools and I/O for Program Experiment on the ESP32 Board Using the Arduino IDE. | Hands-on laboratory experiment and practical assignment. |
| Week 2. | Timer/Counter. | Timer/Counter for Delay Generation and Digital Input Time Measurement: Student Experiment and C-Based Implementation on the ESP32 Using an Ultrasonic Sensor (HC-SR04) for Distance Conversion with the Arduino IDE. | Hands-on laboratory experiment and practical assignment. |
| Week 3. | I²C Protocol. | Physical Data Signals, Signal Decoding, and Analysis: Student Experiment and C-Based Implementation on the ESP32 Using the LM73 Temperature Sensor via the I²C Interface with the Arduino IDE. | Hands-on laboratory experiment and practical assignment. |
| Week 4. | I²C Protocol. | Assignment: Student Development of a C Library Function for the MCP79411 Real-Time Clock to Enable User-Friendly Configuration via I²C Communication on the ESP32 Board Using the Arduino IDE | Hands-on laboratory experiment and practical assignment. |
| Week 5. | UART and Modbus Protocols | Physical Data Signals, Signal Decoding, and Analysis. | Hands-on laboratory experiment and practical assignment. |
| Week 6. | UART and Modbus Protocols | Assignment: Student Development of a C Library Function for the ZM194-D9Y Three-Phase Power Smart Meter to Enable User-Friendly Configuration via the Modbus Protocol on the ESP32 Board Using the Arduino IDE. | Hands-on laboratory experiment and practical assignment. |
| Week 7. | Basic Tools : STM32Cube IDE and STM32Cube Mx. | Basic Tools and I/O for Program Experiment on the NUCLEO-F334R8 Board Using the STM32Cube IDE and STM32Cube Mx. | Hands-on laboratory experiment and practical assignment. |
| Week 8. | SPI Protocol. | Physical Data Signals, Signal Decoding, and Analysis: Student Experiment and C-Based Implementation on the NUCLEO-F334R8 Board Using the MCP3202 Analog-to-Digital Converter (ADC) via the SPI Interface with STM32Cube IDE and STM32CubeMX | Hands-on laboratory experiment and practical assignment. |
| Week 9. | Software Quality in Embedded C Programming. | Adhere to MISRA C guidelines, which are widely adopted in the automotive industry. Maintain consistent indentation and coding style throughout the project. Keep functions concise and focused, avoiding overly long or complex implementations. | Hands-on laboratory experiment and practical assignment. |
| Week 10. | Introduction to CAN Communication Protocol. | Introduction to CAN theory. CAN frame decoding using logic analyzer. Two-node CAN communication experiment. Error injection test. Bus termination measurement. | Hands-on laboratory experiment and practical assignment. |
| Week 11 - 15. | Mini Project Assignment. | Students will design, implement, and test a system by applying the embedded system concepts learned in class to solve real-world problems encountered in current applications. | Hands-on experiment. |
8. Course Assessment
| Course assessment | Weight score (%) | Assessment tools | Date |
|---|---|---|---|
| Laboratory Report. | 70 | Laboratory Report: Documentation, Experimental Results, and Analysis. | 24 Nov 2025 - 13 Mar 2026 |
| Mini Project Assignment. | 20 | assignment | 30 Mar 2026 |
| Class attendance. | 10 | group discussion | 24 Nov 2025 - 13 Mar 2026 |
The grading table
| Grading | Rank |
|---|---|
| >= 80% | A |
| 75% - 79.99% | B+ |
| 70% - 74.99% | B |
| 65% - 69.99% | C+ |
| 60% - 64.99% | C |
| 55% - 59.99% | D+ |
| 50% - 54.99% | D |
| 0% - 49.99% | F |
หมายเหตุ - ลำดับเนื้อหาจะมีการปรับเปลี่ยนตามความเหมาะสม