ข้ามไปยังเนื้อหา

แล็บ: สร้าง build flash และ debug โปรเจกต์เฟิร์มแวร์

วิดีโอประกอบ

ดูบน YouTube (เปิดในแท็บใหม่)

วิดีโอโดย สมาคมสมองกลฝังตัวไทย (TESA) · ดูทั้งชุดใน playlist AIoT Foundation

Course 1 · Module 2
Type: Hands-on lab (requires PC tools + board)
Suggested time: 90–120 minutes

Read first: Lesson · Cheatsheet · ← Table of Contents · ← M01 · M03 →


เมื่อทำครบ คุณจะ:

  • ติดตั้ง/ตรวจสภาพแวดล้อม ModusToolbox™ + VS Code ให้พร้อม
  • สร้างโปรเจกต์จาก BSP ของคิตในมือ
  • Build สำเร็จใน VS Code หรือเทอร์มินัล
  • Flash และยืนยันผลบนบอร์ดจริง
  • เปิด debug session อย่างน้อยหนึ่งครั้ง

  • อ่านจบ บทเรียน
  • เครื่องติดตั้งตามรายการในบทเรียน (หรือตามคู่มือของชุดที่ใช้)
  • บอร์ด PSOC™ Edge + สาย USB
  • รู้รหัส/ชื่อคิตที่ใช้เลือก BSP

หลัง flash สำเร็จ — ดู telemetry บนโฮสต์
ติดตั้ง Bitstream Studio จาก Marketplace (หรือจาก vsix/ ในแพ็กแล็บ) แล้วใช้ Command Palette → Bitstream Studio: Open Bitstream Studio / Start Serial Bridge

แพ็ก HEX / Flasher / demos: TESAIoT_Hackathon — clone หรือดาวน์โหลด ZIP แล้วใช้ hex/ + flasher/ ตาม README ของ repo (จับคู่เวอร์ชันกับ VSIX)


บันทึกผลลงโน้ต:

รายการ มีแล้ว? หมายเหตุ
ModusToolbox™ tools (ระบุเวอร์ชัน)
Arm GNU Toolchain (GCC)
VS Code
ส่วนขยายที่ชุดแล็บกำหนด
Terminal emulator (ถ้าต้องดู UART)

ผ่านเมื่อ: ตรวจรายการข้างบนครบว่าเครื่องพร้อม หรือคุณสร้างโปรเจกต์ใหม่ได้ใน Part 2


  1. เปิด ModusToolbox™ Dashboard หรือ Project Creator
  2. เลือก BSP/Kit ให้ตรงบอร์ดในมือ
  3. เลือกตัวอย่างเริ่มต้น
    • แนะนำ: เปิดจาก TESAIoT Developer Hub (Example Explorer → กรอง Board ตามคิต)
    • หรือ Hello World ของ Infineon หากเลือกเส้นทางนั้น
  4. เลือกเป้าหมาย VS Code
  5. สร้างโปรเจกต์ลงโฟลเดอร์ที่ตั้งชื่อเป็นระเบียบ (หลีกเลี่ยง path มีช่องว่างแปลก ๆ ถ้าทำได้)

บันทึก:

  • ชื่อโปรเจกต์: _______________
  • BSP ที่เลือก: _______________
  • path โฟลเดอร์: _______________

ผ่านเมื่อ: มีไฟล์ .code-workspace ในโปรเจกต์


  1. เปิดไฟล์ *.code-workspace ด้วย VS Code
  2. รัน build ตามเวิร์กโฟลว์ที่เลือกใช้ (ปุ่มใน IDE หรือ make ในเทอร์มินัลโปรเจกต์)
  3. แก้ error เบื้องต้นถ้ามี (toolchain / path / library)
ผล build บันทึก
สำเร็จครั้งแรกใช้เวลาประมาณ
Error ที่เจอ (ถ้ามี) และวิธีแก้

ผ่านเมื่อ: build สำเร็จโดยไม่มี error


  1. เสียบ USB ให้ KitProg พร้อม
  2. Program/Flash ตาม launch config หรือคำสั่งที่เอกสารกำหนด
  3. สังเกตผลบนบอร์ด (LED / พฤติกรรมตามตัวอย่าง)
  4. ถ้าตัวอย่างมี UART: เปิด terminal ที่ baud ตามคู่มือ แล้วบันทึกข้อความที่ได้

ผ่านเมื่อ: เห็นพฤติกรรมที่ยืนยันว่าเฟิร์มแวร์ใหม่รันบนบอร์ด


  1. ตั้ง breakpoint ใน main หรือฟังก์ชันที่เห็นชัดในตัวอย่าง
  2. เริ่ม debug session
  3. ยืนยันว่า halt ที่ breakpoint ได้ แล้ว resume/step อย่างน้อยหนึ่งครั้ง

บันทึก:

  • ชื่อ configuration ที่ใช้: _______________
  • halt ที่บรรทัด/ฟังก์ชัน: _______________

ผ่านเมื่อ: debug ทำงานได้อย่างน้อยหนึ่งรอบ


ไม่ต้อง redesign ทั้งบอร์ด — แค่เปิดดู:

  1. เปิด Device Configurator (make device-configurator หรือจาก IDE)
  2. หา peripheral ที่ตัวอย่างใช้ (เช่น GPIO สำหรับ LED หรือ UART)
  3. เปิด Library Manager แล้วดูรายการไลบรารีที่มีในโปรเจกต์

ตอบสั้น ๆ:

  1. BSP ของคุณชื่ออะไร
  2. ไลบรารีหนึ่งตัวที่เห็นใน Library Manager คืออะไร
  3. ถ้าเลือก BSP ผิดคิต จะเสี่ยงปัญหาแบบใด
  1. ต้องตรงกับคิตจริง
  2. ตัวอย่างเช่น retarget-io, HAL/PDL/BSP packages ตามที่โปรเจกต์ดึงมา
  3. ขา/อุปกรณ์ไม่ตรงของจริง — LED/UART ไม่ออก หรือ program คนละเป้าหมาย

ความเข้าใจผิด แก้ไขอย่างไร
ติดตั้ง VS Code อย่างเดียวพอ ต้องมี ModusToolbox™ tools + toolchain
เปิดโฟลเดอร์ย่อยสุ่มก็เหมือนเปิด workspace เปิด .code-workspace ที่ระบบสร้างให้
Build ผ่าน = เฟิร์มแวร์อยู่บนบอร์ดแล้ว ต้อง program/flash แยก
แก้ไฟล์ใน libs เป็นทางลัดดีเสมอ ใช้ Library Manager / โค้ดแอปเป็นหลัก

  • Part 1 ตรวจเครื่องแล้ว
  • สร้างโปรเจกต์ BSP ตรงคิต
  • Build สำเร็จ
  • Flash แล้วเห็นผลบนบอร์ด
  • Debug halt ได้อย่างน้อยหนึ่งครั้ง
  • ตอบคำถาม Part 6 ครบ

Lesson · Cheatsheet · Table of Contents · M03 →

อ้างอิงบทเรียนนี้

ถ้านำบทเรียนนี้ไปสอน ทำสไลด์ หรือทำเอกสารต่อ ให้อ้างอิงด้วยข้อความนี้ ถ้าดัดแปลงเนื้อหา ให้เติม (ดัดแปลง)ต่อท้ายชื่อบทเรียน

"แล็บ: สร้าง build flash และ debug โปรเจกต์เฟิร์มแวร์" จาก TESA Open Knowledge โดยสมาคมสมองกลฝังตัวไทย (Thai Embedded Systems Association: TESA) https://github.com/tesaiot/tesa-qualification-program สัญญาอนุญาต CC BY-NC 4.0

ข้อความอ้างอิงภาษาอังกฤษ: "Lab: Create, Build, Flash, and Debug a Firmware Project" from TESA Open Knowledge by the Thai Embedded Systems Association (TESA), https://github.com/tesaiot/tesa-qualification-program, licensed under CC BY-NC 4.0

ลิงก์บทเรียน: https://tesaiot.github.io/tesa-qualification-program/courses/firmware-sdk-edge-ai/m02-toolchain/l02-lab/

บทเรียนนี้ดัดแปลงจากต้นฉบับด้านล่าง เมื่ออ้างอิงให้คงเครดิตต้นฉบับไว้ด้วย
https://github.com/drsanti/TESAIoT-Courses/blob/287c21814ba8c75f693136616dcd270349a15966/C1/M02/lab.md · Original content by Asst. Prof. Dr. Santi Nuratch (ผศ.ดร.สันติ นุราช), KMUTT. Course 1 (C1/) of drsanti/TESAIoT-Courses. TESA funded the work and holds the rights; published here under CC BY-NC 4.0. The upstream repository carries no licence file. Text kept faithful; structure, front matter, quizzes and notes added by TESA Open Knowledge.

วิธีอ้างอิง TESA ฉบับเต็ม

TESA Open Knowledge · © 2026 สมาคมสมองกลฝังตัวไทย (TESA) · CC BY-NC 4.0

เนื้อหาเผยแพร่ภายใต้ CC BY-NC 4.0 นำไปใช้ต่อในงานที่ไม่ใช่เพื่อการค้าได้ โปรดอ้างอิงสมาคมสมองกลฝังตัวไทย (TESA) ทุกครั้ง · วิธีอ้างอิง TESA