MCS51 ADuC832 62 Kbyte Flash - ETT · 2 รูปที่ 1.1 แสดงโครงสร...

42
คู ่มือการใช้บอร์ด CP-jr51-ADU832 V1 CP-jr51-ADU832 V1 CP-jr51-ADU832 V1 CP-jr51-ADU832 V1 CP-jr51-ADU832 V1 บริษัท อีทีที จำกัด 1112/96-98 ถนนสุขุมวิท แขวงพระโขนง เขตคลองเตย กรุงเทพฯ 10110 http://www.etteam.com www.ett.co.th 1112/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 MCS51 MCS51 MCS51 MCS51 MCS51

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 ตางๆ เสียกอน (ผูใชสามา�