เร่งการสร้างต้นแบบและการอัปเดตโค้ดด้วยดีบักเกอร์ในวงจรที่ทันสมัย
Contributed By DigiKey's North American Editors
2024-05-29
นักพัฒนาต้องเผชิญกับแรงกดดันในการเร่งจัดส่งผลิตภัณฑ์ แม้ว่าระบบฝังตัวจะมีความซับซ้อนมากขึ้นก็ตาม ตัวดีบักเกอร์ในวงจร (ICD) มีบทบาทสำคัญในที่นี่ โดยช่วยในการระบุและแก้ไขจุดบกพร่องได้อย่างรวดเร็ว อย่างไรก็ตาม ตัวดีบักเกอร์แบบเดิมมีขนาดใหญ่ ไม่ยืดหยุ่น และใช้งานยาก จึงไม่เหมาะสมกับข้อกำหนดการพัฒนาในปัจจุบัน
นักพัฒนาสามารถเลือกโซลูชันที่ทันสมัยซึ่งมีขนาดกะทัดรัด มีฟังก์ชันการทำงานที่ขยายเพิ่มขึ้น และมีชุดเครื่องมือที่เป็นมิตรกับนักพัฒนามากขึ้นแทน โดยเฉพาะอย่างยิ่งพวกเขาควรขอการสนับสนุนสำหรับการพัฒนาอย่างรวดเร็วและการอัปเดตผลิตภัณฑ์ในห้องปฏิบัติการและภาคสนาม
บทความนี้จะอธิบายบทบาทและข้อกำหนดของ ICD โดยย่อ จากนั้นเป็นการแนะนำวิธีแก้ปัญหาจาก Microchip Technology เป็นตัวอย่างสิ่งที่นักพัฒนาควรมองหาใน ICD ยุคใหม่ นอกจากนี้ ยังมีเครื่องมือการพัฒนาที่เข้ากันได้ เคล็ดลับในการเริ่มต้น และคำแนะนำโดยย่อเกี่ยวกับการใช้ ICD ในสภาพแวดล้อมการผลิต
ประโยชน์และความท้าทายของ ICD
ICD เป็นเครื่องมือที่เชื่อมต่อกับโปรเซสเซอร์ที่ติดตั้งภายในฮาร์ดแวร์เป้าหมาย การเชื่อมต่อนี้ให้การเข้าถึงโปรเซสเซอร์แบบเรียลไทม์ในขณะที่ระบบทำงาน โดยอนุญาตให้มีงานต่าง ๆ เช่น การดำเนินการทีละขั้นตอนและการตรวจสอบหน่วยความจำ โปรแกรมเมอร์ในวงจร (ICP) สร้างความสามารถเหล่านี้โดยการเปิดใช้งานโค้ดและข้อมูลเพื่อเขียนลงในหน่วยความจำของโปรเซสเซอร์ เมื่อรวมกันแล้ว คุณสมบัติเหล่านี้มีความสำคัญอย่างยิ่งต่อกระบวนการพัฒนาแบบฝังตัว
อย่างไรก็ตาม โปรแกรมดีบักเกอร์แบบเดิมต้องใช้ทักษะพิเศษและสภาพแวดล้อมการพัฒนาที่สามารถจำกัดยูทิลิตี้ได้ ดีบักเกอร์เหล่านี้อาจมีข้อจำกัดเมื่อแก้ไขปัญหาฮาร์ดแวร์ที่ใช้งานจริง และมักต้องการการเชื่อมต่อ JTAG ที่ไม่สามารถใช้งานได้กับฮาร์ดแวร์ที่ใช้งานจริงเนื่องจากข้อจำกัดด้านต้นทุนและพื้นที่ นอกจากนี้ ซอฟต์แวร์และฮาร์ดแวร์พิเศษที่จำเป็นสำหรับการแก้ไขจุดบกพร่องอาจยุ่งยากในการนำเข้าสู่สภาพแวดล้อมภาคสนาม
PG164150 MPLAB PICkit 5 ICD/ICP จาก Microchip Technology สามารถเอาชนะข้อจำกัดเหล่านี้ได้ ในบรรดาคุณสมบัติอื่น ๆ สามารถใช้ผ่านแอปพลิเคชันสมาร์ทโฟนที่มีการเชื่อมต่อ Bluetooth Low Energy (BLE) ได้ ช่วยให้ช่างเทคนิคสามารถนำโค้ดอิมเมจไปใช้ในภาคสนามได้ ซึ่งช่วยเพิ่มความเป็นไปได้ในการแก้ไขจุดบกพร่องและการอัปเดตซอฟต์แวร์ได้อย่างมาก
คุณสมบัติที่สำคัญของ MPLAB PICkit 5
MPLAB PICkit 5 เป็นอุปกรณ์อเนกประสงค์ที่รองรับหน่วยไมโครคอนโทรลเลอร์ (MCU) และตัวควบคุมสัญญาณดิจิตอล (DSC) เกือบทั้งหมดของ Microchip Technology รวมถึงอุปกรณ์ PIC, dsPIC, AVR และ SAM (Arm® Cortex®-based) ดังแสดงในรูปที่ 1 ประกอบด้วยช่องเสียบการ์ด microSDHC ซึ่งช่วยให้เครื่องมือสามารถจัดเก็บภาพในหน่วยความจำของอุปกรณ์ได้หลายภาพ
รูปที่ 1: แสดงให้เห็นภาพรวมของ MPLAB PICkit 5 โดยเน้นคุณลักษณะที่สำคัญ (แหล่งที่มาของภาพ: Microchip Technology)
MPLAB PICkit 5 เชื่อมต่อกับโฮสต์ผ่านสายเคเบิล USB Type-C และสามารถจ่ายไฟผ่านสายเคเบิลนี้หรือโดยเป้าหมายก็ได้ ดีบักเกอร์ยังมีการเชื่อมต่อ BLE ซึ่งช่วยให้ผู้ใช้สามารถเข้าถึงเครื่องมือจากสมาร์ทโฟนได้
ดีบักเกอร์มีขั้วต่อการเขียนโปรแกรม 8 พินที่ด้านเป้าหมายซึ่งรองรับอินเทอร์เฟซต่าง ๆ ซึ่งรวมถึง JTAG 4 สาย, Serial Wire Debug (SWD), อีเธอร์เน็ต, JTAG 2 สายที่เข้ากันได้แบบย้อนหลัง และการเขียนโปรแกรมอนุกรมในวงจร (ICSP) Microchip Technology นำเสนอ AC102015 บอร์ดอะแดปเตอร์ (รูปที่ 2) ที่รองรับอินเทอร์เฟซเหล่านี้ทั้งหมด
รูปที่ 2: บอร์ดอะแดปเตอร์ AC102015 รองรับอินเทอร์เฟซได้หลากหลาย (แหล่งที่มาของภาพ: Microchip Technology)
ดีบักเกอร์รองรับแรงดันไฟฟ้าของแหล่งจ่ายเป้าหมายตั้งแต่ 1.2 V ถึง 5.0 V สำหรับการเข้าสู่โหมดโปรแกรมแรงดันต่ำ และจาก 1.8 V ถึง 5.0 V สำหรับการเข้าสู่โหมดโปรแกรมแรงดันสูง นอกจากนี้ยังสามารถจ่ายกระแสไฟ 150 มิลลิแอมแปร์ (mA) ให้กับอุปกรณ์เป้าหมายได้โดยตรงอีกด้วย
ฟังก์ชันเพิ่มเติม ได้แก่ Virtual Comm Port (VCOM) เบรกพอยต์ฮาร์ดแวร์และซอฟต์แวร์หลายตัว นาฬิกาจับเวลาสำหรับการดำเนินการจับเวลา และความสามารถในการดีบักไฟล์ซอร์สโค้ดโดยตรง ดีบักเกอร์ใช้พลังงานจาก 300 เมกะเฮิรตซ์ (MHz) ATSAME70N2 MCU ที่ใช้ระบบปฏิบัติการแบบเรียลไทม์ (RTOS) ทำให้มั่นใจได้ว่าการดาวน์โหลดเฟิร์มแวร์จะไม่เกิดความล่าช้าเมื่อสลับระหว่างอุปกรณ์ ระบบอัจฉริยะออนบอร์ดนี้ยังช่วยให้ดีบักเกอร์รองรับอุปกรณ์และคุณสมบัติเป้าหมายใหม่อีกด้วย
การปรับปรุงที่สำคัญเมื่อเปรียบเทียบกับ MPLAB PICkit 4 และ MPLAB PICkit 3
ซีรีส์ MPLAB PICkit มีการพัฒนาอย่างต่อเนื่อง โดยนำเสนอการปรับปรุงความยืดหยุ่น ความเร็ว และความเข้ากันได้ของอุปกรณ์ในแต่ละรอบ ตารางที่ 1 สรุปการอัพเกรดที่สำคัญใน MPLAB PICkit 5 เทียบกับรุ่นก่อน
|
ตารางที่ 1: MPLAB PICkit 5 มีข้อได้เปรียบเหนือรุ่นก่อนหลายประการ (ที่มาของตาราง: Kenton Williston)
สภาพแวดล้อมการพัฒนาที่รองรับโดย MPLAB PICkit 5
MPLAB PICkit 5 รองรับสภาพแวดล้อมการพัฒนา ได้แก่:
- สภาพแวดล้อมการพัฒนาแบบรวม MPLAB X (IDE) ซึ่งเป็นชุดซอฟต์แวร์ที่มีคุณสมบัติครบถ้วนสำหรับการพัฒนาระบบสมองกลฝังตัว
- สภาพแวดล้อมการเขียนโปรแกรมแบบรวม MPLAB (IPE) ซึ่งเป็นการใช้งานที่เรียบง่ายซึ่งมีโหมดการผลิตสำหรับช่างเทคนิคที่สร้างผลิตภัณฑ์โดยใช้โปรเซสเซอร์ Microchip Technology
- MPLAB โปรแกรมเมอร์-ทู-โก (PTG) ฟังก์ชันการทำงานที่รวมอยู่ใน MPLAB X และใช้งานได้กับแอปสมาร์ทโฟน MPLAB X บน iOS และ Android
แอปสมาร์ทโฟน (รูปที่ 3) มีความโดดเด่นเป็นพิเศษ ช่วยให้ผู้ใช้สามารถตั้งโปรแกรมฮาร์ดแวร์เป้าหมายจากระยะไกลโดยใช้กระบวนการที่ไม่ซับซ้อน:
- โค้ดได้รับการพัฒนาโดยใช้ MPLAB X และคอมไพล์เป็นไฟล์ .ptg hex ที่สรุปโค้ด ข้อมูล และข้อมูลการกำหนดค่า
- ไฟล์ hex จะถูกดาวน์โหลดลงในการ์ด microSDHC ที่เสียบอยู่ใน MPLAB PICkit 5
- การ์ด microSDHC สามารถรองรับไฟล์ hex ได้หลายไฟล์ ทำให้ผู้ใช้มีความยืดหยุ่นในการเขียนโปรแกรมอุปกรณ์เป้าหมาย
- MPLAB PICkit 5 เสียบเข้ากับฮาร์ดแวร์เป้าหมาย
- เมื่อใช้แอปสมาร์ทโฟน ผู้ใช้จะเลือกภาพโปรแกรมที่บันทึกไว้ในการ์ดหน่วยความจำเพื่อตั้งโปรแกรมเป้าหมาย
รูปที่ 3: แอปสมาร์ทโฟน MPLAB PTG มีอินเทอร์เฟซที่ตรงไปตรงมา (แหล่งที่มาภาพ: Microchip Technology)
MPLAB PTG มีประโยชน์อย่างยิ่งในการตั้งค่าระยะไกลหรือแบบเคลื่อนที่ซึ่งอุปกรณ์เพิ่มเติมไม่สามารถใช้งานได้ สามารถตั้งโปรแกรมอุปกรณ์ในภาคสนามได้โดยตรงโดยไม่ต้องใช้คอมพิวเตอร์ ทำให้ MPLAB PICkit 5 กลายเป็นเครื่องมือเขียนโปรแกรมแบบสแตนด์อโลนได้อย่างมีประสิทธิภาพ
สำหรับนักพัฒนา สิ่งนี้อำนวยความสะดวกในการอัพเดตเฟิร์มแวร์ในสถานที่อย่างรวดเร็ว เร่งวงจรการพัฒนา และลดเวลาในการออกสู่ตลาด จากนั้นช่างเทคนิคจะสามารถใช้ MPLAB PTG เพื่ออัปเดตอุปกรณ์ภาคสนามอื่นๆ ซึ่งช่วยให้สามารถเปิดตัวการอัพเกรดผลิตภัณฑ์ได้อย่างรวดเร็ว เครื่องมือนี้ยังมีประโยชน์สำหรับสถานการณ์ฉุกเฉินที่จำเป็นต้องตั้งโปรแกรมใหม่อย่างรวดเร็วเพื่อคืนค่าฟังก์ชันการทำงานของอุปกรณ์
เริ่มต้นใช้งาน MPLAB PICkit 5
การใช้ MPLAB PICkit 5 กับ MPLAB X IDE เป็นกระบวนการที่นักพัฒนาแบบฝังควรคุ้นเคย ขั้นตอนพื้นฐานมีดังนี้:
- การติดตั้ง: ต้องติดตั้ง MPLAB X IDE เวอร์ชันล่าสุด โดยปกติแล้ว MPLAB PICkit 5 จะรองรับโดยไม่ต้องใช้ไดรเวอร์เพิ่มเติม แต่นักพัฒนาควรตรวจสอบเว็บไซต์ Microchip Technology เพื่อดูข้อมูลล่าสุด
- การตั้งค่าโปรเจ็กต์: สามารถเลือก PICkit 5 เป็นเครื่องมือฮาร์ดแวร์สำหรับการเขียนโปรแกรมและการดีบักเมื่อสร้างโปรเจ็กต์ใหม่ ตัวเลือกนี้ทำขึ้นภายในคุณสมบัติของโครงการภายใต้หมวดหมู่ "เครื่องมือฮาร์ดแวร์"
- การเขียนโปรแกรม: เมื่อกำหนดค่าโปรเจ็กต์และเตรียมโค้ดแล้ว MCU อาจถูกตั้งโปรแกรมโดยเปิดใช้งานปุ่ม "สร้างและตั้งโปรแกรมอุปกรณ์"
MPLAB IPE นำเสนอกระบวนการที่ตรงไปตรงมามากขึ้นสำหรับช่างเทคนิคในสภาพแวดล้อมการผลิต ขั้นตอนสำคัญในการใช้เครื่องมือนี้มีดังนี้:
- การกำหนดค่า: ควรเลือก MPLAB PICkit 5 จากเครื่องมือที่มีอยู่ จากนั้นจะต้องเลือกอุปกรณ์เป้าหมาย (รุ่น MCU) และไฟล์ฐานสิบหกสำหรับการเขียนโปรแกรม
- การเขียนโปรแกรม: เมื่อเลือกอุปกรณ์และไฟล์ hex แล้ว MCU อาจตั้งโปรแกรมได้โดยการกดปุ่ม "โปรแกรม" หากจำเป็น MPLAB IPE จะลบอุปกรณ์เป้าหมาย ตั้งโปรแกรม และตรวจสอบการเขียนโปรแกรม
ในสภาพแวดล้อมใดสภาพแวดล้อมหนึ่ง ผู้ใช้มักจะประสบปัญหาทางเทคนิค บ่อยครั้งปัญหาเหล่านี้มีสาเหตุมาจากปัญหาง่ายๆ ที่สามารถแก้ไขได้ดังนี้
- ตรวจสอบการเชื่อมต่อที่เหมาะสม: นักพัฒนาควรตรวจสอบการเชื่อมต่อกับโฮสต์และอุปกรณ์เป้าหมาย หากใช้อินเทอร์เฟซ ICSP ควรให้ความสนใจกับการวางแนวของตัวเชื่อมต่อ
- ตรวจสอบการตั้งค่าพลังงาน: ควรตรวจสอบการตั้งค่าพลังงาน อุปกรณ์บางอย่างอาจใช้พลังงานโดยตรงจาก MPLAB PICkit 5 ในขณะที่อุปกรณ์อื่น ๆ อาจต้องใช้พลังงานจากภายนอก
- อัปเดตเฟิร์มแวร์: Microchip Technology จะเผยแพร่การอัปเดตเฟิร์มแวร์สำหรับ MPLAB PICkit 5 เป็นระยะ ๆ นักพัฒนาควรตรวจสอบให้แน่ใจว่าได้ติดตั้งเวอร์ชันล่าสุดแล้ว
ชุดพัฒนาที่เข้ากันได้กับ MPLAB PICkit 5
MPLAB PICkit 5 เข้ากันได้กับชุดพัฒนาต่าง ๆ ที่ออกแบบมาเพื่อการเรียนรู้ การสร้างต้นแบบ และการพัฒนาแอปพลิเคชัน ตัวอย่างเช่น บอร์ดพัฒนา Curiosity Low Pin Count (LPC) เช่น DM164137 ซึ่งรองรับ 8, 14 หรือ 20 พิน ได้รับการออกแบบมาเพื่อการทดลองกับ PIC MCU บอร์ดเหล่านี้มักจะมีโปรแกรมเมอร์และดีบักเกอร์ในตัว แต่เครื่องมือภายนอก เช่น MPLAB PICkit 5 สามารถนำเสนอคุณสมบัติเพิ่มเติมได้ นักพัฒนาควรตรวจสอบว่าสามารถตัดการเชื่อมต่อโปรแกรมเมอร์ออนบอร์ดผ่านตัวเลือกจัมเปอร์ได้หรือไม่
บอร์ดประเมินผล Xpress เช่น DM164140 สำหรับ PIC16F18855 ก็เป็นอีกตัวอย่างหนึ่ง บอร์ดเหล่านี้ได้รับการออกแบบสำหรับการสร้างต้นแบบอย่างรวดเร็วด้วย MCU PIC เฉพาะ มาพร้อมกับโปรแกรมเมอร์และดีบักเกอร์ในตัว แต่นักพัฒนาอาจใช้ MPLAB PICkit 5 เพื่อความสอดคล้องกันในโปรเจ็กต์ต่างๆ หรือเพื่อคุณสมบัติเฉพาะของดีบักเกอร์นี้
ไมโครชิปเทคโนโลยียังมีชุดอุปกรณ์เริ่มต้น เช่น DM320105 บอร์ดประเมินผล PIC32MX XLP ที่ให้ฮาร์ดแวร์และซอฟต์แวร์ที่จำเป็นในการเริ่มการพัฒนาอย่างรวดเร็ว MPLAB PICkit 5 จะมีประโยชน์สำหรับการเขียนโปรแกรมและแก้ไขจุดบกพร่อง MCU ที่รวมอยู่ในชุดอุปกรณ์เหล่านี้ โดยมอบประสบการณ์ที่ราบรื่น
สรุป
ICD สมัยใหม่สามารถช่วยให้นักพัฒนาเร่งวงจรการพัฒนาและเปิดตัวการอัปเดตผลิตภัณฑ์ในภาคสนามได้ MPLAB PICkit 5 รองรับอุปกรณ์เป้าหมาย ตัวเลือกการเชื่อมต่อ และเครื่องมือซอฟต์แวร์ที่หลากหลายมากกว่าตัวดีบักเกอร์รุ่นก่อนๆ ทำให้มีความยืดหยุ่นและประโยชน์ใช้สอยในระดับสูง แอปสมาร์ทโฟนมีความโดดเด่นเป็นพิเศษ เนื่องจากอนุญาตให้ใช้ MPLAB PICkit 5 ในการตั้งค่าที่ยากต่อการเข้าถึงด้วยดีบักเกอร์แบบเดิม

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.