MCS51 ADuC832 62 Kbyte Flash - ETT · 2 รูปที่ 1.1 แสดงโครงสร...
Transcript of MCS51 ADuC832 62 Kbyte Flash - ETT · 2 รูปที่ 1.1 แสดงโครงสร...
-
คูม่อืการใชบ้อรด์CP-jr51-ADU832 V1CP-jr51-ADU832 V1CP-jr51-ADU832 V1CP-jr51-ADU832 V1CP-jr51-ADU832 V1
บริษัท อทีที ีจำกดั1112/96-98 ถนนสขุุมวิท แขวงพระโขนง เขตคลองเตย กรุงเทพฯ 10110 http://www.etteam.com
www.ett.co.th1112/96-98 Sukhumvit Rd., Phrakanong Klongtoey Bangkok 10110 http://www.ett.co.th
ETT CO., LTD.Tel : 02-7121120 Fax : 02-3917216 email : [email protected]
MCS51 ADuC832 62 Kbyte Flash
MCS51MCS51MCS51MCS51MCS51
-
สงวนลขิสทิธิต์ามพระราชบญัญตัลิิขสิทธิ ์พ.ศ. 2537ห้ามลอกเลียนไม่ว่าส่วนหนึ่งส่วนใดของหนังสือเล่มนี้ไม่ว่าในรูปแบบใดนอกจากจะได้รับอนุญาตเป็นลายลักษณอั์กษรจากผูจั้ดพมิพ์
จัดพมิพโ์ดยบริษัท อีทที ีจำกดั1112/96-98 ถนนสขุมุวทิ แขวงพระโขนงเขตคลองเตย กรุงเทพ 10110โทร. 02-712-1120 - 1 FAX 02- 391-7216.E-Mail : [email protected]
ISBN 974 - 91724 - 5 - 0
พมิพค์รัง้ที ่ 1 จำนวน 1000 เลม่10 พฤศจกิายน 2546จำนวน 40 หนา้ราคา 60 บาท
ผู้เขยีน นายจกัรพนัธ ์จิตรทรพัย์
ช่ือหนงัสอื “คูมื่อการใชง้านหุน่ยนต ์ET-ROBOT RD2”
www.ett.co.th
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. I WWW.ETT.CO.TH
คํานํา Preface
ปจจุบันชิพ Microcontroler ตระกูล 8051 ของบริษัทผูผลิตชั้นนําตางๆ ไดพัฒนาความสามารถของชิพ CPU ใหมีความสามารถพิเศษเพิ่มมากขึ้นดวยการนําเอาฟงกชั่นการใชงานตางๆ เพิ่มเขามา เชน Analog to Digital Converter, Digital to Analog Converter หรือ PulseWidth Modulation และ อ่ืนๆ รวมอยูในตัว CPU ดวย เพื่ออํานวยความสะดวกในการใชงานมากยิ่งขึ้น และ MCU ADuC832 ซึ่งเปนหัวใจของบอรดทดลองรุนนี้ก็เชนเดียวกัน เปนชิพ Micro controler Unit ที่ไดรวบรวมเอาการใชงานตางๆ ที่ไดกลาวมาแลวขางตนไวภายในชิพตัวนี้ดวยเชนกัน โดยชุดคําสั่งตางๆ ยังคงเหมือนกับชุดคําสั่ง 8051 ทุกประการเพียงแตจะมีรีจิสเตอรที่ใชในการควบคุมฟงกชั่นตางๆ เพิ่มมากขึ้น ภายในบอรด CP-JR51-ADU832 V1.0 นี้ จะใช MCU เบอร ADuC832 ซึ่งภายในตัว MCU จะมีเฟสล็อกลูปอยูภายในโดย Crystal ที่ใชในบอรดนี้ มีคา 32.768 kHz และ ถูกควบคุมความถี่โดย เฟสล็อกลูปที่จะสามารถกําเนิดความถี่ Core Clock ไดสูงสุดถึง 16.78 MHz เลยทีเดียว เนื่องจาก MCU ADuC832 นั้นมีฟงกชั่นการทํางานพิเศษเพิ่มข้ึนมาจาก 8051 ทั่วไปซึ่งฟงกชั่นหนาที่บางอยางจะตองตออุปกรณ Hardware เพิ่มเติมที่ภายนอกดวย ดังนั้น ในบอรดทดลองรุนนี้จึงไดรองรับการทํางานไวอยางครบถวน โดยที่ผูใชไมตองตออุปกรณอะไรเพิ่มเติมเลย นอกจากนั้น MCU เบอร ADuC832 ยังสามารถที่จะตอหนวยความจํา RAM ภายนอกไดมากสุดๆ ถึง 16 MByte (แตในบอรดรุนนี้จะรองรับการใชงานสูงสุดที่ 1MByte) สุดทายนี้ผูเขียน และ ทีมงาน ETT หวังเปนอยางยิ่งวาหนังสือคูมือ และ บอรดทดลอง CP-JR51-ADU832 V1.0 นี้จะชวยใหผูอาน และ ผูสนใจใชงาน MCU เบอร ADuC832 ไดอยางเต็มประสิทธิภาพ และ หากผูอานมีขอคิดเห็น หรือ มีขอทวงติงเกี่ยวกับเนื้อหาภายในหนังสือคูมือนี้ สามารถใหขอคิดเห็นผานทาง e-mail : [email protected] ซึ่งทางผูเขียน และ ทีมงาน ETT จะขอนอมรับไวเพื่อการปรับปรุงในการพิมพคร้ังตอไป จักรพันธ จิตรทรัพย 24 ตุลาคม 2546
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. II WWW.ETT.CO.TH
สารบัญ Contens
บทที่ 1 ลักษณะทั่วไปของบอรด CP-JR51- ADU832 V1.0 1
• โครงสรางของบอรด CP-JR51-ADU832 V1.0 2
บทที่ 2 การใชงานพอรตและ ทรัพยากรบนบอรด CP-JR51-ADU832 3
• การใชงาน Port-P0 3 • การใชงาน Port-P1 4 • การใชงาน Port-P2 5 • การใชงาน Port-P3 5 • การใชงานพอรต I2C BUS 6 • การใชงาน Interrupt ของอุปกรณ I2C 7 • การใชงานพอรต ADC 7 • การใชงานพอรต DAC 7 • พอรต PWM 8 • การใชงานหนวยความจําภายนอก (External Memory) 8 • ข้ัวตอ Power Supply 9
บทที่ 3 การใชงานพอรตส่ือสารอนุกรม RS232/RS422/RS485 10
• การสื่อสารอนุกรมแบบ RS232 11 • การสื่อสารอนุกรมแบบ RS422 13
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. III WWW.ETT.CO.TH
• การสื่อสารอนุกรมแบบ RS485 14 • การกําหนด Jumper สําหรับการสื่อสารแบบ RS422/485 15
บทที่ 4 การพัฒนาโปรแกรมบนบอรด CP-JR51-Adu832 V1.0 18
• การติดตั้งโปรแกรม WSD 19 • การตั้งคากอนใชโปรแกรม WSD 21 • การใชงานโปรแกรม WSD 24 • การใชงาน In – Circuit Serial Download Mode 25 • ปญหาตางๆ ในขณะใชงานโปรแกรม WSD 26 • ตัวอยางการพัฒนาโปรแกรม 27
ภาคผนวก ก. Memory and SFR maps ภาคผนวก ข. โครงสราง และ ตําแหนงขาของ MCU ADuC832 ภาคผนวก ค. วงจรบอรด CP-JR51-ADU832
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 1 WWW.ETT.CO.TH
1 ลักษณะทั่วไปของบอรด
CP-JR51- ADU832 V1.0 ลักษณะทั่วไป บอรดทดลองไมโครคอนโทรลเลอร รุน CP-JR51-ADU832 V1.0 นี้ ภายในใช Microcontroller เบอร ADuC832 หนวยความจําภายในเปน Flash/EE memory บอรดรุนนี้ไดดึงคุณสมบัติบนตัว MCU ADuC832 ข้ึนมาใชงานอยางเต็มที่ซึ่งไดแก Multichannel 12-bit ADC จํานวน 8 chanel, 12-bit DAC จํานวน 2 channel, Output 16-bit PWM จํานวน 2 channel, การสื่อสารอนุกรม UART, CI 2 , SPI และ การตอหนวยความจํา RAM ภายนอกไดสูงสุดถึง 16 Mbyte ( สําหรับบอรด CP-JR51-ADU832 สามารถเขาถึงหนวยความจําภายนอกสูงสุดที่ 1Mbyte ) นอกจากนั้นยังมี Feature อ่ืนๆ ที่หนาสนใจซึ่งจะกลาวอยางละเอียดในบทตอไป ทั้งหมดนี้ถูกรวมอยูบน ADuC832 ชิพเดียว, MCU ADuC832 เปนไมโครคอนโทรลเลอรที่มีการทํางานแบบ 8052 ดังนั้น การพัฒนาโปรแกรมจึงสามารถใชชุดคําสั่ง 8051 ได เพียงแตจะมี Register และ Function ตางๆ ที่เพิ่มข้ึน บอรดไมโครคอนโทรลเลอรรุนนี้ นอกจากไดเลือกใชชิป Microcontroller เบอร ADuC832 ที่ไดรวบรวมฟงกชั่นตางๆ ไวมากมายแลว อยางไรก็ตามฟงกชั่นการทํางานบางฟงกชั่นนั้นยังตองการอุปกรณ จากภายนอกเพิ่มเติมถึงจะให Microcontroller เบอร ADuC832 นี้ทํางานไดซึ่งไดแก พื้นที่การตอ RAM ภายนอก, พื้นที่การใชงานหนวยความจํา 24XX และ RTC ซึ่งเปนการติดตอบน CI 2 Bus และอื่นๆ ดังนั้นทางทีมงาน ETT จึงไดออกแบบบอรดทดลองนี้ข้ึนมาเพื่ออํานวยความสะดวกใหแกผูใชที่จะนําไปพัฒนาตอไป.
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 2 WWW.ETT.CO.TH
รูปที่ 1.1 แสดงโครงสรางของบอรด CP-JR51-ADU832 V1.0
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 3 WWW.ETT.CO.TH
2 การใชงานพอรต และ ทรัพยากรบนบอรด CP-JR51-ADU832
การจัดสรร I/O ของบอรด CP-JR51-ADU832 ไดพยายามออกแบบวงจรใหมีความออนตัวมากที่สุด เพื่อใหผูใชสามารถนําบอรดไปใชงานโดยไมตองดัดแปลงโครงสรางของบอรดมากนัก ดังนั้น จึงไดมีการจัดสรรขาสัญญาณ Port I/O ของชิพ MCU ADuC832 ใหสามารถใชงานไดหลายหนาที่โดยผูใชสามารถเลือกไดตามตองการ โดยบางขาสัญญาณสามารถกําหนดไดจากโปรแกรมของผูใชเอง แตบางขาจะสามารถกําหนดไดจาก Jumper ภายในบอรด, MCU ADuC832 จะมีพอรตที่เปนขาของตัวชิพเอง ทั้งหมด 4 พอรตดวยกันคือ P0, P1, P2, P3 ซึ่งพอรตเหลานี้ทางทีมงาน ETT ไดดึงออกมาใหผูใช ไดใชงาน คือ Port-P0, Port-P1, Port-P2, Port-P3 และ บนบอรดยังมีพอรตอื่นๆ อีกซึ่งไดแสดงรายละเอียด และ การใชงานขางลางนี้ คือ การใชงาน Port-P0
สําหรับการใชงานพอรตนี้สามารถใชงานเปน Input หรือ Output ก็ไดแลวแตการใชงานของผูใช โดยพอรต 0 นี้จะมีขนาด 8-bit Open Drain เมื่อทําการรีเซ็ตจะทําใหพอรตนี้มีคาเปน FFH ซึ่งหากตองการเปลี่ยนแปลงคาขอมูลของพอรตสามารถทําไดโดยใชคําสั่ง MOV P0,#XXH และ นอกจากนั้นพอรต P0 ยังใชงานเปน Low Address Bus หรือ Data Bus อีกดวย ซึ่งจะถูกใชงานเมื่อมีการใชคําสั่งติดตอกับ External Memory เชน การใชคําสั่ง MOVX เปนตน รูปแสดงการเชื่อมตอพอรต P0 แสดงดังรูปขางลาง
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 4 WWW.ETT.CO.TH
รูปที่ 2.1 การใชงาน Port1-P1
สําหรับการใชงานพอรตนี้จะไมเหมือนกับพอรตอื่นๆ คือ สามารถใชเปน Input ไดอยางเดียวเทานั้น ไมสามารถใชงานเปน Output ได มีขนาด 8-bit, เมื่อทําการรีเซ็ตจะทําใหพอรตนี้มีคาเปน FFH ซึ่งในการออกแบบบนบอรดรุนนี้จะจัดวงจรเปน 2 สวน คือ สวนหนึ่งจะตอเขาวงจร ADC 8 Channel และ อีกสวนหนึ่งจะตอเปน Port-P1 ลอยไวเผื่อผูใชตองการใชเปนอินพุตของการใชงานอื่นๆ รูปแสดงการเชื่อมตอพอรต P1 แสดงดังรูปขางลาง
รูปที่ 2.2
D[0..7] / A[0..7]
P0.0P0.7Port-P0
Vcc
P0.0 P0.1P0.2 P0.3P0.4 P0.5P0.6 P0.7
ADuC 832
to memory
Port-P1
Vcc
P1.0 P1.1P1.2 P1.3P1.4 P1.5P1.6 P1.7
1/4
VCC2
P1.0
P1.7
ADuC 832
4/4
to ADC Port
ch0
ch7
P0.0
P0.7
TLV2474C
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 5 WWW.ETT.CO.TH
การใชงาน Port-P2 สําหรับการใชงาน Port-P2 นี้สามารถใชงานเปน Input หรือ Output ก็ไดแลวแตการใชงานของผูใช
มีขนาด 8-bit เมื่อทําการรีเซ็ตจะทําใหพอรตนี้มีคาเปน FFH ซึ่งจะมีรีจิสเตอร Pull-up อยูภายใน ซึ่งในการออกแบบบนบอรดรุนนี้จะจัดวงจรเปน 2 สวน คือ สวนหนึ่งจะตอออกไปที่ Port-P2 สําหรับใชงานทั่วไป และ อีกสวนหนึ่งจะใชเปน High Address Bus และ Page Address Bus เมื่อติดตอกับ External Memory รูปแสดงการเชื่อมตอพอรต P2 แสดงดังรูปขางลาง
รูปที่ 2.3
การใชงาน Port-P3 สําหรับการใชงาน Port-P3 นี้สามารถใชงานเปน Input หรือ Output ก็ไดแลวแตการใชงานของผู
ใช มีขนาด 8-bit เมื่อทําการรีเซ็ตจะทําใหพอรตนี้มีคาเปน FFH โดยมีรีจิสเตอร Pull-up อยูภายใน การออกแบบวงจรนั้นสวนหนึ่งจะตอออกไปที่ Port-P3 เพื่อใชงานทั่วไป โดย จะไมตอบิต P3.0 และ P3.1 ออกไปที่ Port-P3 เนื่องจากจะใชในการสื่อสารอนุกรมอยางเดียว แลวนอกจากนั้นยังมีอีกบางขาที่ถูกจัดสรรหนาที่ออกไปใชงานสวนอื่นดวย ดังนี้
• P3.2 ซึ่ง ทําหนาที่เปนขา INT0 ตอไปที่ขา 7 ของ IC DS1307 ซึ่งเปนไอซี RTC (Serial Real Time Clock)
• p3.3 ตอไปที่พอรต PWM1 • p3.5 ตอไปที่ พอรตการสื่อสารอนุกรม RS422/485
P2.0
P2.7
ADuC 832
Port-P2
Vcc
P2.0 P2.1P2.2 P2.3P2.4 P2.5P2.6 P2.7
A[16 - 18]A[19 - 23]A[8 - 15]
74HCT573
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0 A16
A17A18A19A20A21A22A23
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 6 WWW.ETT.CO.TH
รูปที่ 2.4
การใชงานพอรต I2C BUS
ภายใน MCU ADuC832 ไดมีฟงกชั่นการใชงานของ CI 2 บรรจุรวมอยูภายในชิพอยูแลว โดยจะมีขาใชงาน 2 ขา คือ ขา SDATA ทําหนาที่เปนขารับสงขอมูล และ ขา SCLOCK ทําหนาที่สงสัญญาณ Clock เพื่อกําหนดจังหวะการรับสงขอมูลบนบัส CI 2 และ บนบอรดไดมีอุปกรณ CI 2 อยูบนบอรดดวย คือ IC 24XX ซึ่งเปน EEPROM และ IC DS1307 ซึ่งเปน IC RTC(Serial Real Time Clock) และ นอกจากนี้ยังมีพอรต I2C BUS เพื่อใชในเพิ่มเติมจํานวนอุปกรณบน I2C BUS ไดอีกดวย รูปการจัดขา และ การจัดวงจรแสดงดังขางลาง
รูปที่ 2.5 จากรูปที่ 2.5 (ขางบน) ในสวนของ Address ของตัว EEPROM จะถูกตั้งไวที่ Address “000” ซึ่งจะเห็นไดจากขา A0, A1, A2 ถูกตอลง Ground ไว
SDATA
SCLOCK
ADuC 832
24LC256
DS1307
A0A1A2Vss
VccWPSCLSDA
X1X2VbatGND
VccSQW/OUT
SCLSDA
VCC
VCC
VCC
I2C BUS
Vcc
GNDGND SCLGND SDAGND NCGND NC
VccP3.2
JP
P3.0 P3.7
ADuC 832
Port-P3
P3.0 P3.1P3.2 P3.3P3.4 P3.5P3.6 P3.7
Vcc
Vcc
Vcc
P3.3
P3.5
PWM
0PW
M1
To Serial CircuitP3.0,P3.1,P3.4
Pin
7 of
DS1
307
P3.2
INT0
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 7 WWW.ETT.CO.TH
การใชงาน Interrupt ของอุปกรณ I2C สัญญาณ Interrupt จากอุปกรณ CI 2 นั้น เนื่องจากการออกแบบวงจรของบอรดจะกําหนดใหสัญญาณที่ใชสําหรับ รับ การ Interrupt จากภายนอก ( INT0 ) ถูกตอรวมกับขาสัญญาณ Interrupt ของ RTC โดยบอรด CP-JR51-ADU832 จะมี Jumper สําหรับตัด หรือ ตอ การเลือกใชสัญญาณ Interrupt ที่ขาของอุปกรณ RTC ดังนั้น ถาผูใชจะเลือกใชการ Interrupt จะอุปกรณ RTC ก็ใหตอ Jumper วงจรการใชงานสามารถดูไดจากรูปที่ 2.5 ซึ่งที่พอรต I2C Bus นั้นทางทีมงาน ETT ไมไดรองรับสัญญาณ Interrupt จากภายนอกเอาไว
การใชงานพอรต ADC
พอรตนี้มีขนาด 2 Pin ซึ่งภายในบอรดจะตอใชงานทั้งหมด คือ จํานวน 8 channel ซึ่งถูกตอออกมาผาน Buffer Op-Amp ทางขา P1.0 – P1.7 ของ MCU ADuC832 โดยขาหนึ่งจะเปนขากราวด และ อีกขาหนึ่งจะเปนขาสัญญาณซึ่งจะถูกตอไปที่ Op – Amp ทําหนาที่เปน Buffer ตําแหนงขา และ การตอวงจร ADC แสดงดังรูปที่ 2.2 โดยหนาที่ของพอรตนี้ คือ แปลงสัญญาณ Analog จากภายนอกบอรดทดลองใหเปนสัญญาณ Digital การใชงานพอรต DAC
พอรตนี้มีขนาด 2 Pin โดยขาหนึ่งจะเปนขากราวด และ อีกขาหนึ่งจะเปนขาสัญญาณเอาทพุตซึ่งถูกตอออกมาจากเอาทพุตของ Op – Amp ที่ทําหนาที่เปน Buffer โดยภายในบอรดจะมี DAC 2 ชุด หรือ 2 channel คือ พอรต DAC0 และ DAC1 ซึ่งถูกตอออกมาจากขา DAC0 และ ขา DAC1 ของ MCU ADuC832 การตอวงจร DAC แสดงดังรูปที่ 2.6 โดยหนาที่ของพอรตนี้ คือ การแปลงสัญญาณ Digital ใหเปนสัญญาณ Analog ออกไปเปนเอาทพุต
รูปที่ 2.6
DAC1DAC0
ADuC 832
1/2+
-
VCC2
DAC0
2/2+
-
AVDD
DAC1
TLC272CP
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 8 WWW.ETT.CO.TH
พอรต PWM พอรตนี้มีขนาด 3 Pin โดยประกอบไปดวยขา สัญญาณ, ขาไฟบวก, และ ขากราวด โดยภายใน
บอรดจะมี PWM 2 ชุด คือ PWM0 และ PWM1 ซึ่ง การจัดตําแหนงขา และ วงจร PWM แสดงดังรูปที่ 2.4 โดยหนาที่ของพอรตนี้ คือ ผลิตสัญญาณ Pulsewidth Modulator (PWM) ออกทางพอรตนี้ ซึ่งภายในจะมีโหมดการทํางานอยู 6 โหมด ซึ่งผูใชสามารถเลือกใชงานไดตามความเหมาะสม การใชงานหนวยความจําภายนอก (External Memory) คุณสมบัติเดนอีกประการหนึ่งของ MCU เบอรนี้ก็คือ สามารถตอ External Memory ไดถึง 16 Mbyte แตสําหรับการออกแบบบอรดทดลอง CP-JR51-ADU832 นี้จะรองรับการใชงาน External Memory ไวที่ 1 Mbyte การจัดวงจรจะใช พอรต 0 เปนมัลติเพล็กซของสัญญาณ DATA Bus และ Low Address Bus และ ใชพอรต 2 เปน High Address และ Page Address Bus ซึ่งการตอวงจรแสดงไดดังรูปที่ 2.7
รูปแสดง
รูปที่ 2.7
P0.0P0.7
ADuC 832
P2.0
P2.7
74HCT573
A2A1A0
A3A4A5A6A7
A10A9A8
A11A12A13A14A15A16A17A18
/CS/OE/WE
D2D1D0
D3D4D5D6D7
A2A1A0
A3A4A5A6A7
A10A9A8
A11A12A13A14A15A16A17A18
/CS/OE/WE
D2D1D0
D3D4D5D6D7
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7
COC
D1D2D3D4
D6D5
D7D8
Q1Q2Q3Q4
Q6Q5
Q7Q8
A7A6A5A4A3A2A1A0
74HCT138
ABC
Y0Y1
/G2A/G2B
G1
74HCT573
P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
COC
D1D2D3D4
D6D5
D7D8
Q1Q2Q3Q4
Q6Q5
Q7Q8
A16A17A18A19A20A21A22A23
DS1210
8 1
5 6/CE
Vcc
/CEO
VCCOVCCI
DS1210
8 1
5 6/CE
Vcc
/CEO
VCCOVCCI
628512628512
A7A6A5A4A3A2A1A0
/WR
/RD
2
2
Vbat
ALE
ALE
Vcc
JP
JP
Vcc Vcc
3V JP
JP
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 9 WWW.ETT.CO.TH
จากรูปที่ 2.7 เปนการตอหนวยความจําภายนอกโดยใชหนวยความจําขนาด 512 KByte จํานวน 2 ตัว เบอร 628512 ในวงจรจะมี Ic 74HCT573 จํานวน 2 ตัว ทําหนาที่ Latch คาตําแหนง Address ของการติดตอกับ External Memory นอกจากนั้นบนบอรดรุนนี้ยังมีวงจร Back up หนวยความจําภายนอกอีกดวย โดยใช Ic DS1210 ทําหนาที่ตรวจสอบ และ เปรียบเทียบสถานะของแหลงจายไฟดังนี้ คือ
• เปนการเลือกระหวางจะใชแหลงจายไฟ Vcc หรือ จะใชแหลงจายไฟจาก Battery Back up ใหกับ External Memory คือ ตัว Ic DS1210 จะตรวจสอบวาแรงดันทั้ง 2 อันไหนมีขนาดแรงดันสูงกวาจะเลือกอันนั้น โดยจะมี Voltage Drop ภายในนอยกวา 0.3 V
• จะมีการตรวจสอบแรงดันของแหลงจายไฟ (Vcc) วาลดลง หรือ ไมแนนอน (Power–fail) หรือ ถูกถอดออก หรือไม ถามีการตรวจสอบเจอจะทําใหขา Chip Enable(CEO ) คางสถานะปจจุบันไว
• การปองกันสถานะของแรงดันที่ไมคงที่ (Power–fail) ของขาอินพุต CE ที่ดีนั้น ขาเอาทพุต CEO จะตองรักษาคาแรงดันอยูในชวง 0.2 V ของแรงดัน VCCI หรือ แรงดันของ Battery การตรวจสอบพบสถานะแรงดันไมคงที่ (Power–fail) นั้นจะอยูในชวงแรงดัน 4.75 – 4.5 โวลต เมื่อขา 3 ตอลงกราวด ถา ขา 3 ตอที่ Vcco การตรวจสอบ Power–fail จะมีชวงแรงดันที่ 4.5 – 4.25 โวลต
นอกจากการทํางานของ Ic DS1210 ที่ไดกลาวไวขางบนแลวยังมีรายระเอียดอื่นๆ อีก ซึ่งผูใช
สามารถหาอานไดจาก Data sheet ซึ่งในกรณีที่ไมใช Ic DS1210 ภายในบอรดจะมี Jumper เพื่อเลือกการทํางานแบบไมใช Ic DS1210 โดยถาไมใช Ic DS1210 ก็ให ใส Jumper ทั้ง 4 ตัว ขั้วตอ Power Supply
ข้ัวตอแหลงจายไฟจากภายนอกจะใชขนาด 9 - 12 VAC/DC. คือ ตอใชงานไดทั้งไฟ DC และ ไฟ AC โดยจะจัดขั้วตอไว 2 แบบ แลวแตความตองการของผูใช ซึ่งแสดงดังรูปที่ 2.8
รูปที่ 2.8
9-12VAC/DC
1
2
3
4
D?
BRIDGE1
VCC
0.1uF 0.1uF
Vin1 Vout 3
GND
2
LM7805
470uF/25V
47uF/16V
560
LER?
9-12VAC/DC
-+
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 10 WWW.ETT.CO.TH
3 การใชงานพอรต สื่อสารอนุกรม RS232/RS422/RS485 ภายในตัว MCU เบอร ADuC832 ที่ใชกับบอรด CP-JR51-ADU832 นั้น จะมีวงจรสื่อสารแบบอนุกรม (UART) บรรจุรวมไวดวยแลว ซึ่งวงจรสวนนี้ผูใชงานสามารถทําการเขียนโปรแกรมควบคุมการสื่อสารขอมูลของ MCU กับอุปกรณอ่ืนๆไดตามตองการ โดยในสวนของโปรแกรมนั้น ผูใชสามารถกําหนดรูปแบบของการสื่อสารขอมูลไดเองจากโปรแกรมที่เขียนขึ้น ไมวาจะเปนความเร็วในการสื่อสาร (Baud rate) จํานวนบิตขอมูลในการรับสง (Data Bit) การกําหนดบิตรวจสอบความถูกตองขอมูล (Parity) และคุณสมบัติอ่ืนๆ ซึ่งในรายละเอียดสวนนี้จะไมขอกลาวถึง ขอใหผูใชศึกษาจากคูมือสถาปตยกรรมทางฮารดแวร หรือ Data Sheet ของ MCU เบอร ADuC832 เอง ซึ่งปรกติแลวขาสัญญาณสําหรับ รับ-สง ขอมูลของ MCU นั้น สามารถนําไปเชื่อมตอกับขาสัญญาณ รับ-สง ของอุปกรณอ่ืนๆได โดยขาสง (TX) ของ MCU ตองนําไปตอกับขารับ (RX) ของอุปกรณที่จะนํามาสื่อสารกัน สวนขารับขอมูล (RX) ของ MCU ก็ตองตอกับขาสงขอมูล (TX) จากอุปกรณที่จะนํามาส่ือสารกัน แตเนื่องจากขาสัญญาณ RX และ TX ของ MCU นั้น จะสามารถเชื่อมตอกับสัญญาณที่มีคุณสมบัติเปนแบบ ระดับลอจิก TTL เทานั้น ซึ่งถาใชวิธีการเชื่อมตอสัญญาณรับสงของ MCU กับอุปกรณโดยตรงนั้น จะสามารถสื่อสารกันไดเพียงระยะทางใกลๆหรือภายในแผงวงจรเดียวกันเทานั้น ไมสามารถสื่อสารกันดวยระยะทางไกลๆ ได ดังนั้น บอรด CP-JR51-ADU832 จึงไดออกแบบวงจร Line Driver สําหรับทําหนาที่เปน Buffer เพื่อเปลี่ยนแปลงระดับสัญญาณทางไฟฟาของขาสัญญาณ รับ-สง ขอมูลของ MCU ที่เปน แบบ TTL ใหสามารถรับสงขอมูลกันไดในระยะทางที่ไกลมากขึ้น โดยบอรด CP-JR51-ADU832 นั้น จะสามารถเลือกกําหนดรูปแบบของวงจร Line Driver สําหรับการสื่อสารอนุกรมได 3 แบบดวยกัน คือ
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 11 WWW.ETT.CO.TH
การสื่อสารอนุกรมแบบ RS232
ในกรณีนี้จะตองทําการติดตั้งไอซี Line Driver เพื่อเปลี่ยนระดับสัญญาณทางไฟฟาของขาสัญญาณสําหรับ รับ-สง ขอมูลแบบ TTL ของ MCU (RX และ TX) ใหเปนระดับสัญญาณทางไฟฟาแบบ RS232 (±12V) โดยการติดตั้งไอซีเบอร MAX232 เพื่อทําหนาที่ เปลี่ยนระดับสัญญาณ TTL จากขาสัญญาณสงขอมูล (TX) ของ MCU ใหเปนระดับสัญญาณ ±12V สําหรับสงไปยังขารับสัญญาณ (RX) ของอุปกรณภายนอก และในทางกลับกัน ก็จะทําหนาที่เปลี่ยนระดับสัญญาณสง (TX) แบบ RS232 (±12V) จากอุปกรณภายนอก ใหกลับมาเปนระดับ TTL เพื่อสงใหกับขารับขอมูล (RX) ของ MCU ดวย โดยเมื่อเปลี่ยนระดับสัญญาณในการรับสงขอมูลจาก TTL มาเปนแบบ RS232 นี้แลวจะทําใหสามารถทําการ รับ-สง ขอมูลกับอุปกรณภายนอกที่ใชระดับสัญญาณทางไฟฟาในการ รับ-สง แบบเดียวกัน (RS232) ไดไกลขึ้น ประมาณ 50ฟุต หรือ ประมาณ 15 เมตร โดยสามารถทําการ รับ-สง ขอมูลกับอุปกรณตางๆไดในลักษณะของตัวตอตัว (Point-to-Point) เทานั้น
สําหรับสายสัญญาณที่จะนํามาใชสําหรับทําการสื่อสารแบบ RS232 นั้น จะใชสัญญาณเพียง 2-3 เสน เทานั้น ทั้งนี้ข้ึนอยูกับความตองการในการสื่อสารวาตองการสื่อสารแบบทิศทางเดียวหรือสองทิศทาง
- การสื่อสาร RS232 แบบสองทิศทาง ซึ่งจะมีทั้งการรับขอมูลและสงขอมูลไปมา ระหวางดานรับและดานสง โดยในกรณีนี้จะตองใชสายสัญญาณจํานวน 3 เสน สัญญาณรับขอมูล (RXD) สัญญาณสงขอมูล(TXD) และสัญญาณอางอิง (GND) โดยในการเชื่อมตอสายนั้นจะตองทําการสลับสัญญาณกับอุปกรณปลายทางดวย คือ สัญญาณสง (TXD) จากบอรด CP-JR51-ADU832 จะตองตอเขากับสัญญาณรับ (RXD) ของอุปกรณ และสัญญาณสง (TXD) จากอุปกรณก็ตองตอกับสัญญาณรับ (RXD) ของบอรด สวนสัญญาณอางอิง (GND) จะตองตอตรงถึงกัน จึงจะสามารถทําการ รับ-สง ขอมูลกันได
- การสื่อสาร RS232 แบบทิศทางเดียว ซึ่งอาจเปนการรอรับขอมูลจากดานสงเพียงอยางเดียว หรืออาจเปนการสงขอมูลออกไปยังปลายทางเพียงอยางเดียว โดยไมมีการโตตอบขอมูลซึ่งกันและกัน ซึ่งวิธีนี้จะใชสายสัญญาณเพียง 2 เสน เทานั้น โดยถาเปนทางดานสง ก็จะตอเพียงสัญญาณสง (TXD) และสัญญาณอางอิง (GND) แตถาเปนทางดานรับ ก็จะตอเพียงสัญญาณรับ (RXD) และ สัญญาณอางอิง (GND) เทานั้น
โดยขั้วตอของสัญญาณ RS232 ของบอรด CP-JR51-ADU832 นั้น จะเปนจุดเชื่อมตอของ
สัญญาณ รับ-สง ขอมูล ที่เปลี่ยนระดับสัญญาณเปนแบบ RS232 แลว ซึ่งจะมีลักษณะเปนแบบขั้ว CPA
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 12 WWW.ETT.CO.TH
ขนาด 4 PIN สําหรับใชเปนจุดเชื่อมตอสัญญาณ รับ-สง ขอมูลกับอุปกรณภายนอก โดยมีลักษณะการจัดเรียงสัญญาณดังแสดงในรูปที่ 3.1
รูปที่ 3.1 แสดงขั้วตอสัญญาณ RS232 ของบอรด CP-JR51-ADU832 V1.0
ซึ่งจะเห็นไดวาขั้วตอสัญญาณ RS232 ของบอรดนั้น จะมีทั้งหมด 4 เสน แตในการ รับ-สง ขอมูลแบบปรกตินั้น จะใชสัญญาณเพียงแค 3 เสน คือ RXD,TXD และ GND เทานั้น สวน +VCC ซึ่งเปนไฟเลี้ยงวงจร +5V นั้น จะไมจําเปนตองนํามาใชในการสื่อสารกันแตอยางใด โดย +VCC หรือ +5V นี้ จะออกแบบเผื่อไวในกรณีที่อุปกรณปลายทางเปนวงจรขนาดเล็กและไมสะดวกที่จะหาแหลงจายไฟใหกับอุปกรณปลายทางดวย ก็อาจตอไฟเลี้ยงวงจร +VCC นี้ออกไปใหกับอุปกรณปลายทางดวยก็ไดเชนกัน
Note : สําหรับไอซี Line Drive แบบ RS232 นั้น จะจัดเปนอุปกรณมาตรฐานของบอรดในตระกูล CP-JR51-ADU832 ซึ่งจะมีติดตั้งใหไปกับบอรดอยูแลว ผูใชไมตองจัดหาเพิ่มเติม แตพึงระลึกไวเสมอวา จะตองทําการติดตั้งไอซี Line Driver สําหรับเลือกชนิดสัญญาณทางไฟฟาของการสื่อสารอนุกรม ไดเพียงอยางใดอยางหนึ่งเทานั้น เชน เมื่อเลือกติดตั้งไอซี Line Driver เปนแบบ RS232 โดยการติดตั้ง MAX232 ในบอรดแลว จะตองไมติดตั้งไอซี Line Driver แบบอื่น เชน RS422 หรือ RS485 เขาไปดวย เพราะจะทําใหไมสามารถรับสงขอมูลกันไดอยางถูกตอง ผูใชตองเลือกติดตั้งไอซี Line Driver อยางใดอยางหนึ่งเทานั้น
+VCC
RXD
TXD
GND
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 13 WWW.ETT.CO.TH
การสื่อสารอนุกรมแบบ RS422
ในกรณีนี้จะตองทําการติดตั้งไอซี Line Driver เบอร 75176 หรือ MAX3088 จํานวน 1-2 ตัว เพื่อทําหนาที่เปลี่ยนระดับสัญญาณการไฟฟาในการ รับ-สง แบบ TTL จาก MCU ใหเปนระดับสัญญาณแบบ Balance Line เพื่อ รับ-สงสัญญาณกับอุปกรณที่มีระดับสัญญาณทางไฟฟาเปนแบบ Balance Line เหมือนกัน โดยถาตองการใชการสื่อสารแบบ 2 ทิศทาง ก็จะตองติดตั้งไอซี Line Driver จํานวน 2 ตัว โดยแบงเปนตัวแปลงสัญญาณทางดานรับ 1 ตัว และตัวแปลงสัญญาณดานสงอีก 1 ตัว แตถาตองการสื่อสารแบบทิศทางเดียวก็อาจทําการติดตั้งไอซี Line Driver เพียงตัวเดียว โดยถาตองการใหเปนฝายรับขอมูลเพียงอยางเดียวก็ใหติดตั้งไอซี Line Driver เฉพาะในตําแหนงของ “RXD/422” เพียงตัวเดียว แตถาตองการใหเปนฝายสงขอมูลเพียงอยางเดียวก็ใหทําการติดตั้งไอซ Line Driver เฉพาะในตําแหนง “TXD/485” เพียงตัวเดียวเทานั้น
ซึ่งการสื่อสารแบบ RS422 นี้ สามารถนําไปทดแทนการสื่อสารแบบ RS232 ไดทันที โดยไมตองดัดแปลงหรือแกไขโปรแกรมเลย ซึ่งการสื่อสารโดยใชระดับสัญญาณในการ รับ-สง แบบ RS422 นี้จะมีขอดี คือสามารถทําการสื่อสารกันไดในระยะทางที่ไกลขึ้นกวาแบบ RS232 มาก กลาวคือ สามารถจะทําการ รับ-สง ขอมูลกันไดในระยะทางประมาณ 4000 ฟุต หรือ 1200 เมตร หรือ 1.2 กิโลเมตรเลยทีเดียว เพียงแตตองใชสายสัญญาณที่ออกแบบมาสําหรับรองรับการใชงานในดานการสื่อสารแบบนี้โดยเฉพาะ ซึ่งไดแก สายสัญญาณแบบ UTP (Un-Shiled Twist Pair) หรือ STP (Shiled Twist Pair) โดยการสื่อสารดวยระดับสัญญาณทางไฟฟาแบบ RS422 นี้ ถาเปนการสื่อสารแบบ 2 ทิศทาง คือ ทั้งรับขอมูลและสงขอมูล จะสามารถทําการรับสงขอมูลกับอุปกรณตางๆไดในลักษณะของตัวตอตัว (Point-to-Point) เหมือนกับ RS232 ทุกประการ แตในกรณีที่เปนการสื่อสารแบบทิศทางเดียวนั้น สามารถจะทําการตอขนานสัญญาณทางดานรับ จํานวนหลายๆจุด เขากับสัญญาณสงเพียงจุดเดียวได โดยถาเลือกใชไอซี Line Driver เบอร 75176 จะสามารถตอขนานจํานวนอุปกรณสําหรับดานรับขอมูลไดประมาณ 32จุด แตถาเลือกใชไอซี Line Driver เบอร MAX3088 นั้น จะสามารถตอขนานจํานวนอุปกรณทางดานรับขอมูลไดมากถึง 256 จุด เลยทีเดียว แตถาเปนอุปกรณทางดานสงนั้น จะไมสามารถนํามาตอขนานสัญญาณสงขอมูลเขาดวยกันมากกวา 1 จุด เหมือนทางดานฝายรับได
สําหรับลักษณะของขั้วตอของสัญญาณ RS422 นั้น จะเปนแบบ CPA ขนาด 6 PIN ดังรูปที่ 3.2 โดยในการสื่อสารกันนั้น จะใชสายสัญญาณในการ รับ-สง ขอมูลกัน จํานวน 4 เสน สัญญาณ คือ สัญญาณในการรับขอมูล จํานวน 2 เสน คือ RXA (RX+) และ RXB (RX-) และสัญญาณในการสงขอมูลอีก 2 เสน คือ TXA (TX+) และ TXB (TX-) ซึ่งในการตอสัญญาณนั้น จะตองทําการตอสัญญาณในลักษณะของการสลับกัน คือ สัญญาณสงจะตองตอเขากับสัญญาณรับ นั่นก็คือ สัญญาณ RXA (RX+) จะตองตอกับ TXA (TX+) สวน RXB (RX-) ก็จะตองตอกับ TXB (TX-) ดวยเชนกัน โดยลักษณะของขั้วตอสัญญาณ RS422
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 14 WWW.ETT.CO.TH
รูปที่ 3.2 แสดงขั้วตอสัญญาณ RS422/485 ของบอรด CP-JR51-ADU832 V1.0 เมื่อเลือกเปน RS422
การสื่อสารอนุกรมแบบ RS485
ในการสื่อสารแบบ RS485 นี้จะมีคุณสมบัติของสัญญาณทางไฟฟาเหมือนกับ RS422 ทุกประการ เพียงแตวาในการสื่อสารแบบ RS485 นี้จะใชสายสัญญาณในการรับสงขอมูลกันเพียง 2 เสน เทานั้น แตจะมีความพิเศษกวาแบบ RS422 ตรงที่ ทิศทางของสัญญาณจะสามารถปรับเปลี่ยนไดจากโปรแกรม กลาวคือ สัญญาณทั้ง 2 เสน นี้สามารถจะสลับหนาที่เปนดานสง และ เปนดานรับได ตามตองการ โดยการควบคุมจาก MCU โดยจากบอรด CP-JR51-ADU832 นั้น จะกําหนดใหสัญญาณ PTC3 ทําหนาที่สําหรับควบคุมทิศทางของขอมูลวาจะใหเปนรับหรือสง โดยถาควบคุมให PTC3 มีสภาวะเปน “1” จะเปนการกําหนดทิศทางใหเปนฝายสงขอมูล แตถาสภาวะของ PTC3 เปน “0” จะเปนการกําหนดทิศทางใหเปนฝายรับขอมูล ซ่ึงจากคุณสมบัติขอนี้จะทําใหการสื่อสารแบบ RS485 สามารถทําการตอขนานอุปกรณรวมกันในสายสงเดียวกันไดจํานวนหลายๆจุด โดยถาใชไอซี Line Driver เบอร 75176 จะสามารถตอขนานอุปกรณกันได จํานวน 32 จุด แตถาเลือกใชไอซี Line Driver เบอร MAX3088 แลวจะสามารถตอขนานอุปกรณในสายคูเดียวกันไดมากถึง 256 จุด เลยทีเดียว แตมีขอแมวา เมื่อมีการตออุปกรณขนานกันในสายสัญญาณคูเดียวกันมากกวา 2 จุดแลว จะตองเขียนโปรแกรมควบคุมใหมีการสงขอมูลออกมาในสายครั้งละ 1 จุดเทานั้น เพราะถามีการกําหนดทิศทางของขอมูลใหเปนสงในเวลาเดียวกันมากกวา 1 จุดแลวจะทําใหเกิดการชนกันของขอมูลและไมสามารถสื่อสารกันไดอยางถูกตอง โดยเมื่อตองการใชวิธีการสื่อสารแบบ RS485 นี้ จะตองทําการติดตั้งไอซี Line Driver เบอร 75176 หรือ MAX3088 ในตําแหนงของ “TXD/485” เพียงตัวเดียว พรอมกับเลือกกําหนดเปนแบบ RS485 ดังนี้
- ทําการเลือก Jumper สําหรับเลือก “422/485” ไวทางดาน 485 (RS485) - ทําการเลือก Jumper “F/H” ไวทางดาน H (Half Duplex) - ทําการ Short Jumper สําหรับตอตัวตานทาน Fail Safe Resister คือ “TL” ไว - ทําการ Short Jumper สําหรับตอตัวตานทาน Fail Safe Resister คือ “TH” ไว - สายสัญญาณที่ใชจะตอจาก TXB(TX-) และ TXA(TX+) เพียง 2 เสน ออกไปใชงาน
+VCC
RXB(-)
RXA(+)
TXB(-)
TXA(+)
GND
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 15 WWW.ETT.CO.TH
ซึ่งในการสื่อสารขอมูลแบบ RS485 นี้ จะตองเขียนโปรแกรมขึ้นมารองรับการสื่อสารโดยเฉพาะ เนื่องจากทิศทางของขอมูลสามารถจะกําหนดจากโปรแกรมไดโดยตรง ซึ่งการสื่อสารวิธีนี้จะมีขอดีคือ ใชสายสัญญาณในการรับสงนอยเสน แตจะเสียเวลาในการสื่อสารมากกวาวิธีอ่ืนๆ เนื่องจากวา การสื่อสารแบบนี้จะไมสามารถทําการรับและสงขอมูลในเวลาเดียวกันได แตจะตองใชวิธีการ ผลัดกันรับ ผลัดกันสง แทน ซึ่งในความเปนจริงแลวในปจจุบันนี้ ราคาของสายสัญญาณแบบ 2 เสน และ 4 เสน แทบจะไมมีความแตกตางกันเลย ดังนั้นเพื่อลดความยุงยากในการเขียนโปรแกรมสําหรับควบคุมการรับสงขอมูลของ MCU ขอแนะนําใหเลือกใชวิธีการสื่อสารแบบ RS422 จะงายและสะดวกรวดเร็วกวากันมาก
รูปที่ 3.3 แสดงขั้วตอสัญญาณ RS422/485 ของบอรด CP-JR51-ADU832 V1.0 เมื่อเลือกเปน RS485 การกําหนด Jumper สําหรับการสื่อสารแบบ RS422/485
เนื่องจากวงจร Line Driver ของพอรตสื่อสารอนุกรมของบอรดนั้น ออกแบบใหผูใชสามารถเลือกกําหนดไดหลายแบบ ดังนั้น จึงตองมีการใช Jumper สําหรับเปนตัวเลือกรูปแบบการสื่อสารรวมดวย โดยจะมี Jumper ที่เกี่ยวของกับการใชงานการสื่อสารแบบ RS422 และ RS485 ดังตอไปนี้ คือ
- Jumper 422/485 เปน Jumper สําหรับเลือกกําหนดการทํางานของไอซี Line Driver ในตําแหนง TXD/485 ใหทํางานเปนแบบ RS422 หรือ RS485 โดยถาตองการใหเปนแบบ RS422 จะตองกําหนด Jumper ไวทางดาน “422” ซึ่งจะทําใหไอซี Line Driver ตําแหนง “TXD/485” ทําหนาที่เปนฝายสงขอมูลเพียงอยางเดียว แตถาตองการใชงานแบบ RS485 จะตองกําหนด Jumper ไวทางดาน “485” เพื่อกําหนดใหไอซี Line Driver ในตําแหนง “TXD/485” ทําหนาที่เปนทั้งฝายรับและฝายสง ตามการควบคุมของสัญญาณ PTC3
- Jumper F/H (Full/Half) เปน Jumper ใชสําหรับเลือกกําหนดรูปแบบการสื่อสารใหเปนแบบ Full Duplex (F) หรือ Half Duplex (H) โดยถาตองการใชงานแบบ RS422 จะตองเลือกกําหนด Jumper นี้ไวทางดานดาน F(Full Duplex) แตถาตองการใชงานเปนแบบ RS485 จะตองเลือกกําหนด Jumper นี้ไวทางดาน H(Half Duplex) แทน
+VCC
ไมตองตอ
ไมตองตอ
TXB/RXB
TXA/RXA
GND
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 16 WWW.ETT.CO.TH
- Jumper RL เปน Jumper ใชสําหรับเลือกกําหนดการเชื่อมตอ ตัวตานทานสําหรับทําหนาที่คงสถานะของสัญญาณ RXB (RX-) หรือ Fail Safe Resister เพื่อใหสัญญาณ RXB (RX-) มี
สภาวะแนนอนเมื่อไมมีการสงสัญญาณใดๆออกมาในสายเลย ซึ่งถาหากวามีการตอสายสัญญาณระยะทางไกลๆหรือมีการตอสายระยะทางไกลๆแตไมไดมีการสงขอมูลออกมาในสายตลอดเวลาแลว ควรที่จะทําการ Short Jumper นี้ไวดวยเสมอ โดยเฉพาะอยางยิ่งตัวอุปกรณที่อยูในตําแหนงตนสายและปลายสายควรทําการ Short Jumper นี้ไวเสมอ สวนอุปกรณที่อยูในตําแหนงอื่นๆที่มีระยะไมไกลจากจุดตนสายและปลายสายมากนักก็อาจ Open Jumper นี้ออกก็ได แตอยางนอยที่สุด ควรมีการ Short Jumper นี้ใหกับอุปกรณที่ตอรวมอยูในสายสัญญาณจํานวน 1 จุดเสมอ - Jumper RH เปน Jumper ใชสําหรับเลือกกําหนดการเชื่อมตอ ตัวตานทานสําหรับทําหนาที่คง
สถานะของสัญญาณ RXA (RX+) หรือ Fail Safe Resister เพื่อใหสัญญาณ RXA (RX+) มีสภาวะแนนอนเมื่อไมมีการสงสัญญาณใดๆออกมาในสายเลย ซึ่งถาหากวามีการตอสายสัญญาณระยะทางไกลๆหรือมีการตอสายระยะทางไกลๆแตไมไดมีการสงขอมูลออกมาในสายตลอดเวลาแลว ควรที่จะทําการ Short Jumper นี้ไวดวยเสมอ โดยเฉพาะอยางยิ่งตัวอุปกรณที่อยูในตําแหนงตนสายและปลายสายควรทําการ Short Jumper นี้ไวเสมอ สวนอุปกรณที่อยูในตําแหนงอื่นๆที่มีระยะไมไกลจากจุดตนสายและปลายสายมากนักก็อาจ Open Jumper นี้ออกก็ได แตอยางนอยที่สุด ควรมีการ Short Jumper นี้ใหกับอุปกรณที่ตอรวมอยูในสายสัญญาณจํานวน 1 จุดเสมอ
- Jumper RZ เปน Jumper สําหรับเลือกกําหนดการตอตัวตานทาน RZ เพื่อชดเชย คาความตานทานของสายสัญญาณ (Impedance) ทางดานรับ ซึ่งถาหากวามีการตอสายสัญญาณในการรับสงเปนระยะทางไกลๆแลวก็ควรทําการ Short Jumper นี้ไวดวยเนื่องจากเมื่อสายมีความยาวมากๆจะเกิดคาความตานทานในสายขึ้น ดังนั้นจึงตองทําการตอคาความตานทานจากภายนอกไปชดเชยคาความตานทานของสายสัญญาณดวย โดยเมื่อทําการ Short Jumper ตําแหนง RZ นี้ไวก็จะเปนการตอตัวตานทานครอมระหวาง RXA (RX+) และ RXB (RX-) ไว แตถาหากวาตอสายสัญญาณในระยะทางที่ไมไกลมากนัก ก็ใหทําการ Open Jumper นี้ออกก็ได
- Jumper TL เปน Jumper ใชสําหรับเลือกกําหนดการเชื่อมตอ ตัวตานทานสําหรับทําหนาที่คงสถานะของสัญญาณ TXB (TX-) หรือ Fail Safe Resister เพื่อให สัญญาณ TXB (TX-) มีสภาวะแนนอนเมื่อไมมีการสงสัญญาณใดๆออกมาในสายเลย ซึ่งถาหากวามีการตอสายสัญญาณระยะทางไกลๆหรือมีการตอสายระยะทางไกลๆแตไมไดมีการสงขอมูลออกมาในสายตลอดเวลาแลว ควรที่จะทําการ Short Jumper นี้ไวดวยเสมอ โดยเฉพาะอยางยิ่งเมื่อใชงาน
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 17 WWW.ETT.CO.TH
เปนแบบ RS485 หรือใชงานเปนตัวอุปกรณที่อยูในตําแหนงตนสายและปลายสายควรทําการ Short Jumper นี้ไวเสมอ สวนอุปกรณที่อยูในตําแหนงอื่นๆที่มีระยะไมไกลจากจุดตนสายและ ปลายสายมากนักก็อาจ Open Jumper นี้ออกก็ได แตอยางนอยที่ สุด ควรมีการ Short Jumper นี้ใหกับอุปกรณที่ตอรวมอยูในสายสัญญาณจํานวน 1 จุดเสมอ
- Jumper TH เปน Jumper ใชสําหรับเลือกกําหนดการเชื่อมตอ ตัวตานทานสําหรับทําหนาที่คงสถานะของสัญญาณ TXA (TX+) หรือ Fail Safe Resister เพื่อใหสัญญาณ TXA (TX+) มีสภาวะแนนอนเมื่อไมมีการสงสัญญาณใดๆออกมาในสายเลย ซึ่งถาหากวามีการตอสายสัญญาณระยะทางไกลๆหรือมีการตอสายระยะทางไกลๆแตไมไดมีการสงขอมูลออกมาในสายตลอดเวลาแลว ควรที่จะทําการ Short Jumper นี้ไวดวยเสมอ โดยเฉพาะอยางยิ่งเมื่อใชงานเปนแบบ RS485 หรือใชงานเปนตัวอุปกรณที่อยูในตําแหนงตนสายและปลายสายควรทําการ Short Jumper นี้ไวเสมอ สวนอุปกรณที่อยูในตําแหนงอื่นๆที่มีระยะไมไกลจากจุดตนสายและปลายสายมากนักก็อาจ Open Jumper นี้ออกก็ได แตอยางนอยที่ สุด ควรมีการ Short Jumper นี้ใหกับอุปกรณที่ตอรวมอยูในสายสัญญาณจํานวน 1 จุดเสมอ
- Jumper TZ เปน Jumper สําหรับเลือกกําหนดการตอตัวตานทาน TZ เพื่อชดเชย คาความตานทานของสายสัญญาณ (Impedance) ทางดานสง ซึ่งถาหากวามีการตอสายสัญญาณในการรับสงเปนระยะทางไกลๆแลวก็ควรทําการ Short Jumper นี้ไวดวยเนื่องจากเมื่อสายมีความยาวมากๆจะเกิดคาความตานทานในสายขึ้น ดังนั้นจึงตองทําการตอคาความตานทานจากภายนอกไปชดเชยคาความตานทานของสายสัญญาณดวย โดยเมื่อทําการ Short Jumper ตําแหนง TZ นี้ไวก็จะเปนการตอตัวตานทานครอมระหวาง TXA (TX+) และ TXB (TX-) ไว แตถาหากวาตอสายสัญญาณในระยะทางที่ไมไกลมากนัก ก็ใหทําการ Open Jumper นี้ออกก็ได
Tip : จะเห็นไดวาวงจร Line Driver ทั้งแบบ RS422 และ RS485 นั้นจะมีความใกลเคียง กันมาก แตมีขอแตกตางอยางหนึ่งที่เห็นไดชัดเจนที่สุด คือ ถาเปนแบบ RS422 จะไมสามารถสั่งเปล่ียน ทิศทางการรับสงขอมูลดวยโปรแกรมได ซึ่งทิศทางการรับสงจะกําหนดตายตัวจากวงจร แตถาเปนแบบ RS485 นั้น จะสามารถสั่งควบคุมทิศทางการรับสงจากโปรแกรมไดวาจะใหทําหนาที่เปนฝายรับ หรือฝายสง อยางใดอยางหนึ่งไดตามตองการได
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 18 WWW.ETT.CO.TH
4 การพัฒนาโปรแกรม
บนบอรด CP-JR51-Adu832 V1.0 สําหรับการพัฒนาโปรแกรมบนบอรด CP-JR51-ADU832 นั้น โปรแกรมที่ตองใชงานจะมี 2 โปรแกรม คือ 1.โปรแกรม WSD และ 2. โปรแกรม Cross32 V4.0 ( การติดตั้ง และ วิธีการใชงานจะไมขอกลาวในที่นี้ซึ่งผูใชสามารถหาอานไดจากแผน CD ของบริษัท ETT) โดยโปรแกรม WSD จะใชสําหรับDownload ไฟลโปรแกรมที่มีนามสกุล .HEX (Intel Hex Format) ที่ผูพัฒนาไดเขียนขึ้นจากเครื่องคอมพิวเตอร PC สงไปที่บอรด CP-JR51-ADU832 สวนโปรแกรม Cross32 V4.0 เปนโปรแกรม Assembler ที่ใชแปลงไฟลนามสกุล .ASM ใหเปนไฟลนามสกุล .HEX (Intel Hex Format)
การพัฒนาโปรแกรมบนบอรด CP-JR51-ADU832 นั้นจะออกแบบวงจรใหผูใชสามารถทําการพัฒนาโปรแกรมบนบอรดได โดยไมตองใชเครื่องมือใดๆ นอกจากเครื่องคอมพิวเตอร PC และ สายตอพอรตส่ือสารอนุกรม RS-232 สําหรับเชื่อมตอระหวาง บอรด CP-JR51-ADU832 กับ เครื่องคอมพิวเตอร PC ในการพัฒนาโปรแกรมจะมีลําดับข้ันตอนในการพัฒนาโปรแกรมดังแสดงดวยโฟลวชารต ตอไปนี้
สราง และ แกใข Source codeในรูปของ Text File
แปลง Text Fileเปน Hex File
ทดสอบการทํางานของโปรแกรม
ทําการดาวนโหลด Hex Fileใหกับบอรด CP-JR51 ADU832
นําไปใชงาน
รูปที่ 4.1 แสดงขั้นตอนในการพัฒนาโปรแกรมของบอรด CP-JR51-ADU832
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 19 WWW.ETT.CO.TH
การติดต้ังโปรแกรม WSD
สําหรับโปรแกรม WSD จะมีมาใหพรอมกับบอรดทดลอง ซึ่งเปน Version ใหมลาสุดในขณะนี้ มีขนาดไฟล 3.33 MB ซึ่งผูใชสามารถดาวนโหลดขอมูล หรือ โปรแกรม WSD ที่ใหมกวานี้ไดที่เว็บไซต http://www.analog.com/microconverter ในสวนของการดาวนโหลดโปรแกรมเมื่อเขาเว็บไซตไดแลวจะเห็นชอง Select a resource ซึ่งอยูทางซายมือทางดานบนของหนาจอ จากนั้นเลือกไปที่หัวขอ QuickStart Development to จากนั้นเลื่อนลงมาขางลางในหัวขอ Software Tools Updates จะมีหัวขอ Windows Serial Downloader V6.02 กด click ที่ชื่อนี้จะเริ่มตนการ Download โปรแกรม WSD แตในที่นี้ผูเขียนจะอธิบายการติดตั้งโปรแกรมจากแผน CD Rom ที่ไดแถมใหกับตัวบอรดทดลองซึ่งมีข้ันตอนดังนี้ คือ
1. ใสแผน CD Rom ไวในเครื่องคอมพิวเตอร PC จากนั้นเขาไปในโฟลเดอร WSD V6.02 ทําการ Double Clock ที่ไฟล WSD_V6.02_setup.exe
รูปที่ 4.2
2. เมื่อทําการ Double Clock ที่ไฟล WSD_V6.02_setup.exe จะปรากฎภาพดังแสดงขางลาง จากนั้นกดปุม Next เพื่อเร่ิมการติดตั้งโปรแกรม
รูปที่ 4.3 รูปที่ 4.4
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 20 WWW.ETT.CO.TH
3. จากนั้นจะปรากฎหนาตาง License Agreement ซึ่งเปนเงื่อนไขขอตกลงตางๆ ระหวางผูใช กับ ทางบริษัท ใหผูใชกดปุม Yes หลังจากนั้นโปรแกรมจะใหผูใชเลือกตําแหนงปลายทางของการ Setup โปรแกรม ถาผูใชตองการจะเปลี่ยนแปลงตําแหนงการติดตั้งโปรแกรมใหกดปุม Browse… แตในที่นี้ผูเขียนจะไมเปลี่ยนแปลงตําแหนงปลายทาง จากนั้นกดปุม Next รูปที่ 4.5 รูปที่ 4.6 4. เมื่อลงโปรแกรมเสร็จส้ินจะปรากฎหนาตาง InstallShield Wizard Complete จากนั้นกดปุม Finish เปนการเสร็จส้ินการลงโปรแกรม
รูปที่ 4.7
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 21 WWW.ETT.CO.TH
การต้ังคากอนใชโปรแกรม WSD เมื่อติดตั้งโปรแกรมทุกอยางเรียบรอยแลว ใหผูใชเปดโปรแกรม WSD ข้ึนมาโดย กดที่ ปุม Strat => Programs => ADuC => WSD ดังแสดงในภาพขางลาง
รูปที่ 4.8 ส่ิงแรกที่ผูใชจะตองทําหลังจากเปดโปรแกรมขึ้นมาไดแลว คือ การตั้งคา Configuration ตางๆ เสียกอน โดยกดปุม Configuration จะปรากฎหนาตางดังแสดงในรูปขางลาง
รูปที่ 4.9
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 22 WWW.ETT.CO.TH
กอนที่จะมีการปรับแตคาใดๆ ในหนาตาง Configuration นี้ ผูเขียนจะอธิบายเกี่ยวกับความหมายของแตละสวนกันกอนเริ่มตนจาก กรอบแรก คือ Serial Port Setup ซึ่งภายในกรอบนี้จะมีอีก 2 กรอบยอย ซึ่งก็คือ กรอบที่มีชื่อวา Port และ กรอบ Crystal Frequency โดยมีหนาที่ดังนี้ คือ
รูปที่ 4.10
• กรอบ Port : เปนสวนที่ใชกําหนดชองทางการติดตอส่ือสารของ Port อนุกรม RS-232 ซึ่งในเครื่องคอมพิวเตอรของผูใชอยางนอยจะตองมี 1 Port นั้นคือ Com 1 แตบางเครื่องอาจจะมีมากกวา 1 Port ก็ได คือ มี Com 2, Com 3 ดังนั้นผูใชจึงตองมากําหนดใหตรงตามที่ผูใชไดเลือกใชงาน โดยในที่นี้ผูเขียนใช Com 1
• กรอบ Crystal Frequency : เปนกรอบกําหนดความถี่ใชงาน โดยสําหรับบอรด รุน CP-JR51- ADU832 จะใชแบบ Watch crystal
• ในบริเวณทางขวามือสุดจะใชสําหรับกําหนดคา Baud Rate ของ ชิพบนบอรด กับ เครื่องคอมพิวเตอร PC ในที่นี้ไมตองเปลี่ยนแปลงอะไร คือ 9600 bps
ในกรอบถัดลงมาขางลาง คือ Code and Data Flash/EE Memory ซึ่งภายในจะประกอบดวย
กรอบยอยอีก 3 กรอบ คือ Erase Mode, Download Mode, Security Mode ซึ่งมีหนาที่ดังนี้คือ
รูปที่ 4.11
• กรอบ Erase Mode : การใชงานจะมีใหเลือกอยู 2 ตัวเลือก คือ Erase the CODE ONLY มีความหมายวา ในขณะดาวนโหลดโปรแกรมจะลบ Flash/EE Program memory ใหกอนโดยอัตโนมัติ
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 23 WWW.ETT.CO.TH
สวนอีกกรอบหนึ่ง คือ Erase the CODE and DATA มีความหมายวา ในขณะดาวนโหลดโปรแกรมจะทําการลบทั้ง Flash/EE Program memory และ Flash/EE Data memory ใหกอนโดยอัตโนมัติ
• กรอบ Download Mode : การใชงานจะมีอยู 3 ตัวเลือก คือ Download CODE and DATA มีความหมายวา เปนการ โปรแกรมเขาไปในหนวยความจําทั้ง Flash/EE Program และ Flash/EE Data Memory, Download CODE ONLY มีความหมายวา เปนการ โปรแกรมเขาไปในสวนของ Flash/EE Program memory เพียงอยางเดียว และ Download DATA ONLY มีความหมายวา เปนการ โปรแกรมเขาไปในสวนของ Flash/EE Data memory เพียงอยางเดียว
• กรอบ Security Mode : การใชงานจะมีอยู 3 ตัวเลือก คือ Lock Mode, Security Mode, Serial safe Mode ซึ่งในชองนี้ผูใชสามารถเลือกไดมากกวา 1 อยาง กรอบสุดทายคือ กรอบ Run ซึ่งภายในกรอบนี้จะเปนการปรับคาที่เกี่ยวกับการ Run เชน ปรับ
address เร่ิมตนของการ Run โปรแกรม หรือ ปรับการ Run อัตโนมัติ เปนตน ซึ่งจะมีรายละเอียดของสวนตางๆ ดังนี้คือ
รูปที่ 4.12
• กรอบ Run : การใชงานในสวนของกรอบ Run นั้นมีชอง ส่ีเหลี่ยมใหกรอก อยู 3 ชอง คือ 1. ชอง Run Automatically after download : ถาผูใชต๊ิกที่ชองนี้จะมีผลทําใหเมื่อโหลด
โปรแกรมลงไปใหกับบอรดแลว และ จะ Run โปรแกรมโดยอัตโนมัติ ในที่นี้ผูเขียนเลือกที่ชองนี้ 2. ชอง Verify Code Downloaded OK : ถาผูใชต๊ิกที่ชองนี้จะทําการโหลดโปรแกรมพรอมกับ ตรวจสอบโปรแกรมที่ไดสงไปที่บอรดทดลองวาสมบูรณหรือ ไม ในที่นี้ผูเขียนไมเลือกที่ชองนี้ 3. ชอง Bootload Option (Always run from E000H) : ถาผูใชต๊ิกที่ชองนี้จะทําใหจุดเริ่มตนของการ Run โปรแกรมไปอยูที่ E000H ในที่นี้ผูเขียนไมเลือกที่ชองนี้
Tip : ถาผูใชเก็บขอมูลไวใน Flash/EE Data memory ในขณะที่ยังคงตอง Download โปรแกรมใหมหลายครั้ง ผูใชจะตองเลือก Erase the CODE ONLY หามใช Erase the CODE and DATA มิฉะนั้นในขณะที่ผูใชทําการโหลดโปรแกรมใหมเขาไปจะทําใหขอมูลใน Flash/EE Data memory ถูกลบไปดวย
Note : การ Run ในแบบที่ 2 และ แบบที่ 3 โคดโปรแกรมจะไม Run จนกวาผูใชจะ Click ที่ปุม Run แต ถาผูใชเลือกแบบที่ 1 หลังจากที่ทําการ Download สมบูรณ แลวจะ Run โปรแกรมอัตโนมัติ
-
คูมือการใชงานบอรดไมโครคอนโทรลเลอร รุน “ CP-JR51-ADU832 V 1.0 “
ETT CO.,LTD. 24 WWW.ETT.CO.TH
การใชงานโปรแกรม WSD
หลังจากที่ใชโปรแกรม Cross 32 เพื่อแปลโปรแกรมจนไดไฟล . HEX มาแลว ตอไปจะเปนการใชโปรแกรม WSD ดาวนโหลดไฟล ShowP0.HEX (จาก CD ROM) ไปที่บอรดทดลอง CP-JR51-ADU832 เพื่อทดสอบการทํางานของโปรแกรมวาใชงานได หรือ ไมซึ่งมีข้ึนตอนดังนี้ เปดโปรแกรม WSD.EXE ข้ึนมา ซึ่งจะตองกําหนดคา Configuration ตางๆ เสียกอน (ผูใชสามา�