โลโก้ PEmicro

ซอฟต์แวร์การเขียนโปรแกรมแฟลช PEmicro CPROG16Z

PEmicro-CPROG16Z-Flash-การเขียนโปรแกรม-ซอฟต์แวร์-ผลิตภัณฑ์

ข้อมูลสินค้า

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 ช่วยให้คุณสามารถเลือกหมายเลขพอร์ตหรือชื่อตามประเภทอินเทอร์เฟซที่เลือก

คำแนะนำการใช้ผลิตภัณฑ์

  1. เชื่อมต่ออินเทอร์เฟซฮาร์ดแวร์ระหว่างพีซีของคุณกับ MCU เป้าหมายผ่านสายแพดีบั๊ก
  2. เริ่มต้นซอฟต์แวร์การเขียนโปรแกรมโดยเรียกใช้จากพรอมต์คำสั่งของ Windows หรือโดยการเรียกโปรแกรมปฏิบัติการ CPROG16Z ด้วยพารามิเตอร์บรรทัดคำสั่งที่ถูกต้อง
  3. ใช้พารามิเตอร์บรรทัดคำสั่งที่อนุญาตเพื่อแก้ไขสคริปต์ที่เรียกใช้งาน และเลือกอินเทอร์เฟซและหมายเลขพอร์ตหรือชื่อที่เหมาะสม
  4. หากจำเป็น ให้ใช้พารามิเตอร์ [?/!] เพื่อแสดงผลการตั้งโปรแกรมในหน้าต่าง PROG16Z
  5. อ้างถึงส่วนที่ 7 – ตัวอย่างample สคริปต์การเขียนโปรแกรม File สำหรับอดีตampเลอของ file ประกอบด้วยคำสั่งการเขียนโปรแกรมและข้อคิดเห็น
  6. โปรดดูส่วนที่ 8 – การใช้พารามิเตอร์ CommandLine ในสคริปต์สำหรับตัวอย่างampเกี่ยวกับวิธีการใช้พารามิเตอร์บรรทัดคำสั่ง [/PARAMn=s] เพื่อแก้ไขสคริปต์ที่กำลังดำเนินการ
  7. หากเชื่อมต่อหลายยูนิตเข้ากับพีซีเครื่องเดียวกัน ให้ใช้พารามิเตอร์ [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, ซอฟต์แวร์การเขียนโปรแกรมแฟลช, ซอฟต์แวร์การเขียนโปรแกรม, ซอฟต์แวร์

อ้างอิง

ฝากความคิดเห็น

ที่อยู่อีเมลของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องกรอกข้อมูลมีเครื่องหมาย *