MSP432P401R + TI Cloud Tools

<rawat.s>
4 min readFeb 26, 2021

--

​ ​ ​

บอร์ด MSP‑EXP432P401R Launchpad Evaluation Kit ของบริษัท Texas Instruments (TI) มาพร้อมกับชิปไมโครคอนโทรลเลอร์ MSP432P401R (32-bit ARM Cortex M4F, 48MHz, 256KB Flash, 64KB RAM) และมีวงจร XDS110-ET Debug Probe ใส่มาให้ด้วย และเนื่องจากอุปกรณ์นี้ รองรับการใช้งานแบบ ARM CMSIS-DAP Compatible ดังนั้นจึงใช้งานได้ทั้งแบบ JTAG และ SWD (Serial Wire Debug)

Image Source: Texas Instruments

การอัปเดตเฟิร์มแวร์สำหรับ XDS110 Debug Probe

​ ​ ​

ก่อนหน้านี้ ผู้เขียนเคยใช้บอร์ดดังกล่าวได้ตามปรกติ แต่หลังจากไม่ได้ใช้มานาน เมื่อนำกลับมาใช้อีกครั้งพบว่า เมื่อเสียบบอร์ดเข้ากับพอร์ต USB ของคอมพิวเตอร์ผู้ใช้ สามารถมองเห็นอุปกรณ์ได้ใน Device Manager ของ Windows 10 แต่เมื่อลองทำขั้นตอนอัปโหลดไฟล์ .hex ไปยัง Flash ภายใน MCU จะเกิดปัญหา ดังนั้นจึงต้องการลองดูว่า ถ้าอัปเดตเฟิร์มแวร์ให้กับอุปกรณ์นี้ใหม่ จะแก้ปัญหาได้หรือไม่

ถัดไปบันทึกช่วยจำขั้นตอนในการอัปเดตเฟิร์มแวร์สำหรับ XDS110 ซึ่งสามารถแก้ไขปัญหาดังกล่าวได้

แหล่งข้อมูลอ้างอิง

​ ​ ​

ขั้นตอนการดำเนินการ

  1. ดาวน์โหลดซอฟต์แวร์ที่มีชื่อว่า XDS Emulation Software (EMUPack) จากเว็บไซต์ของบริษัท TI [link] ในบทความนี้ ได้เลือกไฟล์สำหรับระบบปฏิบัติการ Windows 10, 64 บิต และเวอร์ชันที่ใช้คือ 9.2.0.00002 (May 26, 2020) ซึ่งเป็นเวอร์ชันของไดร์เวอร์ที่ใช้กับ TI CCS (Code Compose Studio) v9.2
  2. ติดตั้งซอฟต์แวร์ดังกล่าว เลือกไดเรกทอรีสำหรับติดตั้งให้เป็น C:\ti
  3. ทำคำสั่งสำหรับ XDS เพื่อเข้าสู่โหมด USB DFU เช่น การตั้งค่า Serial Number ใหม่ให้กับอุปกรณ์ และการอัปเดทเฟิร์มแวร์ใหม่

​ ​ ​ ​ ​ ​

รูป: เริ่มขั้นตอนการติดตั้ง TI Emulators 9.2.0.x
รูป: เลือกติดตั้งไปยังไดเรกทอรี C:\ti

เมื่อติดตั้งสำเร็จแล้ว สามารถตรวจสอบรายการของ USB Device Drivers ใน Device Manager ของ Windows จะมีรายการดังนี้

รูป: รายการสำหรับ Texas Instruments Debug Probe

การทำคำสั่งเป็นแบบ Command lines และให้ไปยังไดเรกทอรี C:\ti\ccs_base\common\uscif\xds110

รูป: รายการไฟล์ต่าง ๆ ในไดเรกทอรีของ xds110

เมื่อเสียบสาย USB เชื่อมต่อระหว่างอุปกรณ์และคอมพิวเตอร์ของผู้ใช้แล้ว ให้ลองทำคำสั่งต่อไปนี้

xdsdfu -e

ตัวอย่างข้อความเอาต์พุตที่ได้

USB Device Firmware Upgrade Utility
Copyright (c) 2008-2019 Texas Instruments Incorporated.
Scanning USB buses for supported XDS110 devices...<<<< Device 0 >>>>VID: 0x0451 PID: 0xbef3
Device Name: XDS110 Embed with CMSIS-DAP
Version: 2.3.0.12
Manufacturer: Texas Instruments
Serial Num: M432xxxx
Mode: Runtime
Configuration: Standard
Found 1 device.

ถ้าต้องการอัปเดตเฟิร์มแวร์ใหม่ ให้ทำคำสั่งตามลำดับดังนี้ เริ่มต้นด้วยการทำให้อุปกรณ์เข้าสู่โหมด DFU ก่อน

xdsdfu -m

จากนั้นเขียนไฟล์ .bin ไปยังอุปกรณ์

xdsdfu -f firmware_3.0.0.13.bin -r

จากนั้นตรวจสอบเวอร์ชันอีกครั้ง

xdsdfu -e

และได้ข้อความเอาต์พุตตามตัวอย่างดังนี้

USB Device Firmware Upgrade Utility
Copyright (c) 2008-2019 Texas Instruments Incorporated.
Scanning USB buses for supported XDS110 devices...<<<< Device 0 >>>>VID: 0x0451 PID: 0xbef3
Device Name: XDS110 Embed with CMSIS-DAP
Version: 3.0.0.13
Manufacturer: Texas Instruments
Serial Num: M432xxxx
Mode: Runtime
Configuration: Standard
Found 1 device.

การใช้งานร่วมกับ TI Cloud Tools: Online CCS IDE

​ ​ ​

เริ่มต้นด้วยการติดตั้งซอฟต์แวร์ TI CloudAgent ในเครื่องคอมพิวเตอร์ของผู้ใช้ (Windows, Linux/Ubuntu, Mac OS X) สำหรับการเชื่อมต่อกับ TI Cloud / Online CCS IDE

ดาวน์โหลดไฟล์สำหรับการติดตั้งใช้งานได้จาก https://software-dl.ti.com/ccs/esd/documents/ti_cloud_agent.html

รูป: เลือกติดตั้งไปที่ C:\ti
รูป: เมื่อทำขั้นตอนติดตั้ง TI Cloud Agent สำเร็จแล้ว
รูป: ถ้าเปิดใช้งาน Windows Defender Firewall อนุญาต TI Cloud Agent ทำงานเป็น Server

จากนั้นไปยังเว็บไซต์ https://dev.ti.com/ และสมัครบัญชีผู้ใช้ก่อน แล้วทำขั้นตอน Login เพื่อเข้าใช้งาน

จากนั้นไปลองสร้างโปรเจกต์ใหม่ กดปุ่ม “Create project online”

รูป: หน้าเว็บเพื่อเข้าใช้งานบริการของ TI Cloud
รูป: ตรวจสอบพบบอร์ด MSP-EXP432P401R ขณะเชื่อมต่ออยู่กับคอมพิวเตอร์ผู้ใช้

สร้างโปรเจกต์ใหม่ จากรายการตัวอย่างที่มีให้เลือก

ตัวอย่างโปรเจกต์สำหรับบอร์ด MSP432P401R มีจำนวนมาก สามารถจำแนกออกเป็นกลุ่มย่อยได้ตามรูปแบบการใช้งานไลบรารี เช่น

  • ใช้ TI-RTOS Kernel หรือไม่ใช้ RTOS (No RTOS) หรือ
  • ใช้รูปแบบการเขียนโค้ดในระดับรีจิสเตอร์ (Register Access) หรือใช้ไลบรารี เช่น TI Drivers

ถัดไปเป็นการเลือกตัวอย่าง blinkled_msp432p401r มาสร้างเป็นโปรเจกต์ใหม่ โดยเลือกจากรายการแล้วกดปุ่ม IMPORT

แล้วจะปรากฏหน้าต่าง Popup Dialog Window ให้กดปุ่ม OK

รูป: หน้าต่าง Popup

​ ​ ​

จากนั้นจึงเริ่มต้นการทำงานของ TI CCS Cloud IDE และจะเห็นว่า ทางซ้ายมือมีโครงสร้างของไฟล์ในโปรเจกต์ ให้ลองเปิดดูไฟล์ main.c

ลองทำขั้นตอน Project > Build Project เพื่อคอมไพล์โค้ด

เมื่อคอมไพล์โค้ดในโปรเจกต์ได้สำเร็จแล้ว ถัดไปเป็นการทำขั้นตอน Debug (คลิกเลือก Debug จากแถบเมนู) เพื่อรันโค้ดโดยใช้บอร์ดไมโครคอนโทรลเลอร์

เมื่อ Debugger ใน TI Cloud IDE เชื่อมต่อกับ TI Cloud Agent อาจมีการตรวจสอบเวอร์ชันและให้อัปเดทเฟิร์มแวร์ที่เป็นเวอร์ชันล่าสุด (ตามรูปตัวอย่างคือ 9.3.0.00032)

รูป: การอัฟเดทเวอร์ชันสำหรับ XDS110 Debug Probe

เมื่อเข้าสู่โหมด Debug Session จะเห็นว่า มีการรันคำสั่งมาหยุดอยู่ที่บรรทัดของคำสั่งแรกภายในฟังก์ชัน main()

ผู้ใช้สามารถคลิกเลือกบรรทัดในโค้ด เพื่อกำหนดเป็นตำแหน่งของ Breakpoint ได้และถ้าต้องการรันโค้ดต่อไป ก็ให้กดปุ่ม Resume (F8) ลองกดซ้ำหลาย ๆ ครั้ง แล้วสังเกต การเปลี่ยนแปลงของสถานะลอจิกของ LED สีแดงบนบอร์ด

ถ้าต้องการจบการทำงานของ Debugger ให้คลิก Stop บนแถบเมนูคำสั่ง

รูป: การทำงานในโหมด Debug

การทดลองใช้งาน TI-RTOS สำหรับ MSP432P401

​ ​ ​

ถัดไป มาลองตัวอย่างที่มีชื่อว่า mutex ซึ่งเป็นการสาธิตการใช้ TI-RTOS และมีการสร้างทาสก์ (Tasks) จำนวน 2 ทาสก์ และสร้าง Semaphore เพื่อใช้ในการจัดลำดับการเข้าถึงข้อมูลที่ใช้ร่วมกัน

เมื่อสร้างโปรเจกต์ใหม่จากตัวอย่างได้แล้ว ก็ทำขั้นตอน Build Project และ Debug ตามลำดับ

รูป: ทดสอบการทำงานของโค้ดในโหมด Debug โดยใช้ฮาร์ดแวร์จริง

กล่าวสรุป

เราได้เห็นขั้นตอนการใช้งานบอร์ด MSP‑EXP432P401R Launchpad ร่วมกับซอฟต์แวร์ TI CCS Cloud IDE บนเว็บเบราว์เซอร์ โดยไม่ต้องติดตั้งซอฟต์แวร์ทั้งหมดในเครื่องของผู้ใช้ แค่ติดตั้งซอฟต์แวร์ TI Cloud Agent เท่านั้น ก็สามารถเขียนโค้ด และทำขั้นตอนดีบักโค้ดโดยใช้ฮาร์ดแวร์จริงได้ และแสดงให้เห็นความสะดวกในการใช้งานซอฟต์แวร์ในลักษณะนี้สำหรับผู้เริ่มต้นใช้งาน

--

--

<rawat.s>
<rawat.s>

Written by <rawat.s>

I'm Thai and working in Bangkok/Thailand.

No responses yet