
CPROGHCS08 ซอฟต์แวร์
คู่มือการใช้งาน
เวอร์ชัน 1.05
คู่มือผู้ใช้ CPROGHCS08
การแนะนำ
CPROGHCS08 คือซอฟต์แวร์ PROGHCS08 เวอร์ชันบรรทัดคำสั่งของ Windows ซึ่งใช้โปรแกรม Flash, EEPROM, EPROM เป็นต้น ผ่านอินเทอร์เฟซฮาร์ดแวร์ Pemako ไปยังโปรเซสเซอร์ NXP HCS08 ที่รองรับ อินเทอร์เฟซฮาร์ดแวร์มีจำหน่ายจาก Pemako
เมื่อฮาร์ดแวร์อินเทอร์เฟซของคุณเชื่อมต่อระหว่างพีซีและอุปกรณ์เป้าหมายอย่างถูกต้องแล้ว คุณสามารถเปิดไฟล์ปฏิบัติการ CPROGHCS08 จากบรรทัดคำสั่งได้ นอกจากไฟล์ปฏิบัติการแล้ว ยังต้องส่งพารามิเตอร์บรรทัดคำสั่งหลายรายการเพื่อกำหนดค่าว่าอินเทอร์เฟซฮาร์ดแวร์ Pemako CPROGHCS08 ตัวใดที่จะพยายามเชื่อมต่อ และเพื่อกำหนดค่าว่าอินเทอร์เฟซฮาร์ดแวร์นั้นจะเชื่อมต่อกับอุปกรณ์เป้าหมายอย่างไร พารามิเตอร์เหล่านี้รวมถึงชื่อของการกำหนดค่า (.CFG) fileตลอดจนคำสั่งเริ่มต้น เช่น ชื่อของอินเทอร์เฟซฮาร์ดแวร์หรือพอร์ตที่อินเทอร์เฟซเชื่อมต่ออยู่
.CFG file ระบุวิธีการเขียนโปรแกรมเป้าหมายตามที่คุณตั้งใจไว้ และรวมถึงคำสั่งการเขียนโปรแกรมมาตรฐาน และคำสั่งกำหนดค่า (ตัวเลือก) บทต่อไปนี้จะอธิบายคำสั่งและพารามิเตอร์เหล่านี้โดยละเอียด
การเริ่มต้น
ก. เชื่อมต่ออินเทอร์เฟซฮาร์ดแวร์ระหว่างพีซีของคุณกับ MCU เป้าหมายผ่านสายริบบิ้นดีบัก
ข. เริ่มซอฟต์แวร์การเขียนโปรแกรมโดยเรียกใช้จากพรอมต์คำสั่งของ Windows หรือโดยเรียกใช้ไฟล์ปฏิบัติการ CPROGHCS08 ด้วยพารามิเตอร์บรรทัดคำสั่งที่ถูกต้อง พารามิเตอร์บรรทัดคำสั่งที่อนุญาตคือ:
CPROGHCS08 [?/!] [fileชื่อ] [/PARAM=s] [io_delay_cnt n] [v] [reset delay n] [heap] [fret n] [Interface=x] [port=y] [showboats] [/logfile บันทึก fileชื่อ] ที่ไหน:
- ใช้ตัวเลือกอักขระ "?" หรือ "!" เพื่อให้โปรแกรมเมอร์บรรทัดคำสั่งรอและแสดงผลลัพธ์ของการเขียนโปรแกรมในหน้าต่าง PROGHCS08 "?" จะแสดงผลลัพธ์เสมอ "!" จะแสดงผลลัพธ์เฉพาะเมื่อเกิดข้อผิดพลาด หากผู้ใช้ไม่ได้ใช้ชุดคำสั่ง file เพื่อทดสอบระดับข้อผิดพลาด วิธีนี้จะมีวิธีการแสดงผลลัพธ์ของการเขียนโปรแกรม ตัวเลือกนี้ควรเป็นตัวเลือกบรรทัดคำสั่งแรก
[fileชื่อ]
A file มีคำสั่งการเขียนโปรแกรมและข้อคิดเห็น ค่าเริ่มต้น = prog.cfg ดูส่วนที่ 7 - เช่นample สคริปต์การเขียนโปรแกรม File สำหรับอดีตampเล.
[/PARAM=s] พารามิเตอร์บรรทัดคำสั่งที่สามารถปรับเปลี่ยนสคริปต์เรียกทำงานโดยการแทนที่พิเศษ tags (/PARAM) สามารถใช้แทนส่วนใด ๆ ของสคริปต์ รวมถึงคำสั่งการเขียนโปรแกรม fileชื่อและพารามิเตอร์ ค่าที่ถูกต้องของ n คือ 0..9 s คือสตริงที่จะแทนที่ /PARAM ที่เกิดขึ้นในสคริปต์ fileส่วนที่ 8 – การใช้พารามิเตอร์คำสั่งในสคริปต์มีตัวอย่างampสำหรับการใช้งาน
[อินเทอร์เฟซ=x] โดยที่ x คือข้อใดข้อหนึ่งต่อไปนี้: (ดูตัวอย่างampส่วนเลส)
USBMULTILINK (การตั้งค่านี้รองรับ OSBDM ด้วย) CYCLONE
PARALLEL (พอร์ตขนานหรือ BDM Lightning [รุ่นเก่า]) โดยที่ x = 1,2,3 หรือ 4 แทนหมายเลขการแจงนับสำหรับฮาร์ดแวร์แต่ละชิ้นโดยเริ่มจาก 1 มีประโยชน์หากพยายามเชื่อมต่อกับผลิตภัณฑ์ Cyclone หรือ Multilink หากเชื่อมต่อฮาร์ดแวร์เพียงชิ้นเดียว ระบบจะแจงนับว่าเป็น USB1 เสมอ
อดีตampเพื่อเลือก Multilink แรกที่พบคือ: INTERFACE=USBMULTILINK PORT=USB1
- ที่อยู่ IP อีเทอร์เน็ต #.#.#.#.# สัญลักษณ์ # แต่ละตัวแสดงถึงเลขทศนิยมระหว่าง 0 ถึง 255 ใช้ได้กับอินเทอร์เฟซ Cyclone และ Trace link
การเชื่อมต่อผ่านอีเธอร์เน็ต
อินเทอร์เฟซ=พอร์ตไซโคลน=10.0.1.223
ชื่อ
ผลิตภัณฑ์บางรายการ เช่น ลิงก์ Cyclone และ Trace รองรับการกำหนดชื่อให้กับหน่วย เช่น "Joe's Max" Cyclone อาจได้รับการอ้างถึงตามชื่อที่กำหนด หากมีช่องว่างในชื่อ ควรใส่พารามิเตอร์ทั้งหมดไว้ในเครื่องหมายคำพูดคู่ (นี่เป็นข้อกำหนดของ Windows ไม่ใช่ข้อกำหนดของ Pemako)
Exampเลส:
อินเทอร์เฟซ=พอร์ตไซโคลน=MyCyclone99
INTERFACE=CYCLONE “PORT=พายุไซโคลนของโจ”
ผลิตภัณฑ์ UNIQUEID USB Multilink ทั้งหมดมีหมายเลขซีเรียลเฉพาะที่กำหนดไว้ เช่น PE5650030
Multilink อาจอ้างอิงถึงหมายเลขนี้
สิ่งนี้มีประโยชน์ในกรณีที่หลายยูนิตเชื่อมต่อกับพีซีเครื่องเดียวกัน
Exampเลส:
อินเทอร์เฟซ=พอร์ต USBMULTILINK=PE5650030
คอมมิกซ์ โดยที่ x = 1,2,3 หรือ 4 หมายถึงหมายเลขพอร์ต COM ใช้ได้สำหรับอินเทอร์เฟซ Cyclone
วิธีเชื่อมต่อกับพายุไซโคลนบน COM1:
อินเทอร์เฟซ=พอร์ตไซโคลน=COM1
x โดยที่ x = 1,2,3 หรือ 4 หมายถึงหมายเลขพอร์ตขนาน
เพื่อเลือกอินเทอร์เฟซแบบขนานบน Parallel Port #1 : INTERFACE=PARALLEL PORT=1
หยิบ
โดยที่ 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] ซึ่งแสดงป้ายกำกับที่แตกต่างกันสำหรับอินเทอร์เฟซเดียวกัน)
โชว์โบ๊ทเอาท์พุตampเลอ:
อินเทอร์เฟซ=พอร์ต USBMULTILINK=PE5650030
; USB1 : Multilink Universal FX Rev A (PE5650030)[Partum=21] INTERFACE=USBMULTILINK PORT=USB1
; USB1: Multilink Universal FX Rev A (PE5650030)[Partum=21][DUPLICATE] INTERFACE=CYCLONE PORT=10.0.9.197
; 10.0.9.197 : พายุไซโคลนสาธารณะ [Partum=61] INTERFACE=CYCLONE “PORT=พายุไซโคลนสาธารณะ”
; 10.0.9.197 : พายุไซโคลนสาธารณะ[Partum=61][DUPLICATE] INTERFACE=CYCLONE “PORT=พายุไซโคลนของโจ”
; USB1 : ไซโคลน (ของโจ)[Partum=101] INTERFACE=CYCLONE PORT=USB1
; USB1 : Cyclone (Joe's)[Partum=101][DUPLICATE] [io_delay_cnt n] ตั้งค่าพารามิเตอร์การถ่ายโอนการดีบักเบื้องหลัง n โดยที่ 0<=n<=$7fff นี่คือความเร็วของการสื่อสารแบบอนุกรมบนสายดีบักเบื้องหลัง หากคุณเริ่ม PROGHCS08 โดยไม่ระบุ io_delay_cnt ซอฟต์แวร์จะพยายามค้นหาพารามิเตอร์ n ที่เหมาะสมและแสดงให้คุณเห็นว่ามีการเลือกอะไรไว้สำหรับความถี่สูงที่น้อยกว่าประมาณ 1 MHz สำหรับสายเคเบิลแบบขนานเท่านั้น
[ก] ทำให้โปรแกรมเมอร์ไม่ตรวจสอบช่วงที่อยู่ของ S-record ก่อนการเขียนโปรแกรมหรือการตรวจสอบ วิธีนี้จะช่วยเร่งกระบวนการการเขียนโปรแกรม ควรใช้ตัวเลือกนี้ด้วยความระมัดระวัง เนื่องจาก S-record ที่อยู่นอกช่วงทั้งหมดจะถูกละเว้น
[การรีเซ็ทล่าช้า n] ระบุการหน่วงเวลาหลังจากที่โปรแกรมเมอร์รีเซ็ตเป้าหมาย ซึ่งเราจะตรวจสอบว่าชิ้นส่วนได้เข้าสู่โหมดดีบักเบื้องหลังอย่างถูกต้องหรือไม่ ซึ่งมีประโยชน์หากเป้าหมายมีไดรเวอร์รีเซ็ตที่ยึด MCU ไว้ในการรีเซ็ตหลังจากที่โปรแกรมเมอร์ปล่อยบรรทัดรีเซ็ต ค่า n คือความล่าช้าเป็นมิลลิวินาที
[กอง]
ซึ่งจะทำให้โปรแกรมเมอร์บรรทัดคำสั่งไม่แสดงสถานะภาพขณะทำงานยกเว้นที่จะปรากฏบนแถบงาน แอปพลิเคชัน 32 บิตเท่านั้น!
[ความถี่ n]
โดยค่าเริ่มต้น ซอฟต์แวร์ PROGHCS08 จะพยายามกำหนดโดยอัตโนมัติว่าเป้าหมายกำลังทำงานเร็วแค่ไหนโดยโหลดโปรแกรมหน่วงเวลาในโปรเซสเซอร์และจับเวลาว่าจะใช้เวลาดำเนินการนานเท่าใด ในบางเครื่อง การดำเนินการนี้อาจให้ผลลัพธ์ที่ไม่สอดคล้องกัน ซึ่งอาจส่งผลต่ออัลกอริทึมที่โปรแกรมแฟลชภายใน MCU Pemako จัดเตรียมกลไกบรรทัดคำสั่งที่ให้ผู้ใช้แจ้งซอฟต์แวร์ PROGHCS08 ว่าโปรเซสเซอร์เป้าหมายกำลังทำงานเร็วเพียงใด ด้วยวิธีนี้ การจับเวลาในอัลกอริทึมจะแม่นยำ บนบรรทัดคำสั่ง คุณระบุความถี่สัญญาณนาฬิกาภายในเป็นเฮิรตซ์ตามตัวระบุ 'FREQ' โปรดทราบว่าโดยทั่วไปแล้ว หากคุณใช้แฟลชอุปกรณ์ภายนอก MCU พารามิเตอร์การจับเวลาจะไม่จำเป็น เนื่องจากแฟลชจะจัดการการจับเวลาเอง
[/บันทึกfile บันทึก fileชื่อ] ตัวเลือกนี้จะเปิดบันทึกfile ของชื่อ “ล็อก fileชื่อ” ซึ่งจะทำให้ข้อมูลใดๆ ที่เขียนลงในหน้าต่างสถานะก็จะถูกเขียนลงในหน้าต่างนี้ด้วย file- “บันทึก filename” ควรเป็นชื่อพาธแบบเต็ม เช่น c:\mydir\mysubdir\mylog.log
บรรทัดคำสั่ง เช่นampเลส:
CPROGHCS08 C:\ENGINE.CFG อินเทอร์เฟซ=พอร์ต USBMULTILINK=PE5650030
เปิด CPROGHCS08 ด้วยตัวเลือกต่อไปนี้:
– เรียกใช้สคริปต์ C:\ENGINE.CFG
– อินเทอร์เฟซเป็น USB Multilink Universal ตัวแรกพร้อมหมายเลขซีเรียล PE5650030
- ตรวจจับความถี่การสื่อสารอัตโนมัติ (ไม่ได้ตั้งค่า io_delay_cnt)
CPROGHCS08 C:\ENGINE.CFG อินเทอร์เฟซ=CYCLONE พอร์ต=209.61.110.251
เปิด CPROGHCS08 ด้วยตัวเลือกต่อไปนี้:
– เรียกใช้สคริปต์ C:\ENGINE.CFG
– อินเทอร์เฟซคือ Cyclone Pro ผ่านพอร์ตอีเทอร์เน็ตโดยมีที่อยู่ IP คือ 209.61.110.251
CPROGHCS08 C:\ENGINE.CFG อินเทอร์เฟซ=USBMULTILINK พอร์ต=USB1
เปิด CPROGHCS08 ด้วยตัวเลือกต่อไปนี้:
– เรียกใช้สคริปต์ C:\ENGINE.CFG
– อินเทอร์เฟซคือ USB Multilink Universal ตรวจพบอินเทอร์เฟซแรก
คำสั่งการเขียนโปรแกรม
คำสั่งการเขียนโปรแกรมทั้งหมดเริ่มต้นด้วยลำดับอักขระสองตัวตามด้วยช่องว่าง (ช่องว่างหรือแท็บ) บรรทัดที่เริ่มต้นด้วยอักขระที่ไม่ใช่คำสั่งจะแสดงเป็นหมายเหตุ fileชื่อหมายถึงเส้นทาง DOS แบบเต็มไปยัง fileคำสั่งใช้รหัสตัวอักษรสองตัวเดียวกับที่ใช้ในโปรแกรมเมอร์เชิงโต้ตอบ PROGHCS08 รหัส .S8P เหมือนกัน files ที่ใช้โดย PROGHCS08 ใช้เพื่อตั้งค่าอุปกรณ์เฉพาะที่จะตั้งโปรแกรม หากระบุฟังก์ชันผู้ใช้สำหรับอุปกรณ์เฉพาะ คำสั่งสองอักขระและความหมายหรือพารามิเตอร์ของผู้ใช้จะระบุไว้ใน .S8P file.
บันทึก: พารามิเตอร์คำสั่ง starting_addr, ending_addr, base_addr, byte, word และ user par ใช้รูปแบบเลขฐานสิบหกเริ่มต้น
BM
BR beginning_addr ending_addr
CHANGEV นัน
– โมดูลตรวจสอบว่างเปล่า
– ช่วงตรวจสอบว่างเปล่า
– (พายุไซโคลนเท่านั้น) เปลี่ยนปริมาตรtage ให้กับเป้าหมาย โดยที่ n.nn แทนค่าระหว่าง 0.00 ถึง 5.00 รวม เมื่อคำสั่งดำเนินการ Cyclone จะเปลี่ยนเป็นวอลุ่มนั้นทันทีtagอี ถ้ารีเลย์ไซโคลนปิดก่อนที่จะเรียกคำสั่งนี้ รีเลย์จะเปิดและตั้งค่าโวลลุ่มใหม่tagค่า e เมื่อดำเนินการคำสั่งนี้ โปรดทราบว่าค่า vol ต่ำเกินไปtagค่า e อาจทำให้เครื่องอยู่ในโหมดพลังงานต่ำ ซึ่งอาจสูญเสียการสื่อสารเพื่อดีบักได้ ตรวจสอบให้แน่ใจว่า
การตั้งค่าจัมเปอร์ของ Cyclone ได้รับการตั้งค่าอย่างถูกต้องเพื่อส่งพลังงานไปยังพอร์ตที่ถูกต้อง
EB starting_addr ending_addr – ลบช่วงไบต์
EW starting_addr ending_addr – ลบช่วงคำ
EM – ลบโมดูล
PB starting_addr ไบต์ … ไบต์ – ไบต์ของโปรแกรม
PW starting_addr word … word – โปรแกรมคำ
PM – โมดูลโปรแกรม
CM fileชื่อ base_addr – เลือกโมดูล .S8P file. หมายเหตุ: บางโมดูลอาจต้องระบุที่อยู่ฐาน
VM – ตรวจสอบโมดูล
VR starting_addr ending_addr – ตรวจสอบช่วง
UM fileชื่อ – อัปโหลดโมดูล
UR เริ่มต้น_addr สิ้นสุด_addr fileชื่อ – ช่วงการอัปโหลด
SS fileชื่อ – ระบุระเบียน S
SM beginning_addr ending_addr
RELAYSOFF – แสดงโมดูล
– (เฉพาะ Multilink FX และ Cyclone เท่านั้น) ปิดรีเลย์ที่จ่ายไฟให้กับเป้าหมาย รวมถึงหน่วงเวลาปิดเครื่องหากระบุไว้ มีประโยชน์มากโดยเฉพาะสำหรับผู้ใช้ที่ต้องการปิดและเปิดบอร์ดก่อนเรียกใช้การทดสอบ อนุญาตให้บูตโหลดเดอร์ทำงาน หรือให้โค้ดแอปพลิเคชันทำงานหลังจากการเขียนโปรแกรม
RELAYSON – (เฉพาะ Multilink FX และ Cyclone) เปิดรีเลย์เพื่อจ่ายไฟให้กับเป้าหมาย รวมถึงหน่วงเวลาเปิดเครื่องหากระบุไว้ โวลุ่มtagอีที่จัดหาให้จะอิงตามเล่มสุดท้ายtagระบุการตั้งค่า e สำหรับผู้ใช้ Cyclone คำสั่ง CHANGEV สามารถเปลี่ยนปริมาตรtagค่า e มีประโยชน์โดยเฉพาะสำหรับผู้ใช้ที่ต้องการปิดและเปิดบอร์ดก่อนรันการทดสอบ อนุญาตให้บูตโหลดเดอร์รัน หรือให้โค้ดแอปพลิเคชันรันหลังจากเขียนโปรแกรม
HE – ช่วยเหลือ (ดูที่ cprog.doc file).
QU – ออก
RE – รีเซ็ตชิป
GO – เริ่มการทำงานของอุปกรณ์ สามารถใช้เป็นคำสั่งสุดท้ายได้หากต้องการให้อุปกรณ์ทำงานเพื่อการทดสอบ ควรนำหน้าด้วยคำสั่ง 'RE' ทันที
DE timings – หน่วงเวลา “การจับเวลา” เป็นมิลลิวินาที
xx user par – เฉพาะสำหรับฟังก์ชันผู้ใช้ที่ระบุใน .S8P file.
คำสั่งการกำหนดค่าสำหรับการเริ่มต้น
คำสั่งการกำหนดค่าทั้งหมดได้รับการประมวลผลก่อนที่โปรแกรมเมอร์จะพยายามติดต่อกับเป้าหมาย การกำหนดค่าทั้งหมด file จะถูกแยกวิเคราะห์สำหรับคำสั่งเหล่านี้ก่อนที่จะพยายามสื่อสาร ส่วนนี้ให้มากกว่าview ของการใช้คำสั่งคอนฟิกูเรชันเหล่านี้เพื่อทำคอนฟิกูเรชันประเภทต่างๆ
บันทึก: ฐานดีฟอลต์สำหรับพารามิเตอร์คำสั่งคอนฟิกูเรชันคือฐานสิบ
โอเวอร์view ของคำสั่งการกำหนดค่ามีดังนี้:
:การรักษาความปลอดภัยอัตโนมัติ
หาก CPROG ตรวจพบไมโครคอนโทรลเลอร์ที่ได้รับการรักษาความปลอดภัย ระบบจะยกเลิกการรักษาความปลอดภัยโดยอัตโนมัติ ซึ่งจำเป็นต้องลบข้อมูลแฟลชทั้งหมด ค่าที่ถูกต้องของ n คือ:
0: อย่ายกเลิกการรักษาความปลอดภัย CPROG ออกด้วยข้อผิดพลาด
1: ยกเลิกการรักษาความปลอดภัยโดยอัตโนมัติ (ค่าเริ่มต้น)
:CUSTOMTRIMREF nnnnnnnn.nn
ความถี่สัญญาณนาฬิกาอ้างอิงภายในที่ต้องการสำหรับคำสั่ง “PT; Program Trim” ความถี่นี้จะแทนที่ความถี่สัญญาณนาฬิกาอ้างอิงภายในเริ่มต้น ค่าที่ถูกต้องสำหรับ “n” ขึ้นอยู่กับอุปกรณ์เฉพาะที่กำลังตั้งโปรแกรม โปรดดูข้อมูลจำเพาะทางไฟฟ้าของอุปกรณ์เพื่อดูช่วงความถี่สัญญาณนาฬิกาอ้างอิงภายในที่ถูกต้อง โดยที่: nnnnnnnn.nn: ความถี่เป็นเฮิรตซ์โดยมีทศนิยมสองตำแหน่ง
:PROVIDEPOWER น
กำหนดว่าอินเทอร์เฟซควรให้พลังงานแก่เป้าหมายหรือไม่ หมายเหตุ: อินเทอร์เฟซฮาร์ดแวร์บางตัวไม่สนับสนุนคำสั่งนี้ ค่าที่ถูกต้องของ n คือ:
0 : อินเทอร์เฟซไม่ได้ให้พลังงานแก่เป้าหมาย (ค่าเริ่มต้น)
1 : เปิดใช้งานอินเทอร์เฟซให้พลังแก่เป้าหมาย
(บันทึก: เหมือนกับตัวเลือกดั้งเดิม :ใช้ PRORORELAYS น)
:พาวเวอร์ดาวน์เดลเลย์
ระยะเวลาที่จะหน่วงเวลาเมื่อปิดการจ่ายไฟไปยังเป้าหมายเพื่อให้แหล่งจ่ายไฟเป้าหมายลดลงต่ำกว่า 0.1v n คือเวลาเป็นมิลลิวินาที
:POWERUPDELAY n
ระยะเวลาหน่วงเมื่อเปิดเครื่องไปยังเป้าหมายหรือรีเซ็ตเป้าหมาย และก่อนที่ซอฟต์แวร์จะพยายามพูดคุยกับเป้าหมาย เวลานี้อาจเป็นการรวมกันของเวลาเปิดเครื่องและเวลารีเซ็ต (โดยเฉพาะอย่างยิ่งหากใช้ไดรเวอร์รีเซ็ต) n คือเวลาเป็นมิลลิวินาที
:DEVICEPOWER น
สำหรับ Cyclone PRO เท่านั้น การตั้งค่านี้กำหนดจำนวนเป้าหมายtage ที่จะให้กับเป้าหมายหากแหล่งที่มาของฉบับtage ได้มาจากภายในของ Cyclone PRO
กำลัง ค่าที่ถูกต้องของ n คือ:
0 : 5 โวลต์ สร้าง/เปลี่ยนโดย Cyclone Pro
2 : 3 โวลต์ สร้าง/เปลี่ยนโดย Cyclone Pro
4 : 2 โวลต์ สร้าง/เปลี่ยนโดย Cyclone Pro
:POWEROFFONEXITn
กำหนดว่าจะต้องปิดไฟที่จ่ายไปยังเป้าหมายหรือไม่เมื่อแอปพลิเคชัน CPROGHCS08 สิ้นสุดลง
บันทึก: อินเทอร์เฟซฮาร์ดแวร์ไม่รองรับคำสั่งนี้ทั้งหมด ค่าที่ถูกต้องของ n คือ:
0 : ปิดเครื่องเมื่อออก (ค่าเริ่มต้น)
1 : เปิดเครื่องเมื่อออก
:NOPOWERDIALOGS
อย่าขอให้ผู้ใช้หมุนเวียนพลังงานเป้าหมาย และออกด้วยข้อผิดพลาดหากมีปัญหาในการเข้าสู่โหมดแก้ไขข้อบกพร่อง
การตรวจสอบเสร็จสิ้นview
มีหลายคำสั่งที่สามารถใช้เพื่อตรวจสอบเนื้อหาของแฟลชบนอุปกรณ์หลังจากตั้งโปรแกรม คำสั่งที่ใช้กันอย่างแพร่หลายคือ “VC
ตรวจสอบ CRC ของวัตถุ File ไปที่โมดูล” คำสั่ง “VC” จะสั่งให้ CPROGHCS08 คำนวณค่า CRC 16 บิตจากอ็อบเจ็กต์ที่เลือกก่อน fileจากนั้น CPROGHCS08 จะโหลดโค้ดลงใน RAM ของอุปกรณ์และสั่งให้อุปกรณ์คำนวณค่า CRC 16 บิตจากเนื้อหาใน FLASH ของอุปกรณ์ ช่วงที่อยู่ที่ถูกต้องในอ็อบเจ็กต์เท่านั้น file มีการคำนวณบนอุปกรณ์ เมื่อค่า CRC 16 บิตจากวัตถุ file และอุปกรณ์พร้อมใช้งาน CPROGHCS08 จะเปรียบเทียบอุปกรณ์เหล่านั้น หากค่าทั้งสองไม่ตรงกัน จะแสดงข้อผิดพลาด
หรืออีกทางหนึ่ง สามารถใช้คำสั่ง “VM ;Verify Module” เพื่อทำการตรวจสอบแบบไบต์ต่อไบต์ระหว่างวัตถุที่เลือก file และอุปกรณ์ โดยทั่วไป คำสั่ง VM จะใช้เวลาดำเนินการนานกว่าคำสั่ง VC เนื่องจาก CPROGHCS08 ต้องอ่านเนื้อหาของ FLASH ของอุปกรณ์ทีละไบต์ นอกจากนี้ยังมีคำสั่งอื่นอีกสองคำสั่งที่สามารถใช้เพื่อการตรวจสอบได้ คำสั่ง “SC ;Show Module CRC” จะสั่งให้ CPROGHCS08 โหลดโค้ดลงใน RAM ของอุปกรณ์และสั่งให้อุปกรณ์คำนวณค่า CRC 16 บิตจากเนื้อหาของ FLASH ทั้งหมดของอุปกรณ์ ซึ่งรวมถึงบริเวณว่าง เมื่อคำนวณค่า CRC 16 บิตแล้ว CPROGHCS08 จะแสดงค่าในหน้าต่างสถานะ คำสั่ง “VV ;Verify Module CRC to Value” จะคล้ายกับคำสั่ง “SC” ความแตกต่างคือแทนที่จะแสดงค่า CRC 16 บิตที่คำนวณได้ CPROGHCS08 จะเปรียบเทียบค่าที่คำนวณได้กับค่า CRC 16 บิตที่ผู้ใช้ให้มา
ส่งคืนข้อผิดพลาด DOS
มีการส่งคืนข้อผิดพลาดของ DOS เพื่อให้สามารถทดสอบได้ใน .BAT fileส. รหัสข้อผิดพลาดที่ใช้คือ:
0 – โปรแกรมเสร็จสมบูรณ์โดยไม่มีข้อผิดพลาด
1 – ยกเลิกโดยผู้ใช้
2 – เกิดข้อผิดพลาดในการอ่านบันทึก S file.
3 – ตรวจสอบข้อผิดพลาด
4 – ยืนยันการยกเลิกโดยผู้ใช้
5 – บันทึก S file ไม่ได้รับการเลือก
6 – ที่อยู่เริ่มต้นไม่อยู่ในโมดูล
7 – ที่อยู่สิ้นสุดไม่อยู่ในโมดูลหรือน้อยกว่าที่อยู่เริ่มต้น
8 – ไม่สามารถเปิดได้ file สำหรับการอัพโหลด
9 – File เกิดข้อผิดพลาดในการเขียนระหว่างการอัปโหลด
10 – การอัปโหลดถูกยกเลิกโดยผู้ใช้
11 – ข้อผิดพลาดในการเปิดไฟล์ .S8P file.
12 – ข้อผิดพลาดในการอ่าน .S8P file.
13 – อุปกรณ์ไม่ได้เตรียมใช้งาน
14 – เกิดข้อผิดพลาดในการโหลด .S8P file.
15 – เกิดข้อผิดพลาดในการเปิดใช้งานโมดูลที่เพิ่งเลือก
16 – บันทึก S ที่ระบุ file ไม่พบ.
17 – พื้นที่บัฟเฟอร์ไม่เพียงพอตามที่ระบุโดย .S8P เพื่อเก็บ file S-บันทึก
18 – เกิดข้อผิดพลาดระหว่างการเขียนโปรแกรม
19 – ที่อยู่เริ่มต้นไม่ชี้ไปที่โมดูล
20 – ข้อผิดพลาดระหว่างการเขียนโปรแกรมไบต์สุดท้าย
21 – ที่อยู่โปรแกรมไม่อยู่ในโมดูลอีกต่อไป
22 – ที่อยู่เริ่มต้นไม่ได้อยู่ในขอบเขตของคำที่จัดชิดกัน
23 – ข้อผิดพลาดระหว่างการเขียนโปรแกรมคำสุดท้าย
24 – ไม่สามารถลบโมดูลได้
25 – คำโมดูลไม่ถูกลบ
26 – เลือก .S8P file ไม่ใช้การตรวจสอบไบต์
27 – ไบต์โมดูลไม่ถูกลบ
28 – ที่อยู่เริ่มต้นของการลบคำต้องเป็นเลขคู่
29 – ที่อยู่สิ้นสุดการลบคำต้องเป็นเลขคู่
30 – พารามิเตอร์ผู้ใช้ไม่อยู่ในช่วง
31 – ข้อผิดพลาดระหว่างการระบุฟังก์ชัน .S8P
32 – พอร์ตที่ระบุไม่พร้อมใช้งานหรือข้อผิดพลาดในการเปิดพอร์ต
33 – คำสั่งไม่ได้ใช้งานสำหรับ .S8P นี้ file.
34 – ไม่สามารถเข้าสู่โหมดเบื้องหลังได้ ตรวจสอบการเชื่อมต่อ
35 – ไม่สามารถเข้าถึงโปรเซสเซอร์ได้ ลองรีเซ็ตซอฟต์แวร์
36 – .S8P ไม่ถูกต้อง file.
37 – ไม่สามารถเข้าถึง RAM โปรเซสเซอร์ ลองรีเซ็ตซอฟต์แวร์
38 – การเริ่มต้นถูกยกเลิกโดยผู้ใช้
39 – เกิดข้อผิดพลาดในการแปลงหมายเลขคำสั่งฐานสิบหก
40 – การกำหนดค่า file ไม่ระบุและ file ไม่มี prog.cfg
41 – .S8P file ไม่ได้มีอยู่.
42 – ข้อผิดพลาดในหมายเลข io_delay_cnt บนบรรทัดคำสั่ง
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 ด้วยหนึ่งคำสั่งต่อบรรทัด
นี่คือซีเอฟจี file ในอดีตที่ผ่านมาampเลส.
อดีตampเลอ คือ:
CM C:\PEMICRO\9S08DV128.S8P ; เลือกโมดูลแฟลช
EM ;ลบโมดูล
BM ;Blank เช็คโมดูล
SS C:\เพมิโคร\ทดสอบS19
;ระบุ S19 ที่จะใช้
PM ;ตั้งโปรแกรมโมดูลด้วย S19
VM ; ตรวจสอบโมดูลอีกครั้ง
บันทึก: ชื่อเส้นทางของ files ที่สัมพันธ์กับไฟล์เรียกทำงาน CPROG ก็สามารถใช้ได้เช่นกัน
การใช้พารามิเตอร์บรรทัดคำสั่งในสคริปต์
พารามิเตอร์บรรทัดคำสั่งในรูปแบบ /PARAM=s สามารถใช้เพื่อแทรกข้อความลงในสคริปต์ได้ file แทนพิเศษ tags. สามารถใช้แทนส่วนใด ๆ ของสคริปต์ รวมถึงคำสั่งการเขียนโปรแกรม fileชื่อและพารามิเตอร์ ค่าที่ถูกต้องของ n คือ 0..9 s คือสตริงที่จะแทนที่ /PARAM ที่เกิดขึ้นในสคริปต์ file.
ในฐานะอดีตampโดยทั่วไปแล้ว สคริปต์ทั่วไปต่อไปนี้สามารถใช้สำหรับการเขียนโปรแกรมที่มีฟังก์ชันการทำงานเดียวกันทุกประการampสคริปต์เข้า ส่วนที่ 7 – เช่นample สคริปต์การเขียนโปรแกรม File:
CM /PARAM1 ; เลือกโมดูลแฟลช
EM ;ลบโมดูล
BM ;Blank เช็คโมดูล
SS /PARAM2 ;ระบุ S19 ที่จะใช้
PM ;ตั้งโปรแกรมโมดูลด้วย S19
/PARAM3 ; ตรวจสอบโมดูลอีกครั้ง
พารามิเตอร์ต่อไปนี้จะถูกเพิ่มในบรรทัดคำสั่ง CPROG:
/PARAM1=C:\PEMICRO\9S08DV128.S8P
/PARAM2=C:\เปมิโคร\TEST.S19
/PARAM3=VM
บันทึก: หากพารามิเตอร์ /PARAM มีช่องว่างในค่า พารามิเตอร์ทั้งหมดจะต้องอยู่ในเครื่องหมายคำพูดคู่ ซึ่งจะระบุให้ Windows ทราบว่าเป็นพารามิเตอร์ตัวเดียว ตัวอย่างเช่นample, ถ้าเส้นทางใน /PARAM2 ด้านบนมีช่องว่าง, คุณจะต้องระบุในบรรทัดคำสั่งดังนี้:
“/PARAM2=C:\PEMICRO\EXAMPLE FILES\TEST.S19″
ดังนั้นอดีตที่สมบูรณ์ampบรรทัดคำสั่ง le จะเป็น (โปรดทราบว่าสิ่งนี้ต่อเนื่องกัน ไม่มีการขึ้นบรรทัดใหม่):
C:\PEMICRO\CPROGHCS08 อินเทอร์เฟซ=พอร์ต USBMULTILINK=PE5650030
C:\PROJECT\GENERIC.CFG /PARAM1=C:\PEMICRO\9S08DV128.S8P
“/PARAM2=C:\PEMICRO\EXAMPLE FILES\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\CPROGHCS08 C:\PROJECT\ENGINE.CFG
อินเทอร์เฟซ=พอร์ต USB มัลติลิงค์=USB1
หากระดับข้อผิดพลาด 1 แย่
ได้ดี
:แย่
สะท้อน แย่ แย่ แย่ แย่ แย่ แย่ แย่
:ดี
เอคโค่เสร็จแล้ว
วินโดวส์ 95/98/ME/XP:
เริ่มต้น /WC:\PROJECT\CPROGHCS08 C:\PROJECT\ENGINE.CFG
อินเทอร์เฟซ=พอร์ต USB มัลติลิงค์=USB1
หากระดับข้อผิดพลาด 1 แย่
ได้ดี
:แย่
สะท้อน แย่ แย่ แย่ แย่ แย่ แย่ แย่
:ดี
เอคโค่เสร็จแล้ว
บันทึก: ชื่อเส้นทางของ files ที่สัมพันธ์กับไฟล์เรียกทำงาน CPROG ก็สามารถใช้ได้เช่นกัน
ข้อมูล
หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับ CPROGHCS08 และ PROGHCS08 โปรดติดต่อเรา:
P&E Microcomputer Systems, Inc. เสียง: 617-923-0053
98 กาเลน เซนต์ โทรสาร: 617-923-0808
วอเตอร์ทาวน์ MA 02472-4502
WEB: http://www.pemicro.com
สหรัฐอเมริกา
ถึง view ไลบรารีโมดูล S8P ทั้งหมดของเรา ไปที่หน้าการสนับสนุนของ Pemako webไซต์ที่ www.pemicro.com/support.
เอกสาร / แหล่งข้อมูล
![]() |
ซอฟต์แวร์ PEmicro CPROGHCS08 [พีดีเอฟ] คู่มือการใช้งาน CPROGHCS08, ซอฟต์แวร์ CPROGHCS08, ซอฟต์แวร์, PROGHCS08 |




