ซอฟต์แวร์การเขียนโปรแกรมแฟลช PEmicro CPROG16Z
ข้อมูลสินค้า
CPROG16Z คือโปรแกรมเมอร์บรรทัดคำสั่งที่ออกแบบมาเพื่อเชื่อมต่อพีซีของคุณกับ MCU เป้าหมายสำหรับการเขียนโปรแกรม มาพร้อมกับสายริบบิ้นดีบักสำหรับเชื่อมต่ออินเทอร์เฟซฮาร์ดแวร์ระหว่างพีซีของคุณกับ MCU เป้าหมาย ซอฟต์แวร์การเขียนโปรแกรมสามารถเริ่มต้นได้โดยการเรียกใช้จากพรอมต์คำสั่งของ Windows หรือโดยการเรียกโปรแกรมปฏิบัติการ CPROG16Z ด้วยพารามิเตอร์บรรทัดคำสั่งที่ถูกต้อง พารามิเตอร์บรรทัดคำสั่งที่อนุญาตได้แก่: [?/!], [fileชื่อ], [/PARAMn=s], [v], [reset_delay n], [bdm_speed n], [hideapp], [ความถี่ n], [อินเทอร์เฟซ=x], [พอร์ต=y], [showports] และ [/บันทึกfile บันทึกfileชื่อ]. พารามิเตอร์เหล่านี้สามารถแก้ไขสคริปต์ที่กำลังดำเนินการได้โดยการแทนที่แบบพิเศษ tagsแทนที่ส่วนใดส่วนหนึ่งของสคริปต์รวมถึงคำสั่งการเขียนโปรแกรม fileชื่อและพารามิเตอร์ พร้อมทั้งระบุวิธีการแสดงผลการโปรแกรม พารามิเตอร์ INTERFACE=x อนุญาตให้คุณเลือกหนึ่งในอินเทอร์เฟซต่อไปนี้: USB MULTILINK, PARALLEL, ที่อยู่ IP ของอีเทอร์เน็ต, NAME และ UNIQUEID พารามิเตอร์ PORT=y ช่วยให้คุณสามารถเลือกหมายเลขพอร์ตหรือชื่อตามประเภทอินเทอร์เฟซที่เลือก
คำแนะนำการใช้ผลิตภัณฑ์
- เชื่อมต่ออินเทอร์เฟซฮาร์ดแวร์ระหว่างพีซีของคุณกับ MCU เป้าหมายผ่านสายแพดีบั๊ก
- เริ่มต้นซอฟต์แวร์การเขียนโปรแกรมโดยเรียกใช้จากพรอมต์คำสั่งของ Windows หรือโดยการเรียกโปรแกรมปฏิบัติการ CPROG16Z ด้วยพารามิเตอร์บรรทัดคำสั่งที่ถูกต้อง
- ใช้พารามิเตอร์บรรทัดคำสั่งที่อนุญาตเพื่อแก้ไขสคริปต์ที่เรียกใช้งาน และเลือกอินเทอร์เฟซและหมายเลขพอร์ตหรือชื่อที่เหมาะสม
- หากจำเป็น ให้ใช้พารามิเตอร์ [?/!] เพื่อแสดงผลการตั้งโปรแกรมในหน้าต่าง PROG16Z
- อ้างถึงส่วนที่ 7 – ตัวอย่างample สคริปต์การเขียนโปรแกรม File สำหรับอดีตampเลอของ file ประกอบด้วยคำสั่งการเขียนโปรแกรมและข้อคิดเห็น
- โปรดดูส่วนที่ 8 – การใช้พารามิเตอร์ CommandLine ในสคริปต์สำหรับตัวอย่างampเกี่ยวกับวิธีการใช้พารามิเตอร์บรรทัดคำสั่ง [/PARAMn=s] เพื่อแก้ไขสคริปต์ที่กำลังดำเนินการ
- หากเชื่อมต่อหลายยูนิตเข้ากับพีซีเครื่องเดียวกัน ให้ใช้พารามิเตอร์ [showports] เพื่อเลือกยูนิตที่เหมาะสมตามหมายเลขพอร์ตหรือชื่อ
การแนะนำ
CPROG16Z เป็นเวอร์ชันบรรทัดคำสั่งของ Windows ของซอฟต์แวร์ PROG16Z ซึ่งตั้งโปรแกรม Flash, EEPROM, EPROM ฯลฯ ผ่านอินเทอร์เฟซฮาร์ดแวร์ PEmicro ไปยังโปรเซสเซอร์ NXP 68HC16 ที่รองรับ อินเทอร์เฟซฮาร์ดแวร์มีให้จาก PEmicro เมื่อฮาร์ดแวร์อินเทอร์เฟซของคุณเชื่อมต่ออย่างเหมาะสมระหว่างพีซีและอุปกรณ์เป้าหมายของคุณแล้ว คุณสามารถเปิดโปรแกรมปฏิบัติการ CPROG16Z ได้จากบรรทัดคำสั่ง นอกจากปฏิบัติการแล้ว ยังต้องส่งพารามิเตอร์บรรทัดคำสั่งหลายรายการเพื่อกำหนดค่าอินเทอร์เฟซฮาร์ดแวร์ PEmicro CPROG16Z ใดที่ควรพยายามเชื่อมต่อ และเพื่อกำหนดค่าวิธีที่ฮาร์ดแวร์อินเทอร์เฟซจะเชื่อมต่อกับอุปกรณ์เป้าหมาย พารามิเตอร์เหล่านี้รวมถึงชื่อของการกำหนดค่า (.CFG) fileเช่นเดียวกับคำสั่งเริ่มต้น เช่น ชื่อของอินเทอร์เฟซฮาร์ดแวร์หรือพอร์ตที่เชื่อมต่อกับอินเทอร์เฟซ .CFG file ระบุวิธีการตั้งโปรแกรมเป้าหมายตามที่คุณต้องการ และรวมถึงคำสั่งโปรแกรมมาตรฐาน และทางเลือก คำสั่งคอนฟิกูเรชัน บทต่อไปนี้จะให้คำอธิบายโดยละเอียดเกี่ยวกับคำสั่งและพารามิเตอร์เหล่านี้
การเริ่มต้น
- เชื่อมต่ออินเทอร์เฟซฮาร์ดแวร์ระหว่างพีซีของคุณกับ MCU เป้าหมายผ่านสายแพดีบั๊ก
- เริ่มต้นซอฟต์แวร์การเขียนโปรแกรมโดยเรียกใช้จากพรอมต์คำสั่งของ Windows หรือโดยการเรียกโปรแกรมปฏิบัติการ CPROG16Z ด้วยพารามิเตอร์บรรทัดคำสั่งที่ถูกต้อง พารามิเตอร์บรรทัดคำสั่งที่อนุญาตคือ:
CPROG16Z [?/!] [fileชื่อ] [/PARAMn=s] [v] [reset_delay n] [bdm_speed n] [hideapp] [ความถี่ n] [อินเทอร์เฟซ = x] [พอร์ต = y] [showports] [/logfile บันทึกfileชื่อ] ที่ไหน:
- - ใช้ '?' หรือ' '!' ตัวเลือกอักขระเพื่อทำให้โปรแกรมเมอร์บรรทัดคำสั่งรอและแสดงผลการเขียนโปรแกรมในหน้าต่าง PROG16Z - จะแสดงผลลัพธ์เสมอ '!' จะแสดงผลลัพธ์เฉพาะในกรณีที่มีข้อผิดพลาดเกิดขึ้น หากผู้ใช้ไม่ได้ใช้เป็นชุด file เพื่อทดสอบระดับข้อผิดพลาด วิธีนี้จะให้วิธีการแสดงผลการเขียนโปรแกรม ตัวเลือกนี้ควรเป็นตัวเลือกบรรทัดคำสั่งแรก
- [fileชื่อ]: A file มีคำสั่งการเขียนโปรแกรมและข้อคิดเห็น ค่าเริ่มต้น = prog.cfg ดูส่วนที่ 7 - เช่นample สคริปต์การเขียนโปรแกรม File สำหรับอดีตampเล.
- [/PARAMn=s]: พารามิเตอร์บรรทัดคำสั่งที่สามารถแก้ไขสคริปต์การดำเนินการได้โดยการแทนที่แบบพิเศษ tags (/พาแรมน). สามารถใช้แทนส่วนใดก็ได้ของสคริปต์ รวมทั้งคำสั่งโปรแกรม fileชื่อ และพารามิเตอร์ ค่าที่ถูกต้องของ n คือ 0..9 s คือสตริงที่จะแทนที่ /PARAMn ที่เกิดขึ้นในสคริปต์ file- ส่วนที่ 8 – การใช้พารามิเตอร์บรรทัดคำสั่งในสคริปต์มีตัวอย่างampสำหรับการใช้งาน
- [อินเทอร์เฟซ=x]: โดยที่ x คือข้อใดข้อหนึ่งต่อไปนี้: (ดูตัวอย่างampส่วนไฟล์) USB MULTILINK (การตั้งค่านี้ยังรองรับ OSBDM) PARALLEL (พอร์ตขนานหรือ BDM Lightning [Legacy])
- [พอร์ต=y]: โดยที่ค่า y เป็นหนึ่งในค่าต่อไปนี้ (ดูพารามิเตอร์บรรทัดคำสั่ง show ports สำหรับรายการฮาร์ดแวร์ที่เชื่อมต่อ โดยระบุประเภท "อินเทอร์เฟซ" เสมอด้วย):
- ยูเอสบีx: โดยที่ x = 1,2,3 หรือ 4 แสดงถึงหมายเลขการแจงนับสำหรับฮาร์ดแวร์แต่ละชิ้นเริ่มต้นที่ 1 มีประโยชน์หากพยายามเชื่อมต่อกับผลิตภัณฑ์ Cyclone หรือ Multilink หากเชื่อมต่อฮาร์ดแวร์เพียงชิ้นเดียว อุปกรณ์จะระบุเป็น USB1 เสมอ อดีตampเพื่อเลือก Multilink แรกที่พบคือ: INTERFACE=USBMULTILINK PORT=USB1
- - ที่อยู่ IP ของอีเทอร์เน็ต #.#.#.# สัญลักษณ์ # แต่ละตัวแสดงถึงเลขทศนิยมระหว่าง 0 ถึง 255 ใช้ได้กับอินเทอร์เฟซ Cyclone และ Tracelink การเชื่อมต่อทำผ่านอีเธอร์เน็ต อินเทอร์เฟซ=พอร์ตไซโคลน=10.0.1.223
- ชื่อ: ผลิตภัณฑ์บางอย่าง เช่น ลิงก์ Cyclone และ Trace รองรับการกำหนดชื่อให้กับหน่วย เช่น "Joe's Max" พายุไซโคลนอาจเรียกตามชื่อที่ได้รับมอบหมาย หากมีการเว้นวรรคในชื่อ พารามิเตอร์ทั้งหมดควรอยู่ในเครื่องหมายคำพูดคู่ (นี่คือข้อกำหนดของ Windows ไม่ใช่ข้อกำหนด PEmicro)
- Exampเลส: INTERFACE=CYCLONE PORT=MyCyclone99 INTERFACE=CYCLONE “PORT=Joe's Cyclone”
- มีเอกลักษณ์: ผลิตภัณฑ์ ID USB Multilink ทั้งหมดจะมีหมายเลขประจำเครื่องที่ไม่ซ้ำกัน เช่น PE5650030 Multilink อาจเรียกว่าหมายเลขนี้ สิ่งนี้มีประโยชน์ในกรณีที่เชื่อมต่อหลายยูนิตเข้ากับพีซีเครื่องเดียวกัน
- Exampเลส: อินเทอร์เฟซ=พอร์ต USBMULTILINK=PE5650030
- คอมเอ็กซ์: โดยที่ x = 1,2,3 หรือ 4 แสดงถึงหมายเลขพอร์ต COM ใช้ได้กับอินเทอร์เฟซ Cyclone การต่อ Cyclone บน COM1 : INTERFACE=CYCLONE PORT=COM1
- x: โดยที่ x = 1,2,3 หรือ 4 หมายถึงหมายเลขพอร์ตขนาน ในการเลือกอินเทอร์เฟซแบบขนานบนพอร์ตขนาน #1: INTERFACE=PARALLEL PORT=1
- PCIx: โดยที่ x = 1,2,3 หรือ 4 หมายถึงหมายเลขการ์ด BDM Lightning (หมายเหตุ: นี่เป็นผลิตภัณฑ์รุ่นเก่า) หากต้องการเลือกสายเคเบิลแบบขนานบน BDM Lightning #1: INTERFACE=PARALLEL PORT=PCI1
- [โชว์พอร์ต]: โปรแกรมเมอร์บรรทัดคำสั่งส่งออกพอร์ตที่มีอยู่ทั้งหมดเป็นข้อความ file แล้วยุติ (โดยไม่คำนึงถึงพารามิเตอร์บรรทัดคำสั่งอื่น ๆ ) ข้อมูลนี้ส่งออกเป็นข้อความ file รวมถึงพารามิเตอร์ที่จำเป็นในการติดต่อฮาร์ดแวร์การเขียนโปรแกรมที่แนบมาตลอดจนคำอธิบายของอินเทอร์เฟซฮาร์ดแวร์ เอาต์พุตเริ่มต้น fileชื่อ ports.txt และถูกสร้างขึ้นในโฟลเดอร์เดียวกับ CPROG เอาต์พุตยังสามารถกำหนดทิศทางไปที่อื่นได้ file.
- Exampเลอ: SHOWPORTS=C:\MYPORTS.TXT รายการนี้จะไม่แสดงตัวเลือกพอร์ตขนานหรือพอร์ต COM ที่พร้อมใช้งานเช่นกัน ด้านล่างคืออดีตampไฟล์เอาต์พุตสำหรับอินเทอร์เฟซฮาร์ดแวร์ต่างๆ ที่เชื่อมต่อกับพีซี (โปรดทราบว่ามีวิธีที่แตกต่างกันในการจัดการกับยูนิตเดียวกัน ข้อมูลสำหรับแต่ละอินเทอร์เฟซอาจตามด้วยบรรทัด [DUPLICATE] ซึ่งแสดงป้ายกำกับที่แตกต่างกันสำหรับอินเทอร์เฟซเดียวกัน)
Showports เอาท์พุต เช่นampเลอ:
อินเทอร์เฟซ=พอร์ต USBMULTILINK=PE5650030
- USB1: Multilink Universal FX Rev A (PE5650030)[PortNum=21] INTERFACE=USBMULTILINK PORT=USB1
- USB1: Multilink Universal FX Rev A (PE5650030)[PortNum=21][ซ้ำกัน]
- [วี]: ทำให้โปรแกรมเมอร์ไม่ตรวจสอบช่วงของที่อยู่ S-record ก่อนที่จะตั้งโปรแกรมหรือตรวจสอบ สิ่งนี้จะเร่งกระบวนการเขียนโปรแกรมให้เร็วขึ้น ควรใช้ตัวเลือกนี้ด้วยความระมัดระวัง เนื่องจากบันทึก s ที่อยู่นอกช่วงทั้งหมดจะถูกละเว้น
- [รีเซ็ต_ดีเลย์ n]: ระบุความล่าช้าหลังจากที่โปรแกรมเมอร์รีเซ็ตเป้าหมายที่เราตรวจสอบเพื่อดูว่าชิ้นส่วนเข้าสู่โหมดดีบักเบื้องหลังอย่างถูกต้องหรือไม่ สิ่งนี้มีประโยชน์หากเป้าหมายมีไดรเวอร์รีเซ็ตซึ่งจะเก็บ MCU ไว้ในการรีเซ็ตหลังจากที่โปรแกรมเมอร์ปล่อยบรรทัดรีเซ็ต ค่า n คือความล่าช้าในหน่วยมิลลิวินาที
- [bdm_speed น]: ตัวเลือกนี้อนุญาตให้ผู้ใช้ตั้งค่าความเร็วนาฬิกากะ BDM ของอินเทอร์เฟซดีบักของ PEmicro ค่าจำนวนเต็มนี้อาจใช้เพื่อกำหนดความเร็วของการสื่อสารตามสมการต่อไปนี้:
- ยูเอสบี-ML-16/32: (1000000/(N+1)) Hz – ผลิตภัณฑ์รุ่นเก่า
- USB มัลติลิงค์ Universal FX: (25000000/(N+1)) Hz BDM Lightning : (33000000/(2*N+5)) Hz – ผลิตภัณฑ์รุ่นเก่า ค่า n ควรอยู่ระหว่าง 0 ถึง 31 นาฬิกากะนี้จะมีผลหลังจากคำสั่งที่ด้านบนของ อัลกอริธึมการเขียนโปรแกรมจะถูกดำเนินการเพื่อให้คำสั่งเหล่านี้สามารถเพิ่มความถี่เป้าหมายและอนุญาตให้นาฬิกาเปลี่ยนเร็วขึ้น โดยทั่วไปนาฬิกานี้จะต้องไม่เกิน div 4 ของความถี่บัสโปรเซสเซอร์
- [ซ่อนแอพ]: ซึ่งจะทำให้โปรแกรมเมอร์บรรทัดคำสั่งไม่แสดงสถานะภาพขณะทำงานยกเว้นที่จะปรากฏบนแถบงาน แอปพลิเคชัน 32 บิตเท่านั้น!
[ความถี่ n]: ตามค่าเริ่มต้น ซอฟต์แวร์ PROG16Z จะพยายามระบุโดยอัตโนมัติว่าเป้าหมายทำงานเร็วแค่ไหน โดยการโหลดรูทีนการหน่วงเวลาในโปรเซสเซอร์และกำหนดเวลาว่าจะใช้เวลาดำเนินการนานเท่าใด ในเครื่องบางเครื่อง สิ่งนี้อาจทำให้เกิดผลลัพธ์ที่ไม่สอดคล้องกัน ซึ่งอาจส่งผลต่ออัลกอริธึมที่โปรแกรมแฟลชภายใน MCU PEmicro มีกลไกบรรทัดคำสั่งที่ช่วยให้ผู้ใช้สามารถแจ้งซอฟต์แวร์ PROG16Z ได้อย่างชัดเจนว่าโปรเซสเซอร์เป้าหมายทำงานเร็วแค่ไหน ด้วยวิธีนี้ ระยะเวลาในอัลกอริธึมจะแม่นยำ บนบรรทัดคำสั่ง คุณระบุความถี่สัญญาณนาฬิกาภายในเป็นเฮิรตซ์ตามตัวระบุ 'FREQ' โปรดทราบว่าโดยทั่วไป หากคุณใช้อุปกรณ์แฟลชภายนอก MCU พารามิเตอร์การกำหนดเวลานี้ไม่จำเป็น เนื่องจากแฟลชจะจัดการการกำหนดเวลาเอง
[/บันทึกfile บันทึกfileชื่อ]: ตัวเลือกนี้จะเปิดบันทึก file ของชื่อ “ล็อกfile ชื่อ” ซึ่งจะทำให้ข้อมูลใด ๆ ที่เขียนไปยังหน้าต่างสถานะถูกเขียนลงไปด้วย file- “บันทึก filename” ควรเป็นชื่อพาธแบบเต็ม เช่น c:\mydir\mysubdir\mylog.log.
บรรทัดคำสั่ง เช่นampเลส:
CPROG16Z C:\ENGINE.CFG INTERFACE=พอร์ต USBMULTILINK=PE5650030
เปิด CPROG16Z ด้วยตัวเลือกต่อไปนี้:
- เรียกใช้ C:สคริปต์ \ENGINE.CFG
- อินเทอร์เฟซเป็น USB Multilink Universal FX ตัวแรกที่มีหมายเลขซีเรียล PE5650030
- ตรวจจับความถี่การสื่อสารอัตโนมัติ (ไม่ได้ตั้งค่า io_delay_cnt) CPROG16Z C:\ENGINE.CFG Interface=USBMULTILINK Port=USB1
เปิด CPROG16Z ด้วยตัวเลือกต่อไปนี้:
- เรียกใช้ C:สคริปต์ \ENGINE.CFG
- อินเทอร์เฟซคือ USB Multilink Universal FX ซึ่งเป็นอินเทอร์เฟซแรกที่ตรวจพบ
คำสั่งการเขียนโปรแกรม
คำสั่งการเขียนโปรแกรมทั้งหมดเริ่มต้นด้วยลำดับอักขระสองตัวตามด้วยช่องว่าง (ช่องว่างหรือแท็บ) บรรทัดที่ขึ้นต้นด้วยอักขระที่ไม่ใช่คำสั่งจะแสดงเป็น REMark ระยะ fileชื่อหมายถึงเส้นทาง DOS แบบเต็มไปยัง file- คำสั่งใช้รหัสตัวอักษรสองตัวเดียวกันกับที่ใช้ในโปรแกรมเมอร์แบบโต้ตอบ PROG16Z .16P เหมือนกัน fileที่ใช้โดย PROG16Z ใช้สำหรับตั้งค่าอุปกรณ์เฉพาะที่จะโปรแกรม หากมีการระบุฟังก์ชันผู้ใช้สำหรับอุปกรณ์เฉพาะ คำสั่งอักขระสองตัวและความหมายหรือ user_par จะถูกระบุใน .16P file.
- บันทึก: พารามิเตอร์คำสั่ง beginning_addr, ending_addr, base_addr, byte, word และ user_par ใช้รูปแบบเลขฐานสิบหกดีฟอลต์
- บีเอ็ม : โมดูลตรวจสอบว่างเปล่า
- BR beginning_addr ending_addr: ช่วงตรวจสอบว่างเปล่า
- เปลี่ยน n.nn: (เฉพาะพายุไซโคลนเท่านั้น) เปลี่ยนระดับเสียงtage ให้แก่เป้าหมาย โดยที่ n.nn แทนค่าระหว่าง 0.00 ถึง 5.00 รวมอยู่ด้วย เมื่อคำสั่งดำเนินการ Cyclone จะเปลี่ยนเป็นฉบับนั้นทันทีtagอี ถ้ารีเลย์ไซโคลนปิดก่อนที่จะเรียกคำสั่งนี้ รีเลย์จะเปิดและตั้งค่าโวลลุ่มใหม่tagค่า e เมื่อดำเนินการคำสั่งนี้ โปรดทราบว่าปริมาตรต่ำเกินไปtagค่า e อาจทำให้อุปกรณ์เข้าสู่โหมดพลังงานต่ำซึ่งอาจสูญเสียการสื่อสารในการดีบักโดยสิ้นเชิง ตรวจสอบให้แน่ใจว่าการตั้งค่าจัมเปอร์ของ Cyclone ได้รับการตั้งค่าอย่างถูกต้องเพื่อส่งพลังงานไปยังพอร์ตที่ถูกต้อง
- EB beginning_addr ending_addr: ลบช่วงไบต์
- EW beginning_addr ending_addr: ลบช่วงคำ
- อีเอ็ม – ลบโมดูล
- PB beginning_addr ไบต์ … ไบต์ – ไบต์ของโปรแกรม
- PW beginning_addr คำ … คำ – คำโปรแกรม
- นายกฯ – โมดูลโปรแกรม
- CM fileชื่อ base_addr – เลือกโมดูล .16P file. หมายเหตุ: บางโมดูลอาจต้องระบุที่อยู่ฐาน
- วีเอ็ม – ตรวจสอบโมดูล
- VR beginning_addr ending_addr – ตรวจสอบช่วง
- UM fileชื่อ - อัพโหลดโมดูล
- UR เริ่มต้น_addr สิ้นสุด_addr fileชื่อ - ช่วงการอัปโหลด
- SS fileชื่อ - ระบุบันทึก S SM beginning_addr ending_addr – แสดงโมดูล
- รีเลย์ออฟ – (มัลติลิงค์ FX และไซโคลนเท่านั้น) ปิดรีเลย์ที่จ่ายไฟให้กับเป้าหมาย รวมถึงการหน่วงเวลาการปิดเครื่องหากระบุไว้ มีประโยชน์อย่างยิ่งสำหรับผู้ใช้ที่ต้องการจ่ายไฟให้กับบอร์ดก่อนทำการทดสอบ อนุญาตให้บูตโหลดเดอร์ทำงาน หรือให้โค้ดแอปพลิเคชันทำงานหลังจากตั้งโปรแกรม
- รีเลย์ – (มัลติลิงค์ FX และไซโคลนเท่านั้น) เปิดรีเลย์เพื่อจ่ายไฟให้กับเป้าหมาย รวมถึงการหน่วงเวลาการเปิดเครื่อง หากระบุไว้ ฉบับที่tage ที่ให้มาจะอ้างอิงจากเล่มล่าสุดtagระบุการตั้งค่า e สำหรับผู้ใช้ Cyclone คำสั่ง CHANGEV สามารถเปลี่ยนปริมาตรtagค่าอี มีประโยชน์อย่างยิ่งสำหรับผู้ใช้ที่ต้องการเปิดวงจรการทำงานของบอร์ดก่อนรันการทดสอบ อนุญาตให้ bootloader ทำงาน หรือให้โค้ดแอปพลิเคชันรันหลังจากตั้งโปรแกรม
- เขา - ช่วยเหลือ (ดูที่ cprog.doc file).
- คิว – ล้มเลิก.
- อีกครั้ง - รีเซ็ตชิป
- ไป - เริ่มการทำงานของอุปกรณ์ สามารถใช้เป็นคำสั่งสุดท้ายได้หากคุณต้องการให้อุปกรณ์ทำการทดสอบ ควรนำหน้าด้วยคำสั่ง 'RE' ทันที
- DE เวลา – หน่วงเวลา "timeinms" มิลลิวินาที
- xx user_par – สำหรับฟังก์ชั่นผู้ใช้ที่ระบุใน .16P เท่านั้น file.
คำสั่งการกำหนดค่าสำหรับการเริ่มต้น
คำสั่งการกำหนดค่าทั้งหมดได้รับการประมวลผลก่อนที่โปรแกรมเมอร์จะพยายามติดต่อกับเป้าหมาย การกำหนดค่าทั้งหมด file จะถูกแยกวิเคราะห์สำหรับคำสั่งเหล่านี้ก่อนที่จะพยายามสื่อสาร ส่วนนี้ให้มากกว่าview ของการใช้คำสั่งคอนฟิกูเรชันเหล่านี้เพื่อทำคอนฟิกูเรชันประเภทต่างๆ
บันทึก: ฐานดีฟอลต์สำหรับพารามิเตอร์คำสั่งคอนฟิกูเรชันคือฐานสิบ จบแล้วview ของคำสั่งการกำหนดค่ามีดังนี้:
CUSTOMTRIMREF nnnnnnnn.nn
ความถี่สัญญาณนาฬิกาอ้างอิงภายในที่ต้องการสำหรับ “PT; คำสั่งตัดแต่งโปรแกรม” ความถี่นี้จะแทนที่ความถี่สัญญาณนาฬิกาอ้างอิงภายในที่เป็นค่าเริ่มต้น ค่าที่ถูกต้องสำหรับ "n" ขึ้นอยู่กับอุปกรณ์เฉพาะที่กำลังตั้งโปรแกรมไว้ โปรดดูข้อกำหนดทางไฟฟ้าของอุปกรณ์ของคุณสำหรับช่วงสัญญาณนาฬิกาความถี่อ้างอิงภายในที่ถูกต้อง
ที่ไหน: nnnnnnnn.nn: ความถี่เป็นเฮิรตซ์ที่มีทศนิยมสองตำแหน่ง
จัดหาอำนาจ
กำหนดว่าอินเทอร์เฟซควรให้พลังงานแก่เป้าหมายหรือไม่ หมายเหตุ: อินเทอร์เฟซฮาร์ดแวร์บางตัวไม่สนับสนุนคำสั่งนี้ ค่าที่ถูกต้องของ n คือ:
- 0 : อินเทอร์เฟซไม่ได้จ่ายพลังงานให้กับเป้าหมาย (ค่าเริ่มต้น)
- 1 : เปิดใช้งานอินเทอร์เฟซให้พลังแก่เป้าหมาย
- (บันทึก: เหมือนกับตัวเลือกดั้งเดิม :USEPRORELAYS n)
:พาวเวอร์ดาวน์เดลเลย์
ระยะเวลาที่จะหน่วงเวลาเมื่อปิดการจ่ายไฟไปยังเป้าหมายเพื่อให้แหล่งจ่ายไฟเป้าหมายลดลงต่ำกว่า 0.1v n คือเวลาเป็นมิลลิวินาที
:POWERUPDELAY n
ระยะเวลาหน่วงเมื่อเปิดเครื่องไปยังเป้าหมายหรือรีเซ็ตเป้าหมาย และก่อนที่ซอฟต์แวร์จะพยายามพูดคุยกับเป้าหมาย เวลานี้อาจเป็นการรวมกันของเวลาเปิดเครื่องและเวลารีเซ็ต (โดยเฉพาะอย่างยิ่งหากใช้ไดรเวอร์รีเซ็ต) n คือเวลาเป็นมิลลิวินาที
:POWEROFFONEXITn
กำหนดว่าควรปิดไฟที่จ่ายให้กับเป้าหมายเมื่อแอปพลิเคชัน CPROG16Z ยุติลงหรือไม่ หมายเหตุ: อินเทอร์เฟซฮาร์ดแวร์บางตัวไม่รองรับคำสั่งนี้ ค่าที่ถูกต้องของ n คือ:
- 0 : ปิดเครื่องเมื่อออก (ค่าเริ่มต้น)
- 1 : เปิดเครื่องไว้เมื่อออก
การตรวจสอบเสร็จสิ้นview
มีคำสั่งหลายคำสั่งที่สามารถใช้เพื่อตรวจสอบเนื้อหาของแฟลชบนอุปกรณ์หลังจากตั้งโปรแกรมไว้ คำสั่งที่ใช้กันอย่างแพร่หลายคือ “VC ;Verify CRC of Object File สู่โมดูล” คำสั่ง “VC” จะสั่งให้ CPROG16Z คำนวณค่า CRC 16 บิตจากวัตถุที่เลือกก่อน file- จากนั้น CPROG16Z จะโหลดโค้ดลงใน RAM ของอุปกรณ์และสั่งให้อุปกรณ์คำนวณค่า CRC 16 บิตจากเนื้อหาใน FLASH ของอุปกรณ์ เฉพาะช่วงที่อยู่ที่ถูกต้องในวัตถุเท่านั้น file มีการคำนวณบนอุปกรณ์ เมื่อค่า CRC 16 บิตจากวัตถุ file และอุปกรณ์พร้อมใช้งาน CPROG16Z เปรียบเทียบ เกิดข้อผิดพลาดหากค่าทั้งสองไม่ตรงกัน หรืออีกทางหนึ่ง สามารถใช้คำสั่ง “VM ;Verify Module” เพื่อทำการตรวจสอบแบบไบต์ต่อไบต์ระหว่างวัตถุที่เลือกได้ file และอุปกรณ์ โดยทั่วไปแล้ว คำสั่ง VM จะใช้เวลาดำเนินการนานกว่าคำสั่ง VC เนื่องจาก CPROG16Z ต้องอ่านเนื้อหาของ FLASH ของอุปกรณ์ทีละไบต์ นอกจากนี้ยังมีคำสั่งอื่นอีกสองคำสั่งที่สามารถใช้เพื่อการตรวจสอบ “SC ;แสดงโมดูล CRC” สั่งให้ CPROG16Z โหลดโค้ดลงใน RAM ของอุปกรณ์ และสั่งให้อุปกรณ์คำนวณค่า CRC 16 บิตจากเนื้อหาใน FLASH ทั้งหมดของอุปกรณ์ ซึ่งรวมถึงพื้นที่ว่างด้วย เมื่อคำนวณค่า CRC 16 บิตแล้ว CPROG16Z จะแสดงค่าในหน้าต่างสถานะ คำสั่ง “VV ;Verify Module CRC to Value” คล้ายกับคำสั่ง “SC” ความแตกต่างก็คือ แทนที่จะแสดงค่า CRC 16 บิตที่คำนวณได้ CPROG16Z จะเปรียบเทียบค่าที่คำนวณได้กับค่า CRC 16 บิตที่ผู้ใช้กำหนด
ส่งคืนข้อผิดพลาด DOS
มีการส่งคืนข้อผิดพลาดของ DOS เพื่อให้สามารถทดสอบได้ใน .BAT fileส. รหัสข้อผิดพลาด
ที่ใช้คือ:
- 0 – โปรแกรมเสร็จสมบูรณ์โดยไม่มีข้อผิดพลาด
- 1 – ยกเลิกโดยผู้ใช้
- 2 – เกิดข้อผิดพลาดในการอ่านบันทึก S file.
- 3 – ตรวจสอบข้อผิดพลาด
- 4 – ยืนยันการยกเลิกโดยผู้ใช้
- 5 – บันทึก S file ไม่ได้รับการเลือก
- 6 – ที่อยู่เริ่มต้นไม่อยู่ในโมดูล
- 7 – ที่อยู่สิ้นสุดไม่อยู่ในโมดูลหรือน้อยกว่าที่อยู่เริ่มต้น
- 8 – ไม่สามารถเปิดได้ file สำหรับการอัพโหลด
- 9 – File เกิดข้อผิดพลาดในการเขียนระหว่างการอัปโหลด
- 10 – การอัปโหลดถูกยกเลิกโดยผู้ใช้
- 11 – เกิดข้อผิดพลาดในการเปิด .16P file.
- 12 – เกิดข้อผิดพลาดในการอ่าน .16P file.
- 13 – อุปกรณ์ไม่ได้เตรียมใช้งาน
- 14 – เกิดข้อผิดพลาดในการโหลด .16P file.
- 15 – เกิดข้อผิดพลาดในการเปิดใช้งานโมดูลที่เพิ่งเลือก
- 16 – บันทึก S ที่ระบุ file ไม่พบ.
- 17 – พื้นที่บัฟเฟอร์ไม่เพียงพอที่ระบุโดย .16P เพื่อเก็บ file S-บันทึก
- 18 – เกิดข้อผิดพลาดระหว่างการเขียนโปรแกรม
- 19 – ที่อยู่เริ่มต้นไม่ชี้ไปที่โมดูล
- 20 – ข้อผิดพลาดระหว่างการเขียนโปรแกรมไบต์สุดท้าย
- 21 – ที่อยู่โปรแกรมไม่อยู่ในโมดูลอีกต่อไป
- 22 – ที่อยู่เริ่มต้นไม่ได้อยู่ในขอบเขตของคำที่จัดชิดกัน
- 23 – ข้อผิดพลาดระหว่างการเขียนโปรแกรมคำสุดท้าย
- 24 – ไม่สามารถลบโมดูลได้
- 25 – คำโมดูลไม่ถูกลบ
- 26 – เลือก .16P file ไม่ใช้การตรวจสอบไบต์
- 27 – ไบต์โมดูลไม่ถูกลบ
- 28 – ที่อยู่เริ่มต้นของการลบคำต้องเป็นเลขคู่
- 29 – ที่อยู่สิ้นสุดการลบคำต้องเป็นเลขคู่
- 30 – พารามิเตอร์ผู้ใช้ไม่อยู่ในช่วง
- 31 – เกิดข้อผิดพลาดระหว่างฟังก์ชันที่ระบุ .16P
- 32 – พอร์ตที่ระบุไม่พร้อมใช้งานหรือข้อผิดพลาดในการเปิดพอร์ต
- 33 – คำสั่งไม่ทำงานสำหรับ .16P นี้ file.
- 34 – ไม่สามารถเข้าสู่โหมดเบื้องหลังได้ ตรวจสอบการเชื่อมต่อ
- 35 – ไม่สามารถเข้าถึงโปรเซสเซอร์ได้ ลองรีเซ็ตซอฟต์แวร์
- 36 – .16P ไม่ถูกต้อง file.
- 37 – ไม่สามารถเข้าถึง RAM โปรเซสเซอร์ ลองรีเซ็ตซอฟต์แวร์
- 38 – การเริ่มต้นถูกยกเลิกโดยผู้ใช้
- 39 – เกิดข้อผิดพลาดในการแปลงหมายเลขคำสั่งฐานสิบหก
- 40 – การกำหนดค่า file ไม่ระบุและ file ไม่มี prog.cfg
- 41 – .16ป file ไม่ได้มีอยู่.
- 42 – ข้อผิดพลาดในหมายเลข io_delay บนบรรทัดคำสั่ง
- 43 – พารามิเตอร์บรรทัดคำสั่งไม่ถูกต้อง
- 44 – ข้อผิดพลาดในการระบุการหน่วงเวลาทศนิยมเป็นมิลลิวินาที
- 47 – ข้อผิดพลาดในสคริปต์ file.
- 49 – ตรวจไม่พบสายเคเบิล
- 50 – เอส-เรคคอร์ด file ไม่มีข้อมูลที่ถูกต้อง
- 51 - การตรวจสอบความถูกต้องล้มเหลว - ข้อมูลบันทึก S ไม่ตรงกับหน่วยความจำ MCU
- 52 – ต้องเปิดใช้งานการเรียงลำดับเพื่อตรวจสอบผลรวมแฟลช
- 53 – S-Records ไม่อยู่ในช่วงของโมดูลทั้งหมด (ดูพารามิเตอร์บรรทัดคำสั่ง "v")
- 54 – ตรวจพบข้อผิดพลาดในการตั้งค่าบนบรรทัดคำสั่งสำหรับพอร์ต/อินเทอร์เฟซ
- 60 – เกิดข้อผิดพลาดในการคำนวณค่า CRC ของอุปกรณ์
- 61 – ข้อผิดพลาด – CRC ของอุปกรณ์ไม่ตรงกับค่าที่กำหนด
- 70 – ข้อผิดพลาด – CPROG กำลังทำงานอยู่แล้ว
- 71 – ข้อผิดพลาด – ต้องระบุทั้ง INTERFACE และ PORT ในบรรทัดคำสั่ง
- 72 – โปรเซสเซอร์เป้าหมายที่เลือกไม่รองรับอินเทอร์เฟซฮาร์ดแวร์ปัจจุบัน
Example สคริปต์การเขียนโปรแกรม File
สคริปต์การเขียนโปรแกรม file ควรเป็น ASCII บริสุทธิ์ file ด้วยหนึ่งคำสั่งต่อบรรทัด นี่คือ CFG file ในอดีตที่ผ่านมาampเลส.
อดีตampเลอ คือ:
- ซม. ซี:\PEMICRO\9X1__32K.16P 0 ;เลือกโมดูลแฟลช
- อีเอ็ม; ลบโมดูล
- บีเอ็ม; ว่างเปล่า ตรวจสอบโมดูล
- เอสเอสซี:\PEMICRO\TEST.S19 ;ระบุ S19 ที่จะใช้
นายกฯ; ตั้งโปรแกรมโมดูลด้วย S19
วีเอ็ม; ตรวจสอบโมดูลอีกครั้ง
บันทึก: ชื่อเส้นทางของ files ที่สัมพันธ์กับไฟล์เรียกทำงาน CPROG ก็สามารถใช้ได้เช่นกัน
การใช้พารามิเตอร์บรรทัดคำสั่งในสคริปต์
สามารถใช้พารามิเตอร์บรรทัดคำสั่งในรูปแบบของ /PARAMn=s เพื่อแทรกข้อความลงในสคริปต์ file แทนพิเศษ tags. สามารถใช้แทนส่วนใดก็ได้ของสคริปต์ รวมทั้งคำสั่งโปรแกรม fileชื่อและพารามิเตอร์ ค่าที่ถูกต้องของ n คือ 0..9 s เป็นสตริงที่จะแทนที่ /PARAMn ที่เกิดขึ้นในสคริปต์ file. ในฐานะอดีตampโดยทั่วไปแล้ว สคริปต์ทั่วไปต่อไปนี้สามารถใช้สำหรับการเขียนโปรแกรมที่มีฟังก์ชันการทำงานเดียวกันทุกประการampสคริปต์ในส่วนที่ 7 – เช่นample
สคริปต์การเขียนโปรแกรม File:
- ซม. /PARAM1 ;เลือกโมดูลแฟลช
- อีเอ็ม;ลบโมดูล
- บีเอ็ม;ว่างเปล่า ตรวจสอบโมดูล
- เอสเอส /PARAM2; ระบุ S19 ที่จะใช้
- นายกฯ;ตั้งโปรแกรมโมดูลด้วย S19
- /พารามิเตอร์3; ตรวจสอบโมดูลอีกครั้ง
พารามิเตอร์ต่อไปนี้จะถูกเพิ่มในบรรทัดคำสั่ง CPROG:
“/PARAM1=C:\PEMICRO\9X1__32K.16P 0″
/PARAM2=C:\เปมิโคร\TEST.S19
/PARAM3=VM
บันทึก: เนื่องจากพารามิเตอร์ /PARAM1 มีช่องว่างในค่า พารามิเตอร์ทั้งหมดจึงต้องอยู่ในเครื่องหมายคำพูดคู่ สิ่งนี้บ่งชี้ให้ Windows ทราบว่าเป็นพารามิเตอร์เดียว ในกรณีนี้ ที่อยู่ฐาน 0x0 จะรวมอยู่ในบรรทัดเลือกโมดูลในสคริปต์ ดังนั้นจึงต้องระบุ /PARAM1 บนบรรทัดคำสั่งดังนี้:
“/PARAM1=C:\PEMICRO\9X1__32K.16P 0″
ดังนั้นอดีตที่สมบูรณ์ampบรรทัดคำสั่ง le จะเป็น (โปรดทราบว่าสิ่งนี้ต่อเนื่องกัน ไม่มีการขึ้นบรรทัดใหม่):
C:\PEMICRO\CPROG16Z INTERFACE=พอร์ต CYCLONE=USB1 BDM_SPEED 1
C:\PROJECT\GENERIC.CFG “/PARAM1=C:\PEMICRO\9X1__32K.16P 0″ /PARAM2=C:\PEMICRO\TEST.S19 /PARAM3=VM
Sampเลอแบทช์ File
นี่คืออดีตample ของการเรียกโปรแกรมเมอร์บรรทัดคำสั่งและทดสอบการส่งคืนรหัสข้อผิดพลาดเป็นชุดอย่างง่าย file. สampเลอแบทช์ files มีให้สำหรับทั้ง Windows 95/98/XP และ Windows 2000/NT/XP/Vista/7/8/10
วินโดวส์ NT/2000/Vista/7/8/10:
- C:\PROJECT\CPROG16Z C:\PROJECT\ENGINE.CFG INTERFACE=USBMULTILINK PORT=USB1 หากระดับข้อผิดพลาด 1 กลับไปไม่ดี กลับไปดี
- แย่: สะท้อน แย่ แย่ แย่ แย่ แย่ แย่ แย่
- ดี: เอคโค่เสร็จแล้ว
- วินโดวส์ 95/98/ME/XP: START /WC:\PROJECT\CPROG16Z C:\PROJECT\ENGINE.CFG INTERFACE=USBMULTILINK PORT=USB1 ถ้าระดับข้อผิดพลาด 1 กลับไปไม่ดี กลับไปดี
- แย่: สะท้อน แย่ แย่ แย่ แย่ แย่ แย่ แย่
- ดี: เอคโค่เสร็จแล้ว
บันทึก: ชื่อเส้นทางของ files ที่สัมพันธ์กับไฟล์เรียกทำงาน CPROG ก็สามารถใช้ได้เช่นกัน
ข้อมูล
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ CPROG16Z และ PROG16Z โปรดติดต่อเรา:
- P&E Microcomputer Systems, Inc. เสียง: 617-923-0053
- 98 กาเลน เซนต์ โทรสาร: 617-923-0808
- วอเตอร์ทาวน์ MA 02472-4502 WEB: http://www.pemicro.com.
- สหรัฐอเมริกา:
ถึง view คลังโมดูล .16P ทั้งหมดของเรา ไปที่หน้าการสนับสนุนของ PEmicro webไซต์ที่ www.pemicro.com/support.
© 2021 P&E Microcomputer Systems, Inc.
เอกสาร / แหล่งข้อมูล
![]() |
ซอฟต์แวร์การเขียนโปรแกรมแฟลช PEmicro CPROG16Z [พีดีเอฟ] คู่มือการใช้งาน ซอฟต์แวร์การเขียนโปรแกรมแฟลช CPROG16Z, CPROG16Z, ซอฟต์แวร์การเขียนโปรแกรมแฟลช, ซอฟต์แวร์การเขียนโปรแกรม, ซอฟต์แวร์ |