Upload
grid-g
View
365
Download
4
Embed Size (px)
Citation preview
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -1- WWW.ETT.CO.TH
ET-BASE51 AC3 (AT89C51AC3)
ET-BASE51 AC3 เปนบอรดไมโครคอนโทรเลอรในตระกูล MCS51 ขนาด 52 Pin ซึ่งเลือกใชไมโครคอนโทรเลอร เบอร AT89C51AC3 ของ ATMEL เปน MCU ประจําบอรด โดย MCU รุนนี้จะบรรจุอยูภายในตัวถังแบบ 52 Pin PLCC โดย MCU ตัวนี้จะมีจุดเดน คือ เร่ืองของความเร็วในการประมวลผล ซึ่งสามารถทํางานไดดวยความถี่สูงสุด 60MHz ที่ 12 Clock / 1 Machine Cycle นอกจากนี้แลวยังมีความเพียบพรอมดวยอุปกรณพื้นฐานตางๆที่จําเปนตอการใชงาน ไมวาจะเปนหนวยความจําสําหรับเก็บขอมูลแบบ EEPROM ขนาด 2 KByte หรือหนวยความจําใชงานแบบ RAM ซึ่งมีมากถึง 2304 Byte (2048+256) สวนในดานของอุปกรณ Peripheral นั้นก็นับวาครบถวนเหมาะแกการนําไปประยุกตใชงานเกี่ยวกับการควบคุมและประมวลผลตางๆไดเปนอยางดี โดยจะมีทั้ง SPI, UART, Watchdog, Timer/Counter, PWM และ ADC โดยการออกแบบโครงสรางของบอรดนั้นจะเนนเรื่องขนาดของบอรดใหมีขนาดเล็กเพื่อใหงายตอการนําไปประยุกตใชงาน และสะดวกตอการพัฒนาโปรแกรม
คุณสมบัติของบอรด เลือกใช MCU ตระกูล MCS51 เบอร AT89C51AC3 ของ ATMEL เปน MCU ประจําบอรด โดยเลือกใชแหลงกําเนิดสัญญาณนาฬิกาแบบ Oscillator Module คา 29.4912 MHz ซึ่งสามารถกําหนดการทํางานของ MCU ใหทํางานในโหมดความเร็ว 2 เทา (X2 Mode) ได ทําให MCU สามารถประมวลผลดวยความเร็วสูงสุดที่ 58.9824 MHz โดยคุณสมบัติเดนๆของ MCU ไดแก o มีหนวยความจํา Flash สําหรับเขียนโปรแกรมขนาด 64KByte o มี EEPROM ขนาด 2KByte สําหรับเก็บขอมูล และ สามารถเขียนซ้ําไดกวา 1 ลานครั้ง o มีพอรต I/O ขนาด 8 บิต จํานวน 5 พอรต (P0,P1,P2,P3 และ P4(5Bit)) o มี RAM ใชงาน 2304 Byte (ERAM 2048 Byte + IRAM 256 Byte) o มีวงจรสื่อสารอนุกรม UART จํานวน 1 พอรต และมีวงจรสื่อสาร SPI จํานวน 1 พอรต o มีวงจร Timer/Counter ขนาด 16 บิต จํานวน 3 ชุด o มีวงจร ADC ขนาด 10บิต จํานวน 8 ชอง (ใช Port-P1 โดยกําหนดจากโปรแกรม) o มีวงจร Watchdog, Power-ON Reset, Capture/Compare ,PWM
มีข้ัวตอสัญญาณ I/O แบบ TTL แบบ Header 2x5 จํานวน 5 ชุด (P0,P1,P2,P3 และ P4) มีข้ัวตอ LCD แบบ Header 2x7 รองรับการเชื่อมตอกับ LCD Character (เชื่อมตอแบบ 4 บิต) มีข้ัวตอใชงาน RS232 สําหรับใชงาน และ ET-DOWNLOAD สําหรับ Download ผาน RS232 มี LED แสดงสถานะแหลงจาย Power และ Self-Test สําหรับใชทดสอบการทํางานของบอรด ใชแหลงจายไฟขนาด +5VDC ขนาด PCB Size เล็กเพียง 8 x 6 cm.
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -2- WWW.ETT.CO.TH
โครงสรางบอรด ET-BASE51 AC3 (AT89C51AC3)
• หมายเลข 1 คือ ข้ัวตอแหลงจายไฟเลี้ยงวงจรของบอรด ใชกับแหลงจายไฟตรง +5VDC • หมายเลข 2 เปน Switch PSEN ใชรวมกับ RESET สําหรับ Download แบบ Manual • หมายเลข 3 เปน Switch RESET ใชสําหรับ Reset การทํางานของ CPU • หมายเลข 4 เปน Port-P4 มี ขนาด 5 Bit คือ P4.0-P4.4 • หมายเลข 5 เปน Port-P0 มี ขนาด 8 บิต • หมายเลข 6 เปน Port-P2 มี ขนาด 8 บิต • หมายเลข 7 เปน ตัวตานทานสําหรับปรับคาความสวางให LCD • หมายเลข 8 เปน Port-LCD ชนิด Character Type ใชการเชื่อมตอแบบ 4 บิต ผาน Port-P2 • หมายเลข 9 เปน Port-P3 มีขนาด 6 บิต (P3.2-P3.7) • หมายเลข 10 เปน Port-P1 มีขนาด 8 บิต • หมายเลข 11 เปนตัวตานทานสําหรับปรับคาแรงดันอางอิงของ ADC (3V) • หมายเลข 12 คือ MCU เบอร AT89C51AC3 ซึ่งเปน MCU ตระกูล MCS51 จาก ATMEL
1
2 4
5
6
78
9
3
10 1113
12
14
15
16
17
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -3- WWW.ETT.CO.TH
• หมายเลข 13 คือ Oscillator Module คา 29.4912 MHz • หมายเลข 14 คือ ข้ัวตอ RS232 สําหรับใชงานทั่วไป และ Download แบบ Manual • หมายเลข 15 คือ ข้ัวตอ ET-DOWNLOAD ใชสําหรับ Download แบบ Auto • หมายเลข 16 เปน LED Self Test (P1.0) ใชสําหรับทดสอบการทํางานของบอรด • หมายเลข 17 เปน LED Power ใชแสดงสถานะของแหลงจายไฟ +5VDC
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -4- WWW.ETT.CO.TH
ข้ัวตอสัญญาณตางๆ สําหรับข้ัวตอสัญญาณของพอรต I/O จาก MCU นั้น จะถูกออกแบบและจัดเตรียมไวผานทางขั้วตอแบบ IDE Header ขนาด 10Pin (2x5) จํานวน 5 ชุด คือ PORT-P0, PORT-P1, PORT-P2,PORT-P3 และ PORT-P4 ตามลําดับ โดยที่ข้ัวตอสัญญาณแตละชุด จะประกอบไปดวยสัญญาณของ I/O ที่เชื่อมตอมาจากขาสัญญาณของ MCU โดยตรงทั้งหมด โดยแตละพอรตจะมีสัญญาณพอรตละ 8 บิต ยกเวน PORT-P3 และ PORT-P4 โดย PORT-P4 มีขนาด 5 บิต (P4.0-P4.4) และ PORT-P3 ซึ่งจะมีเพียง 6 บิตเทานั้น คือ P3.2-P3.7 สวน P3.0 และ P3.1 จะถูกสงวนไวใชงานเปนขาสัญญาณ RXD และ TXD สําหรับรับสงขอมูลของ RS232 ซึ่งสัญญาณทั้ง 2 เสน (P3.0 และ P3.1) จะถูกเชื่อมตอผานวงจร Line Driver (MAX232) สําหรับแปลงระดับสัญญาณจากระดับโลจิก TTL ของ MCU ใหเปนสัญญาณแรงดันตามมาตรฐานของ RS232 โดยสัญญาณที่ไดรับการแปลงเปนแบบ RS232 จะถูกเชื่อมตอไปรอไวที่ข้ัวตอแบบ CPA ขนาด 4 PIN (RS232) โดยการจัดเรียงสัญญาณของแตละชุด จะเปนดังรูป
พอรต P0 มีขนาด 8 บิต
P0.2P0.4P0.6
+VCC
P0.3P0.5P0.7GND
P0.1P0.0
PORT-P0[0..7]
พอรต P1 มีขนาด 8 บิต
P1.2P1.4P1.6
+VCC
P1.3P1.5P1.7GND
P1.1P1.0
PORT-P1[0..7]
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -5- WWW.ETT.CO.TH
พอรต P2 มีขนาด 8 บิต
P2.2P2.4P2.6
+VCC
P2.3P2.5P2.7GND
P2.1P2.0
PORT-P2[0..7] พอรต P3 มีขนาด 6 บิต
P3.2P3.4P3.6
+VCC
P3.3P3.5P3.7GND
NCNC
PORT-P3[2..7] พอรต P4 มีขนาด 5 บิต
P4.2P4.4NC
+VCC
P4.3NCNCGND
P4.1P4.0
PORT-P4[0..4]
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -6- WWW.ETT.CO.TH
พอรต CLCD ใชกับ Character LCD โดยเชื่อมตอแบบ 4 บิต โดยสัญญาณที่ใชเชื่อมตอกับ LCD จะเปนสัญญาณชุดเดียวกับที่ตอไปยังขั้วตอของ PORT-P2 โดยในการเชื่อมตอสายสญัญาณจากขัว้ตอของ พอรต LCD ไปยังจอแสดงผล LCD นัน้ ใหยึดชื่อสัญญาณเปนจุดอางอิง โดยใหตอสัญญาณที่มชีื่อตรงกันเขาดวยกนัใหครบทั้ง 14 เสน
END1D3D5
RWD0D2D4
VORSGND+VCC
D7 D6
ET-CLCD
123456789
1011121314
ET-CLCD
P2.4P2.5P2.6P2.7
P2.3P2.2P2.1
10K
VCCGND
VORSRWEND0D1D2D3D4D5D6D7
VCC
1 2 3 4 5 6 7 8 9 10 11 12 13 14 GND +VCC VO RS RW EN D0 D1 D2 D3 D4 D5 D6 D7
แสดงการจัดเรียงขาสญัญาณของ Character LCD มาตรฐาน
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -7- WWW.ETT.CO.TH
พอรต RS232 เปนสัญญาณ RS232 ซึ่งผานวงจรแปลงระดับสัญญาณ MAX232 เรียบรอยแลว สามารถใชเชือ่มตอกับสัญญาณ RS232 เพื่อรับสงขอมูล นอกจากนี้แลวยงัสามารถใชงาน รวมกับ Switch PSEN และ Switch RESET เพื่อทําการ Download แบบ Manual ไดดวย
2 41 3
+VCC
RXD
TXD
GND
RS-232
พอรต ET-DOWNLOAD เปนขั้วตอสําหรับใช Download Hex File ใหกับ MCU แบบอัตโนมัติโดยใชงานรวมกับโปรแกรม FLIP V2.4.4 ของ ATMEL
1 3 52 4
TXD
GND
RXD
PRES
PMOD
ET-DOWNLOAD
C1+1
C1-3
C2+4
C2-5 GND 15
V- 6
VCC 16
V+ 2
R1O12
T1I11
R2O9
T2I10 T2O 7R2I 8T1O 14R1I 13
MAX232
10uF
10uF
10uF
10uF
VCC
VCC
1234
RS-232
RXDTXD
VCC
GND
P3.0P3.1
RE
SET
PSEN
PC817
PC817
330
BC547
330
VCC
10uF
12345
ET-DOWNLOAD
PRES
TXDRXD
GND
PMOD
10K
VCC
RES+
47K
1K
VCC
PSEN
10K
VCC
รูปแสดง วงจรสวนที่เชื่อมตอกับ RS232 และ ET-DOWNLOAD
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -8- WWW.ETT.CO.TH
การ Download Hex file ใหกับ MCU ของบอรด การ Download Hex File ใหกับหนวยความจํา Flash ของ MCU ในบอรดนั้น จะใชโปรแกรมชื่อ
“FLIP” ของ ATMEL ซึ่งจะติดตอกับ MCU ผาน Serial Port ของคอมพิวเตอร PC โดยโปรแกรมดังกลาวสามารถดาวนโหลดไดจาก WWW.ATMEL.COM โดยไมเสียคาใชจายใดๆ แตสําหรับในกรณีที่ซื้อบอรดจาก อีทีที นั้น โปรแกรมดังกลาวจะจัดเตรียมไวใหในแผน CD ROM อยูแลว โปรแกรม FLIP (Flexible In-system Programmer) เปนโปรแกรมสําหรับพัฒนาระบบของไมโครคอนโทรลเลอรของ ATMEL โดยสามารถใชสนับสนุนการพัฒนาโปรแกรมของไมโครคอนโทรลเลอร ตระกูล MCS51 ในกลุมที่ใชการพัฒนาแบบ ISP ซึ่งรวมถึงเบอร AT89C51AC3 ดวย โดยโปรแกรมจะทํางานภายใตระบบปฏิบัติการของ Windows9X/Me/NT/2000 และ Windows XP โดยสนับสนุนการเชื่อมตอกับระบบฮารดแวรที่ใชการเชื่อมตอแบบ RS232 หรือ CAN หรือ USB ซึ่งวิธีการเชื่อมตอของโปรแกรม FLIP กับระบบฮารดแวรของไมโครคอนโทรลเลอรนั้น จะขึ้นอยูกับความสามารถของตัวไมโครคอนโทรลเลอรที่จะนํามาทําการพัฒนาวาสามารถใชการติดตอส่ือสารดวยวิธีใดไดบาง แตสําหรับไมโครคอนโทรลเลอรเบอร AT89C51AC3 นั้นจะสามารถใชการเชื่อมตอผานทางพอรตอนุกรม RS232 เทานั้น ไมสามารถเชื่อมตอผานระบบการสื่อสารของ CAN หรือ USB ได โดยโปรแกรม FLIP จะใชสําหรับ Download ขอมูลใหกับหนวยความจําของไมโครคอนโทรลเลอรที่ทํางานใน Monitor Mode เพื่อใหผูใชส่ังจัดการกับหนวยความจําภายในตัว CPU ไมวาจะเปนการ ส่ังลบขอมูล(Erase) ส่ังตรวจสอบขอมูลในหนวยความจํา(Blank Check) ส่ังโปรแกรมขอมูลใหกับหนวยความจําโปรแกรมของ CPU (Program) ส่ังเปรียบเทียบขอมูลจาก Buffer กับหนวยความจําในตัว CPU (Verify) หรือส่ังอานขอมูลจากหนวยความจําของ CPU (Read) เปนตน
ซึ่งเมื่อตองการใหโปรแกรม FLIP ติดตอกับ CPU ใน Monitor Mode นั้น จะตองสั่ง Reset ให CPU เขาทํางานใน Monitor Mode กอนเสียกอน ซึ่งหลักการสําหรับ Reset ให CPU เขาทํางานใน Monitor Mode จะตองกําหนดใหขาสัญญาณ PSEN มีสภาวะเปน “0” ในขณะที่ CPU หลุดพนจากสภาวะของการ Reset ซึ่งตามปรกติแลวหลังการ Reset ทุกครั้ง CPU จะตรวจสอบสภาวะของขาสัญญาณ PSEN วาเปน “0” หรือไมถาไมใชก็จะทํางานในโหมดการทํางานปรกติแตถาใชก็จะตรวจสอบสถานะของสัญญาณอื่นๆที่เกี่ยวของกับการทํางานใน Monitor Mode ถาเงื่อนไขอื่นๆถูกตองก็จะเขาทํางานใน Monitor Mode ทันที สําหรับบอรด รุน ET-BASE51 AC3 (AT89C51AC3) นั้น การที่จะสั่ง Reset ให CPU ของ ATMEL เขาทํางานใน Monitor Mode เพื่อส่ัง Download HEX File จาก PC ใหกับบอรดจะสามารถทําได 2 แบบ คือ
• การ Download แบบ Manual โดยวิธีการนี้จะใชกับสาย RS232 แบบ 4 Pin รวมกับ Switch PSEN และ Switch RESET ในการสั่ง Download
• การ Download แบบ Auto โดยวิธีการนี้ จะใชสาย ET-DOWNLOAD แบบ 5 Pin ในการส่ัง Download
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -9- WWW.ETT.CO.TH
ลําดับขั้นตอนการ Download HEX File ดวยโปรแกรม FLIP 2.4.4 แบบ Manual 1. ตอสายสัญญาณ RS232 จาก Com Port ของเครื่องคอมพิวเตอร PC เขากับข้ัว RS232 แบบ 4 Pin
ของบอรด 2. จายไฟเลี้ยงวงจรใหบอรด ซึ่งจะสังเกตุเห็น LED แสดงสถานะของ PWR สีแดงติดสวางอยู 3. ส่ัง Run โปรแกรม FLIP V2.4.4 ซึ่งจะไดผลดังรูป
4. ส่ังเลือกกําหนดเบอรของ MCU ที่ติดตั้งไวในบอรด โดยเลือก Device → Select ซึ่งตองเลือกกําหนดใหตรงกับที่ทําการติดตั้งไวจริงๆในบอรดดวย ดังตัวอยาง (AT89C51AC3)
รูปแสดง การเลือกกําหนดเบอร CPU ของ ET-BASE51 AC3 (AT89C51AC3)
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -10- WWW.ETT.CO.TH
5. คลิกเมาสที่คําสั่ง Setting → Communication → RS232 จากนั้นเลือกกําหนด Comport ใหตรงกับที่ตอสายไวจริง ดังรูป (ในตัวอยางใช Com1)
6. ทําการรีเซ็ต MCU ใหเขาทํางานใน Monitor โดยมีลําดับข้ันตอนดังนี้ a) กดสวิตช PSEN คางไวเพื่อกําหนดสถานะขาสัญญาณ PSEN ใหเปน “0” b) กดสวิตช RESET เพื่อสงสัญญาณ RESET ใหกับ CPU โดยสวิตช PSEN ตองกดคางอยู
เชนเดิม c) ปลอยสวิตช RESET เพื่อปลอยให CPU พนจากสภาวะการ Reset (สวิตช PSEN ยัง
กดคางอยู) d) ปลอยสวิตช PSEN เปนลําดับสุดทาย
7. คลิกเมาสที่ปุม Connect เพื่อทําการติดตอส่ือสารกับ MCU ใน Monitor Mode ซึ่งจะไดผลดังรูป
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -11- WWW.ETT.CO.TH
8. ส่ังเปด Hex File ที่ตองการจะ Download ใหกับ MCU มารอไวใน Buffer ของโปรแกรม FLIP โดยใชคําสั่ง “File → Load Hex File…”
9. คลิกเมาสที่หนาตัวเลือกคําสั่งใน Tab ของ Operation Flow ใหครบทุกคําสั่ง ซึ่งไดแก Erase, Bank Check, Program, Verify จากนั้นคลิกเมาสที่ปุมคําสั่ง Run และรอจนการทํางานของโปรแกรมเสร็จเรียบรอยดังรูป
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -12- WWW.ETT.CO.TH
10. ตรวจสอบคา Device BSB และ SBV วามีคาเปน 00 ทั้งหมดแลวหรือยัง ซึ่งถายังไมเปน 00 ใหทําการแกไขคาใหเปน 00 โดยคลิกเมาสในชองตัวเลขแลวพิมพคา 00 แทนที่ลงไปทั้ง 2 ชองดังรูป
11. ทําการกดสวิตช Reset ใหกับบอรดเพื่อใหบอรดเริ่มตนทํางานตามโปรแกรมที่ไดทําการ Download ไปให ซึ่งถาไมเกิดความผิดพลาดใดๆจะเห็น MCU เร่ิมตนทํางานทันที
แสดงผลการเปลี่ยนคา Device SBV=00
เติมคา 00 ในชองรับคา ของ SBV
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -13- WWW.ETT.CO.TH
ลําดับขั้นตอนการ Download HEX File ดวยโปรแกรม FLIP 2.4.4 แบบ Auto Download 1. ตอสายสัญญาณ RS232 จาก Com Port ของเครื่องคอมพิวเตอร PC เขากับข้ัว ET-DOWNLOAD
แบบ 5 Pin ของบอรด 2. จายไฟเลี้ยงวงจรใหบอรด ซึ่งจะสังเกตุเห็น LED แสดงสถานะของ PWR สีแดงติดสวางอยู 3. ส่ัง Run โปรแกรม FLIP V2.4.4 ซึ่งจะไดผลดังรูป
4. ส่ังเลือกกําหนดเบอรของ MCU ที่ติดตั้งไวในบอรด โดยเลือก Device → Select ซึ่งตองเลือกกําหนดใหตรงกับที่ทําการติดตั้งไวจริงๆในบอรดดวย ดังตัวอยาง (AT89C51AC3)
รูปแสดง การเลือกกําหนดเบอร CPU ของ ET-BASE51 AC3 (AT89C51AC3)
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -14- WWW.ETT.CO.TH
5. ทําการกําหนดคา Option ของการสื่อสาร RS232 สําหรับใช Download แบบอัตโนมัติ โดยใหเลอืกคลิกเมาสที่ Setting → Preferences… แลวเลือกกําหนดคาดังรูป
↓
↓
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -15- WWW.ETT.CO.TH
6. คลิกเมาสที่คําสั่ง Setting → Communication → RS232 จากนั้นเลือกกําหนด Comport ใหตรงกับที่ตอสายไวจริง ดังรูป (ในตัวอยางใช Com1)
7. คลิกเมาสที่ปุม Connect เพื่อทําการติดตอส่ือสารกับ MCU ใน Monitor Mode ซึ่งจะไดผลดังรูป
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -16- WWW.ETT.CO.TH
8. ส่ังเปด Hex File ที่ตองการจะ Download ใหกับ MCU มารอไวใน Buffer ของโปรแกรม FLIP โดยใชคําสั่ง “File → Load Hex File…”
9. คลิกเมาสที่หนาตัวเลือกคําสั่งใน Tab ของ Operation Flow ใหครบทุกคําสั่ง ซึ่งไดแก Erase, Bank Check, Program, Verify จากนั้นคลิกเมาสที่ปุมคําสั่ง Run และรอจนการทํางานของโปรแกรมเสร็จเรียบรอยดังรูป
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -17- WWW.ETT.CO.TH
10. ตรวจสอบคา Device BSB และ SBV วามีคาเปน 00 ทั้งหมดแลวหรือยัง ซึ่งถายังไมเปน 00 ใหทําการแกไขคาใหเปน 00 โดยคลิกเมาสในชองตัวเลขแลวพิมพคา 00 แทนที่ลงไปทั้ง 2 ชองดังรูป
11. ทําการคลิกเมาสที่ “Start Application” หรือกดสวิตช Reset ใหกับบอรดเพื่อใหบอรดเริ่มตนทํางานตามโปรแกรมที่ไดทําการ Download ไปให ซึ่งถาไมเกิดความผิดพลาดใดๆจะเห็น MCU เร่ิมตนทํางานทันที
แสดงผลการเปลี่ยนคา Device SBV=00
เติมคา 00 ในชองรับคา ของ SBV
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -18- WWW.ETT.CO.TH
ปญหาตางๆในขณะใชงานโปรแกรม FLIP และแนวทางการแกไข ในบางครั้งเมื่อเรียกใชคําสั่งตางๆของโปรแกรม FLIP แลว อาจเกิดความผิดพลาดบางประการขึ้น ซึ่งอาจไมใชปญหาที่เกิดจากความบกพรองของระบบฮารดแวร แตอาจเกิดการการกําหนดพารามิเตอรบางอยางในโปรแกรมไมถูกตองหรือขามขั้นตอนบางประการไป ซึ่งเมื่อโปรแกรม FLIP ไมสามารถปฏิบัติตามคําสั่งที่ผูใชงานสั่งไปไดสําเร็จจะแสดงอาการ Error ตางๆใหทราบ ซึ่งพอสรุปไดดังนี้ 1. Time Out Error เปนความผดิพลาดที่เกิดจากการที่โปรแกรม FLIP ไมสามารถทาํการสื่อสารกับ CPU
ใน Monitor Mode ได ซึ่งอาจเกิด หลายสาเหตุ เชน - การตอสายสัญญาณระหวางขั้วตอ RS232 ของบอรด ET-BASE51 AC3 กับข้ัวตอพอรต
ส่ือสารอนุกรม RS232 ของคอมพิวเตอรยังไมเรียบรอยหรือตอไมตรงกับที่กําหนดตัวเลือกไวในโปรแกรม หรือการกําหนดรูปแบบและตัวเลือกตางๆในการสื่อสารไมถูกตอง เมื่อพบปญหานีใ้หลองทําการตรวจสอบคาตางๆในการสื่อสารใน “Setting → Preferences.. และ Setting → Communication → RS232”
- ยังไมไดรีเซ็ตให CPU เขาทํางานใน Monitor Mode รอไวกอนที่จะสั่งงานโปรแกรมในกรณี Download แบบ Manual หรือบอรดยังไมพรอมทํางาน เชน ยังไมไดจายไฟเลี้ยงใหบอรด
- กําหนดคา Baudrate เร็วเกินไป ซึ่งในกรณีที่ใชงานกับเครื่องคอมพิวเตอรที่มีความเร็วมากๆนั้น ควรกําหนดคา Baudrate ในการสื่อสารใหชาลง ซึ่งอาจใชคา 19200 หรือ 9600 ก็พอ เพราะถากําหนดใหความเร็วมากเกินไป เมื่อโปรแกรม FLIP สงขอมูลใหกับ CPU แบบตอเนื่องนั้น อาจทําให CPU ไมสามารถประมวลผลคําสั่งหรือขอมูลตางๆที่สงไปใหทันก็จะทําใหเกิดความผิดพลาดบอยครั้งขึ้น
2. Software Security Bit Set. Cannot access device Data เปนความผิดพลาดที่เกิดจากการนํา CPU ที่มีการสั่ง Lock Bit ของ Security Bit ไวกอนแลว จึงมาสั่ง Program หรือ Verify หรือ Read ในภายหลังโดยยังไมไดส่ังลบขอมูลเกาออกเสียกอน ซึ่งใหแกปญหาดวยการสั่งลบขอมูล (Erase) เสียกอนแลวจึงสั่งเขียนขอมูลใหมอีกครั้งหนึ่ง
3. The board reply is not correct เปนความผิดพลาดที่เกิดจากการสื่อสารขอมูลระหวางโปรแกรม FLIP กับ ไมโครคอนโทรลเลอร เกิดความผิดพลาดในลักษณะของ Framing Error ข้ึน ซึ่งปญหาอาจเกิดจากการกําหนดคา Baudrate ไมถูกตองกับคาความถี่ของ Crystal ที่ใชกับบอรด
4. The RS232 port could not be opened เปนความผิดพลาดที่เกิดจากโปรแกรม FLIP ไมสามารถสั่งเปดการทํางานของพอรตสื่อสารอนุกรม RS232 ของเครื่องคอมพิวเตอร PC ได ซึ่งอาจเกิดจากการกําหนดหมายเลข Comport ในโปรแกรมที่เลือกไวไมมีอยูจริง หรือมีโปรแกรมอื่นเรียกใชงาน Comport นั้นคางอยู หรือเรียกใชงานโปรแกรม FLIP ในขณะที่กําลังสั่งเปดโปรแกรมอื่นๆที่มีการใชงาน Comport
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -19- WWW.ETT.CO.TH
อยูดวย ซึ่งใหลองปดโปรแกรม FLIP แลวสั่งเปดโปรแกรมใหมดู ถายังเกิดปญหาเดิมอยูอีกอาจลองตรวจสอบสาเหตุอ่ืนๆที่เกี่ยวของและทําการแกไข
5. Check sum error เปนความผิดพลาดที่เกิดจากการที่ CPU รับขอมูลที่สงไปจากคอมพิวเตอร PC ไมครบถูกตองทั้งหมด ซึ่งปญหาอาจเกิดจากการกําหนดความเร็วในการสื่อสาร Baudrate เร็วเกินไป หรือกําหนดไวไมเหมาะสมกับคาความถี่ Crystal ใหลองเปลี่ยนคา Baudrate ใหชาลงกวาเดิม ซึ่งคาที่เหมาะสมไดแก 9600,19200 และ 38400 แตถาคอมพิวเตอรไมเร็วมากนักก็อาจกําหนดเปน 57600 หรือ 115200 ก็ได แตถากําหนดคาสูงๆแลวเกิด Error ควรลดคา Baudrate ใหชาลงกวาเดิม
6. การสั่ง Load HEX ไมได เปนความผิดพลาดที่เกิดจากการที่โปรแกรม FLIP ไมสามารถอานขอมูลใน HEX File ออกมาได ซึ่งอาจเกิดจากไฟลที่ส่ังโหลดนั้น ไมใชไฟลแบบ Intel HEX เนื่องจากโปรแกรม FLIP สามารถใชงานกับไฟลแบบ Intel HEX เทานั้น สวนไฟลในรูปแบบอื่นๆจะไมสามารถนํามาใชงานกับโปรแกรมนี้ได สวนปญหาอีกประการหนึ่งที่มักพบอยูบอยๆ คือโปรแกรม FLIP ไมสามารถอาน HEX File ไดทั้งๆที่ไฟลที่ส่ังใหอานนั้นเปนไฟลแบบ Intel HEX อยูแลว ซึ่งที่พบอยูบอยๆก็ไดแก HEX File ที่ส่ังแปลโดยใชโปรแกรม Assembler ของ SXA51.EXE เนื่องจาก HEX File ที่ไดจากการแปลของโปรแกรมตัวนี้จะเกิดบรรทัดวางอยูในไฟลในสวนเริ่มตนบรรทัดแรกดวย 1 บรรทัด ซึ่งตามรูปแบบของ HEX File แลว ในแตละบรรทัดของไฟลจะตองเริ่มตนดวยเครื่องหมายโคลอน (:) แลวตามดวยขอมูลตางๆในบรรทัดนั้น แตเมื่อบรรทัดแรกเปนบรรทัดวางโปรแกรมจึงแสดง Error วาไมใช HEX File โดยโปรแกรม FLIP จะแสดง Error .ใหทราบดังนี้
สําหรับวธิีการแกไขปญหานีใ้หใชโปรแกรม Text Editor เปด HEX File ที่ไดจากการแปลของ SXA51.EXE แลวตัดบรรทัดวางในไฟลนัน้ทิง้ไปแลวสั่งบันทกึใหมก็จะสามารถนาํไปใชไดแลว :10000000758921759850D2BCC2ACC2A9C2AB74FB31 :10001000F58DF58BD28CD28ED2AF1200880D0A0AE4 :1000200044454D4F20544553542043502D4A52359A :100030003141433220563120262056322028313299 :100040002D436C6F636B290D0A50726573732041E9 :00000001FF
รูปแสดง ลักษณะของ HEX File ที่ไดจาก SXA51 ซ่ึงจะเกิดบรรทัดวางอยู 1 บรรทัด
บรรทัดวางที่ไดจากการแปล ของโปรแกรม SXA51
คูมือการใชงานบอรดไมโครคอนโทรลเลอรรุน ET-BASE51 AC3 (AT89C51AC3)
ETT CO.,LTD -20- WWW.ETT.CO.TH
:10000000758921759850D2BCC2ACC2A9C2AB74FB31 :10001000F58DF58BD28CD28ED2AF1200880D0A0AE4 :1000200044454D4F20544553542043502D4A52359A :100030003141433220563120262056322028313299 :100040002D436C6F636B290D0A50726573732041E9 :00000001FF
รูปแสดง ลักษณะของ HEX File ที่สามารถใชกับโปรแกรม FLIP ไดหลังตัดบรรทัดวางทิง้ไปแลว
7. เมื่อสั่งโปรแกรมขอมูลใหกับ CPU เรียบรอยแลวหลังจากรีเซ็ตบอรดแลวไมทํางาน ซึ่งปญหานี้อาจเกิดจากสาเหตุความผิดพลาดหลายประการ ซึ่งพอสรุปไดดังนี้ คือ - โปรแกรมที่เขียนขึ้นไมถูกตองยังไมสามารถทํางานไดเอง ซึ่งปญหานี้ผูใชตองหาทางตรวจสอบและ
แกไขความผิดพลาดที่เกิดขึ้นเอง - ยังไมไดมีการสั่ง Load HEX เขามารอไวยัง Buffer แลวสั่งโปรแกรม (Program Device) ซึ่ง
โปรแกรม FLIP จะนําขอมูลที่อยูใน Buffer เขียนไปยังหนวยความจําของโปรแกรม - สวิตช PSEN อาจถูกกดคางอยู จึงทําใหการรีเซ็ตบอรดทุกๆครั้งนั้น CPU จะเขาไปทํางานใน
Monitor Mode เสมอ ซึ่งปญหานี้สามารถตรวจสอบไดโดยการวัดระดับลอจิกที่ขาสัญญาณ PSEN ของ CPU ซึ่งอยูที่ขา 45 (PLCC-52) ซึ่งควรมีสภาวะเปน “1” ถาไมมีการกดสวิตช PSEN ไว และควรมีสภาวะเปน “0” ถามีการกดสวิตช PSEN ไว
- สวิตช RESET อาจถูกกดคางอยู จึงทําให CPU ไมสามารถหลุดพนจากสภาวะการรีเซ็ตได ซึ่งปญหานี้สามารถตรวจสอบไดโดยการวัดระดับลอจิกที่ขาสัญญาณ RESET ของ CPU ซึ่งอยูที่ขา 1 (PLCC-52) ซึ่งควรมีสภาวะเปน “0” ถาไมมีการกดสวิตช RESET ไว และควรมีสภาวะเปน “1” ถามีการกดสวิตช RESET ไว
- คาของ Device BSB และ SBV ยังไมไดถูกกําหนดใหมีคาเปน 00H ไว ซึ่งจะทําใหโปรแกรมกระโดดไปทํางานยังตําแหนงที่ชี้โดย Device SBV แทน ซึ่งถาคาของ Device SBV ไมใชศูนยก็จะเหมือนกับวาโปรแกรมไมทํางาน ซึ่งการแกไข ปญหานี้ หลังจากสั่งโปรแกรมขอมูลใหกับ CPU เรียบรอยแลว ควรกําหนดใหคาของ Device BSB และ Device SBV มีคาเปน 00H ไวทั้งคู
12
34
56
ABCD
65
43
21
D C B A
Title
Num
ber
Revi
sion
Size B Dat
e:13
-Mar
-200
6Sh
eet
of
File
:D
:\My
Circ
uit\M
yCirc
uit.D
dbD
raw
n By
:
18.4
32M
Hz 22
pF22
pF
C1+
1
C1-
3
C2+
4
C2-
5G
ND
15
V-
6
VCC
16
V+
2
R1O
12
T1I
11
R2O
9
T2I
10T2
O7
R2I
8T1
O14
R1I
13
MA
X23
2
10uF
10uF
10uF
10uF
VCC
VCC
1 2 3 4 RS-2
32
RXD
TXD
VCC
P1.0
PWR
560
VCC
560
P1.0
CIRC
UIT
OF
ET-B
ASE
51 A
C3R5
1AC3
Ver
sion
1.0(
R0) Re
v.0
ETT
CO.,L
TD
(WW
W.E
TT.C
O.T
H)
Eaka
chai
Mak
arn
11V
CC
GN
D
P3.0
P3.1
10K
P0.0
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P0.7
P2.0
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
P3.0
P3.2
P3.1
P3.3
P3.4
P3.5
P3.6
P3.7
P4.0
P4.1
P1.7
P1.6
P1.5
P1.4
P1.3
P1.2
P1.1
P1.0
VCC
VCC
RESET
PSEN
PC81
7
PC81
7
330
BC54
7
2K7
0.1u
F
330
VCC
10uF
1 2 3 4 5
ET-D
OW
NLO
AD
PRES
TXD
RXD
GN
D
PMO
D
10K
VCC
RES+
PSEN
RES+
47K
1K
VCC
PSEN
10K
P4.2
P4.3
P4.4
P0.0
/AD
035
P0.1
/AD
137
P0.2
/AD
238
P0.3
/AD
339
P0.4
/AD
440
P0.5
/AD
541
P0.6
/AD
643
P0.7
/AD
744
P1.0
/AN
0/T2
4
P1.1
/AN
1/T2
EX5
P1.2
/AN
2/EC
I6
P1.4
/AN
4/CE
X1
8P1
.3/A
N3/
CEX
07
P1.5
/AN
5/CE
X2
9
P1.6
/AN
6/CE
X3
10
P1.7
/AN
7/CE
X4
11
P2.0
/A8
34
P2.1
/A9
32
P2.2
/A10
31
P2.3
/A11
30
P2.4
/A12
29
P2.5
/A13
28
P2.6
/A14
26
P2.7
/A15
25
P3.0
/RX
D14
P3.1
/TX
D16
P3.2
/INT0
17
P3.3
/INT1
18
P3.4
/T0
19
P3.5
/T1/
SS20
P3.6
/WR
21
P3.7
/RD
22
P4.0
23
P4.1
24
XTAL1 48
XTAL2 47
EA12
ALE
46
PSEN
45
VA
GN
D2
VA
REF
3
GN
D52
VCC
49
RESE
T1
P4.2
/MIS
O33
P4.3
/SCK
15
P4.4
/MO
SI36
VCC
50
TEST
51
AT8
9C51
AC3
VCC
Vre
f(+3V
)
VCC
0.1u
F
12
34
56
78
910
PORT
-P0[
0..7
]
12
34
56
78
910
PORT
-P1[
0..7
]
12
34
56
78
910
PORT
-P2[
0..7
]
12
34
56
78
910
PORT
-P3[
2..7
]
12
34
56
78
910
PORT
-P4[
0..4
]
P0.1
P0.3
P0.5
P0.7
GN
D
P0.0
P0.2
P0.4
P0.6
+5V
P1.0
P1.2
P1.4
P1.6
+5V
P2.0
P2.2
P2.4
P2.6
+5V
P2.1
P2.3
P2.5
P2.7
GN
D
P3.3
P3.5
P3.7
GN
D
P4.1
P4.3
GN
D
P4.0
P4.2
P4.4
+5V
P3.2
P3.4
P3.6
+5V
P1.1
P1.3
P1.5
P1.7
GN
D
12
34
56
78
910
1112
1314
ET-C
LCD
GN
DV
ORW D
0D
2D
4D
6
+5V
RS EN D1
D3
D5
D7
1 2 3 4 5 6 7 8 9 10 11 12 13 14
ET-C
LCD
P2.4
P2.5
P2.6
P2.7
P2.3
P2.2
P2.1
10K
VCC
GN
D
VO
RS RW EN D0
D1
D2
D3
D4
D5
D6
D7
VCC
ON
/OFF
1 2
+5V
5V6
+5V
47uF
GN
D
VCC
4O
SC3
GN
D2
NC
1
29.4
912
MH
z
10K
VCC
12
34
ABCD
43
21
D C B ATi
tle
Num
ber
Revi
sion
Size A4
Dat
e:31
-Mar
-200
6Sh
eet
of
File
:D
:\My
Circ
uit\R
S232
CABL
E.dd
bD
raw
n By
:
1 6 2 7 3 8 4 9 5
DB9
(FEM
ALE
)
1 2 3 4
ET-R
S232
RXD
TXD
GN
D
RXD
RTS
DSR
TXD
CTS
DTR
GN
D
CD RI
+VCC
RS23
2-PC
1 2 3 4ET
-RS2
32
1 14 2 15 3 16 4 17 5 18 6 19 7 20 8 21 9 22 10 23 11 24 12 25 13
DB2
5(FE
MA
LE)
TXD
RXD
RTS
CTS
DSR
GN
DD
TR
+VCC
RXD
TXD
GN
D
VCC
VCC
RS23
2-PC
11
1.0
CABL
E RS
232
ETT
CO.,L
TD (W
WW
.ETT
.CO
.TH
)
1 6 2 7 3 8 4 9 5
DB9
(FEM
ALE
)
TXD
RXD
GN
D
RXD
RTS
DSR
TXD
CTS
DTR
GN
D
CD RI
PMO
D
RS23
2-PC
1 2 3 4 5
ET-D
OW
NLO
AD
PRES