49

ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร
Page 2: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

1

ET-dsPIC33WEB V1.0

ET-dsPIC33WEB V1.0 เปนบอรดไมโครคอนโทรลเลอรในตระกูล dsPIC ของบริษัท Microchip โดยได

นําเอาไมโครคอนโทรลเลอรที่ประมวลผลขอมูลแบบ 16 บิต เบอร dsPIC33FJ128GP708 มาพัฒนาเปนบอรดใช

งาน ซึ่งคุณสมบัติเดนของ dsPIC33FJ128GP708 คือ หนวยประมวลผลสัญญาณดิจิตอล (Digital Signal

Processing) และ ทรัพยากรตางๆ ดังตอไปนี้

หนวยประมวลผล (CPU)

• ความเร็วในการประมวลผล 40 MIPS (16 Bit Data / 24 Bit Instruction Code)

• ฮารดแวรรองรับการคูณขอมูล 16 x 16 บิต โดยใชเวลาเพียง 1 ไซเคิลคําสั่ง

• ฮารดแวรรองรับการหารขอมูล 32-bit x 16 บิต

• C Compiler ถูกออกแบบใหมีความกระชับ Optimized Instruction Set

• รองรับการ Interrupt มากถึง118 Vector Interrupt จาก 63 แหลง 7 Priority Level Program

• รองรับการ DMA กับ Peripheral Hardware ได 8 ชอง พรอม DMA Buffer 2KByte

ระบบ (System)

• แหลงกําเนิดสัญญาณนาฬิกาสามารถเลือกได ทั้งจากภายในและภายนอก

• มีวงจร Power-Up Timer และ Oscillator Start-Up

• มีระบบตรวจสอบสัญญาณนาฬิกา (Fail-Safe Clock Monitor)

• ระบบ Watchdog Timer ที่ใชแหลงสัญญาณนาฬิกาแบบ RC oscillator ที่แยกจากสวนอ่ืนๆ

• ทํางานที่แรงดันระดับ 3.0 ถึง 3.6 โวลต

• I/O Pin 4mA Sink สามารถเชื่อมตอกับสัญญาณ 5VTTL ได (5V Tolerant)

• รองรับโหมดการทํางานแบบ Run, Idle และ Sleep modes

• สามารถปรับเปลี่ยนโหมดการทํางานของสัญญาณนาฬิกาไดหลากหลายเพื่อประสิทธิภาพ และ ให

สอดคลองกับการดูแลจัดการในเรื่องของพลังงาน

คุณสมบัติทางดานสัญญาณอนาลอก (Analog Features)

• โมดูลแปลงสัญญาณ Analog to Digital ความละเอียด 10-bit จํานวน 24 ชอง และสามารถโปรแกรมเปน

12Bit ได 2 ชอง ความเร็วในการ Sampling สัญญาณสูงสุด 1.1 MSPS

Page 3: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

2

คุณสมบตัิโดยทั่วไปของ MCU เบอร dsPIC33FJ128GP708

• หนวยความจําโปรแกรมแบบ Flash Memory ขนาด 128 K Byte

• หนวยความจําขอมูล SRAM ขนาด 16 K Byte

• I/O Ports ใชงานจํานวน 69 บิต(รวม Peripheral Function ตางๆ)

o โมดูลการสื่อสาร UART จํานวน 2 ชอง

o โมดูลการสื่อสารแบบ SPI จํานวน 2 ชองรองรับทั้ง Master และ Slave Modes

o โมดูลการสื่อสารแบบ I2C จํานวน 2 ชองรองรับทั้ง Master และ Slave Modes

o โมดูลการสื่อสารแบบ CAN จํานวน 2 ชอง

o โมดูล Timer ขนาด 16-bit จํานวน 9 ชอง และสามารถจับคูใชงานเปน Timer ขนาด 32 Bit ได

พรอมกันจํานวน 4 ชอง

o โมดูล Capture , Compare / PWM จํานวน 8 ชุด

o ระบบฮารดแวร RTCC, Real-Time Clock Calendar with Alarms ภายใน

o โมดูล ADC ขนาด 10Bit จํานวน 24 ชอง และสามารถโปรแกรมคาเปน 12Bit ได 2 ชอง

o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ชอง

คุณสมบตัิโดยทั่วไปของบอรด ET-dsPIC33WEB V1.0

- ใชไมโครคอนโทรเลอร dsPIC33FJ128GP708 ขนาด 80 PIN

- สัญญาณนาฬิกาคริสตอลออสซิลเลเตอรขนาด 8 MHz (สามารถใช PLL รันไดถึง 40 MHz)

- สัญญาณนาฬิกาคริสตอลออสซิลเลเตอรขนาด 32.768KHz สําหรับ RTC

- I/O Port ขนาด 10 PIN (จัดเรียงตามมาตรฐานของ อีทีที) จํานวน 9 พอรต

- ชุดวงจร Line Driver RS232 จํานวน 2 พอรต

- พอรตสําหรับตอ LCD เรียงตามมาตรฐานของ อีทีที (14Pin ET-CLCD) จํานวน 1 พอรต

- ขั้วตอสัญญาณดาวนโหลดโปรแกรมแบบ ICD2 และ สวิตชตัดตอสัญญาณ Run / Program

- วงจร LED สําหรับใชทดลองเอาตพุตแบบ Digital จํานวน 8 ชอง

- วงจรสวิตช Push-Button สําหรับใชทดลองอินพุตแบบ Digital จํานวน 4 ชอง

- วงจรสรางแรงดัน 0-3.3V จากตัวตานทานปรับคาได สําหรับทดลองโมดูล A/D จํานวน 1 ชอง

- พอรตสําหรับเชื่อมตอกับโมดูล Ethernet รุน ET-MINI ENC28J60(ใช SPI1)

- พอรตเชื่อมตอกับหนวยความจํา EEPROM 25LCxxx จํานวน 1 ชอง(ใช SPI2)

- ชุด Regulate แบบ Switching สําหรับแปลงไฟ DC Input ใหเปน 5V และ 3.3 V

- LED สถานะสําหรับ Power(แดง),Program(แดง) และ Run(เขียว)

- ขั้วตอแรงดันไฟ VCC และ GND ใชไดกับไฟ 7-12 VDC

Page 4: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

3

โครงสรางบอรด ET-dsPIC33WEB V1.0

อธิบายรายละเอียดตามหมายเลขไดดังตอไปน้ี

• หมายเลข 1 พอรตเชื่อมตอสัญญาณแบบ RS-232 จํานวน 2 พอรต มีวงจรการเชื่อมตอดังตอไปนี้

Page 5: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

4

1 2

3 4

5 6

7 8

9 10

RD0 RD1RD2 RD3RD4 RD5

+3.3V GND

PORTD-L

RD6 RD7

• หมายเลข 2 พอรต ET-CLCD สําหรับเชื่อมตอกับจอแสดงผล LCD แบบตัวอักษร (Character LCD)

โดยมีการจัดวางขาสัญญาณตางๆ ดังตอไปนี้

• หมายเลข 3 , 4 , 5 , 6 , 7, 8 , 9, 10 และ 11 คือ พอรต I/O ของไมโครคอนโทรเลอร ที่ถูกออกแบบ

ใหอยูในรูปแบบของพอรตมาตรฐาน 10-PIN ETT โดยในแตละพอรตมีการจัดเรียงสัญญาณดังตอไปนี้

Page 6: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

5

1 2

3 4

5 6

7 8

9 10

RG0 RG1RG2 RG3RG6 RG7

+3.3V GND

PORTG-L

NC NC

1 2

3 4

5 6

7 8

9 10

RG8 RG9RG12 RG13RG14 RG15

+3.3V GND

PORTG-H

NC NC

1

2

RF8

RF8

• หมายเลข 12 พอรตสัญญาณ I/O ขนาด 2 PIN คือ สัญญาณ RF8 และ GND ดังตอไปนี้

* NC = No Connect

Page 7: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

6

• หมายเลข 13 ขั้วตอสําหรับดาวนโหลดโปรแกรม เปนขั้วที่จัดเรียงตามมาตรฐานของ ICD2 รองรับเครื่อง

โปรแกรมที่มีการเชื่อมตอตามมาตรฐานของ ICD2 เชน PICKit2 , ICD2 และ เครื่องโปรแกรมของทาง

บริษัท อีทีที คือ ET-PGMPIC USB โดยกอนทําการโปรแกรมทุกครั้งตองกดสวิตช MODE ใหมาอยูที่

ตําแหนง PGM ทุกครั้ง เพื่อตัดตอขาสัญญาณมาเขากับเครื่องโปรแกรมจากภายนอก

• หมายเลข 14 สวิตชเลือกโหมด RUN และ PGM สวิตชนี้ เมื่อกดมาที่ตําแหนง PGM จะทําหนาที่ตัดตอ

ขาสัญญาณที่ใชในการโปรแกรมโคดขอมูลเขากับเครื่องโปรแกรม เพื่อทําการโปรแกรมขอมูลโปรแกรมที่

เราออกแบบ และ เมื่อกดปลอยกลับมาที่ตําแหนง RUN ขาสัญญาณตางๆ จะกลับมาเปน I/O ใชงานได

ตามปรกติ

Page 8: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

7

1 2

3 4

5 6

7 8

9 10

RG6 (SCK) RG7(SO)RG8 (SI) RD12 (CS)

NC NC

+3.3V GND

SPI MEMORY

NC NC

จัมเปอรสําหรับการเลือกการเชื่อมตอสัญญาณ RA12, RD15 และ RA13

ของไมโครคอนโทรลเลอร กับขาสัญญาณ INT, RST และ WOL ของโมดูล

ET-MINI ENC28J60

DIS = Disable คือ ไมเชื่อมตอสัญญาณ

EN = Enable คือ เชื่อมตอสัญญาณ

• หมายเลข 15 ขั้วตอ DC-JACK สัญญาณไฟเลี้ยงบอรด รองรับแรงดันไฟจากภายนอก 7-12 VDC

• หมายเลข 16 สวิตชรีเซต (Reset Switch)

• หมายเลข 17 ไอซีไมโครคอนโทรเลอร dsPIC33FJ128GP708

• หมายเลข 18 หนวยความจํา EEPROM เบอร 25LCxxx ของ บริษัท Microchip เชือ่มตอแบบ SPI

• หมายเลข 19 ขั้วสัญญาณเชื่อมตอกับโมดูลสื่อสาร Ethernet รุน ET-MINI ENC28J60

Page 9: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

8

2-Pin CON10K

SW-Button

+3.3V

2-Pin CON10K

SW-Button

+3.3V

2-Pin CON10K

SW-Button

+3.3V

2-Pin CON10K

SW-Button

+3.3V

• หมายเลข 20 ชุด Test I/O LED ประกอบดวยหลอดไฟ LED จํานวน 8 ชุด ดังวงจรตอไปนี้

• หมายเลข 21 ชุดทดลองสัญญาณอินพุท จากสวิตช 4 ชุด สามารถสรางสัญญาณลอจิก 0 (0 โวลท) และ

ลอจิก 1 ( +3.3 โวลท) ดังวงจรตอไปนี้

• หมายเลข 22 ชุดทดลองแรงดันอนาลอก 4 ชุด สามารถปรับระดับแรงดันไฟไดตองแต 0 – 3.3 โวลท โดย

มีการตอวงจรดังตอไปนี้

• หมายเลข 23 พื้นที่อเนกประสงค สําหรับตอวงจรเพิ่มเติม

Page 10: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

9

โมดูล ET-MINI ENC28J60

ET-MINI ENC28J60 เปนโมดูลที่ออกแบบมาเพื่อเปนตัวกลางในการเชื่อมตอระบบการสื่อสารระหวาง

ไมโครคอนโทรลเลอร กับโครงขาย Ethernet รองรับการทํางานของโปรโตคอล TCP/IP โดยใชไอซี ENC28J60 ซึ่ง

เปนไอซี Ethernet Controller รองรับมาตรฐานการสื่อสาร IEEE 802.3 เชื่อมตอสัญญาณควบคุมผาน SPI Bus

ความเร็วสูงสุด 10 Mb/s ในการพัฒนาโปรแกรมทางบริษัท Microchip จะสนับสนุนตัว Microchip TCP/IP Stack

ซึ่งสามารถดาวนโหลด และ นําไปใชไดฟรีที่เว็ปไซตของ Microchip (www.microchip.com) โดยคุณสมบัติคราวๆ

ของ ENC28J60 จะเปนดังนี้

คุณสมบัติของ IC ENC28J60

General:

• IEEE 802.3 compatible Ethernet Controller

• Integrated MAC and 10BASE-T PHY

• 8 Kbyte Transmit/Receive Packet Dual Port Buffer SRAM

• Programmable Automatic Retransmit on Collision

• Programmable Padding and CRC Generation

• Programmable Automatic Rejection of Erroneous Packets

• SPI™ Interface with speeds up to 10 Mb/s

• Supports Full and Half-Duplex modes

Buffer:

• Configurable transmit/receive buffer size

• Hardware managed circular receive FIFO

• Byte-wide random and sequential access

• Internal DMA for fast memory copying

• Hardware assisted IP checksum calculation

PHY:

• Wave shaping output filter

• Loopback mode

Page 11: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

10

MAC:

• Support for Unicast, Multicast and Broadcast packets

• Programmable pattern matching of up to 64 bytes within packet at user defined offset

• Programmable wake-up on multiple packet formats,including Magic Packet®, Unicast,

Multicast, Broadcast,specific packet match or any packet

การเชื่อมตอกับไมโครคอนโทรลเลอร สามารถทําไดโดยงาย โดยจะใชการเชื่อมตอแบบ SPI Bus ซึ่งจะใช

ขาสัญญาณเพียงไมก่ีขา และ ในสวนของระบบไฟ เนื่องจาก ENC28J60 เปนไอซีที่ทํางานที่แรงดัน 3 โวลท ดังนั้น

เพื่อใหสามารถใชงานไดกับไมโครคอนโทรลเลอรที่ทํางาน 5 โวลท ทางทีมงานจึงไดออกแบบ วงจรบัฟเฟอร สําหรับ

รองรับการเชื่อมตอระบบไฟ ระหวาง 3 โวลท กับ 5 โวลท เอาไวภายในบอรด ET-MINI ENC28J60 ซึ่งสามารถ

เลือกระบบไฟไดโดยการเลือก จัมพเปอร 5V/3V3

รูปแสดงบล็อกไดอะแกรมการเชื่อมตอ ENC28J60 กับ ไมโครคอนโทรลเลอร

Page 12: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

11

+5V

+3.3V

VDD

รูปแสดงโครงสรางของบอรด ET-MINI ENC28J60

จากรูป HD1 และ HD2 ออกแบบไวสําหรับการเชื่อมตอกับบอรด ET-dsPIC33WEB V1.0 โดยสามารถ

เสียบบอรด ET-MINI ENC28J60 ซอนทับบนบอรด ET-dsPIC33WEB V1.0 เขากับขั้ว Connector ตัวเมียที่

จัดเตรียมไวใหไดทันที สวน HD3 ออกแบบไวสําหรับนําไปใชเชื่อมตอกับไมโครคอนโทรเลอรอ่ืนๆตามตองการ

คําเตือน : จะตองเลือกจัมเปอรใหถูกตองตามการใชงานจริงไมเชนนั้นอาจเกิดความเสียหายแกอุปกรณได

Page 13: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

12

ชื่อสัญญาณ ชนิดของสัญญาณ หนาท่ีการทํางาน

CS INPUT สัญญาณ Enable/Disable การเชื่อมตอ SPI Bus ของ ENC28J60

CS = 0 คือ Enable การเชื่อมตอ SPI ของ ENC28J60

CS = 1 คือ Disable การเชื่อมตอ SPI ของ ENC28J60

SDO OUTPUT สัญญาณ Serial Data Output

SCK INPUT สัญญาณนาฬิกา Serial Clock

SDI INPUT สัญญาณ Serial Data Input

INT OUTPUT สัญญาณอินเตอรรัพท แอคทีฟ ลอจิก 0

RST INPUT สัญญาณรีเซต แอคทีฟ ลอจิก 0

WOL OUTPUT สัญญาณ Wake-up on LAN interrupt แอคทีฟ ลอจิก 0

CLKO OUTPUT สัญญาณ Programmable clock output

LEDA OUTPUT แสดงสถานะของสัญญาณ LINK

LEDB OUTPUT แสดงสถานะของสัญญาณ ACT

ตาราง แสดงชื่อและหนาท่ีขาสัญญาณตางๆ ของ ENC28J60

ENC28J60 ET-dsPIC33WEB V1.0

(dsPIC33FJ128GP708)

CS RD14

SDO RF8

SCK RF6

SDI RF7

INT RA12 (เลือกใชโดยจัมเปอร)

RST RD15 (เลือกใชโดยจัมเปอร)

WOL RA13 (เลือกใชโดยจัมเปอร)

CLKO -

LEDA -

LEDB -

ตารางแสดง สัญญาณการเชื่อมตอระหวางบอรด ENC28J60 กับ ET-dsPIC33WEB V1.0

Page 14: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

13

สรุปการจัดสรรและใชงานทรัพยากรของบอรด ET-dsPIC33WEB V1.0

ตามปรกติแลว MCU เบอร dsPIC33FJ128GP708 ที่ใชกับบอรด ET-dsPIC33WEB V1.0 นั้น จะมี

ขาสัญญาณใหใชงานไดโดยอิสระมากถึง 69 I/O แตจะมีขาสัญญาณบางสวน ถูกออกแบบและเชื่อมตอไวกับ

อุปกรณ I/O เปนการเฉพาะไวเรียบรอยแลว ไมสามารถนํามาใชเปน I/O โดยทั่วไปได ซึ่งพอสรุปไดดังนี้

MCU Oscillator

• RC12 ใชเปน OSC1 ตอกับ Crystal คา 8.00MHz สําหรับใชเปนสัญญาณนาฬิกาของ MCU

• RC15 ใชเปน OSC2 ตอกับ Crystal คา 8.00MHz สําหรับใชเปนสัญญาณนาฬิกาของ MCU

RTC Oscillator

• RC13 ใชเปน OSC1 ตอกับ Crystal คา 32.768KHz สําหรับใชเปนสัญญาณนาฬิกาของ RTC

• RC14 ใชเปน OSC2 ตอกับ Crystal คา 32.768KHz สําหรับใชเปนสัญญาณนาฬิกาของ RTC

พอรตส่ือสารอนุกรม(UART) RS232-CH1

• RF2 ใชเปนขา RXD สําหรับรับขอมูลจาก RS232 ชอง-1

• RF3 ใชเปนขา TXD สําหรับสงขอมูลให RS232 ชอง-1

พอรตส่ือสารอนุกรม(UART) RS232-CH2

• RF4 ใชเปนขา RXD สําหรับรับขอมูลจาก RS232 ชอง-2

• RF5 ใชเปนขา TXD สําหรับสงขอมูลให RS232 ชอง-2

Ethernet Module (SPI-1)

• RF6 ใชเปน SCK ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

• RF7 ใชเปน SDI ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

• RF8 ใชเปน SDO ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

• RD14 ใชเปน CS ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

• RA12 ใชเปน INT1 ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60) โดยสามารถเลือกใช

หรือไมใชได โดยการกําหนดที่ Jumper INT(EN/DS) ซึ่งตามปรกติเลือกเปน DS(Disable:ไมใชงาน)

• RA13 ใชเปน WOL ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)โดยสามารถเลือกใช

หรือไมใชได โดยการกําหนดที่ Jumper WOL(EN/DS) ซึ่งตามปรกติเลือกเปน DS(Disable:ไมใชงาน)

• RD15 ใชเปน RST ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)โดยสามารถเลือกใช

หรือไมใชได โดยการกําหนดที่ Jumper RST(EN/DS) ซึ่งตามปรกติเลือกเปน DS(Disable:ไมใชงาน)

Page 15: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

คูมือการใชงาน ET-dsPIC33WEB V1.0

14

SPI Memory Module (SPI-2)

• RG6 ใชเปน SCK ในการเชื่อมตอกับ SPI Memory

• RG7 ใชเปน SDI ในการเชื่อมตอกับ SPI Memory

• RG8 ใชเปน SDO ในการเชื่อมตอกับ SPI Memory

• RD12 ใชเปน CS ในการเชื่อมตอกับ SPI Memory

Character LCD Display

• RD0 ใชเปน LCD D4 ในการเชื่อมตอกับ Character LCD แบบ 4 Bit

• RD1 ใชเปน LCD D5 ในการเชื่อมตอกับ Character LCD แบบ 4 Bit

• RD2 ใชเปน LCD D6 ในการเชื่อมตอกับ Character LCD แบบ 4 Bit

• RD3 ใชเปน LCD D7 ในการเชื่อมตอกับ Character LCD แบบ 4 Bit

• RD4 ใชเปน LCD RS ในการเชื่อมตอกับ Character LCD แบบ 4 Bit

• RD5 ใชเปน LCD RW ในการเชื่อมตอกับ Character LCD แบบ 4 Bit

• RD6 ใชเปน LCD EN ในการเชื่อมตอกับ Character LCD แบบ 4 Bit

Page 16: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

12

34

56

A B C D

65

43

21

DCBA

Title

Num

berRevision

Size

BDate:

21-Aug-2007

Sheet of File:

D:\ET-dsPIC33W

EB.Ddb

Draw

n By:

C12

10uF

C11

0.1uF

+3.3V

C60.1uF

C70.1uF

C80.1uF

C90.1uF

+3.3V

X1

8MH

z

C1422pF

C1522pF

12

34

56

78

910

CN3

PORTA

12

34

56

78

910

CN5

PORTB-L

12

34

56

78

910

CN8

PORTC

12

34

56

78

910

CN10

PORTD

-L

12

34

56

78

910

CN11

PORTD

-H

+3.3V

+3.3V

+3.3V

+3.3V

+3.3V

RA2

RA6

RA3

RA7

RB0RB2RB4RB6

RB8RB10RB12

RB1RB3RB5RB7

RB9RB11RB13RB15

RC1RC2RC4

RC3

RD0

RD2

RD4

RD6

RD8

RD10

RD12

RD14

RD9

RD11

RD13

RD15

RD1

RD3

RD5

RD7

12

34

56

78

910

CN13

PORTF-L

+3.3V

RF0RF2RF4RF6

RF1RF3RF5RF7

12

34

56

78

910

CN4

PORTG

-L

+3.3V

RG0

RG2

RG6

RG1

RG3

RG7

12

34

56

78

910

CN6

PORTG

-H

+3.3V

RG8

RG12

RG14

RG9

RG13

RG15

12

CN9

RF8

RF8

12

34

56

78

910

1112

1314

CN12

ET-CLCD

VR2

10K

+5V

RD4

RD6

RD1

RD3

RD2

RD0

RD5

+VG

ND

RSV

OEN

RWD0

D1

D2

D3

D4

D5

D6

D7

123456

CN14

ICD2

C130.1uF

R184K

7 +3.3V +3.3V

RB6

RB7

C1+1

C1-3

C2+4

C2-5

R1O12

T1I11

R2O9

T2I10

VCC

16

V+

2

V-

6

GN

D15

R1I13

T1O14

R2I8

T2O7

U1

ICL3232

1234

CN2

RS232-CH2

1234

CN1

RS232-CH1 +3.3V

+3.3V

C10.1uF

+3.3V

C20.1uF

C40.1uF

C30.1uF

C50.1uF

X2

32.768kHz

C1722pF

C1622pF

RC13

RC14

12

34

56

78

910

HD

3SPI M

EMO

RY

+3.3V

SW6

RESET

RG6

RG8

RG7

RD12

12345678

HD

1

12345678

HD

2+3.3VRF8

RF6RF7RD

14

RF2RF3

RF5RF4

JP1

JP2RD

15

RA12

ET-MIN

I ENC28J60

JP3RA

13

132

465

798

101211

SW5

MO

DE

RUN

PROG

LED9

PGM

LED10

RUN

R15

470

+3.3V

SDO

2/CN10/RG

88

SS2/CN11/RG

910

CSDI/RG

1279

IC8/U1RTS/CN

21/RD15

38IC7/U

1CTS/CN20/RD

1437

IC3/RD10

56

IC4/RD11

57

IC5/RD12

64

MCLR

9

VSS11

VDD 12CSD

O/RG

1380

CSCK/RG

1478

PGC3/EM

UC3/A

N1/CN

3/RB119

PGD

3/EMU

D3/A

N0/CN

2/RB020

TDO

/AN

21/INT2/RA

1314

TMS/A

N20/IN

T1/RA12

13V

REF+/RA10

24V

REF-/RA9

23

IC6/CN19/RD

1365

AN

2/SS1/CN4/RB2

18

AN

3/CN5/RB3

17

SCL2/INT3/RA

252

SDA

2/INT4/RA

353

AVDD 25

AVSS26

AN

4/CN6/RB4

16

AN

5/CN7/RB5

15

PGC1/EM

UC1/A

N6/O

CFA/RB6

21

PGD

1/EMU

D1/A

N7/RB7

22

VSS31

VDD 32

U2CTS/A

N8/RB8

27

AN

9/RB928

AN

10/RB1029

AN

11/RB1130

SCK1/IN

T0/RF645

SDI1/RF7

44

OC4/RD

363

OC5/CN

13/RD4

66

PGC2/EM

UC2/SO

SCO/T1CK

/CN0/RC14

60

PGD

2/EMU

D2/SO

SCI/CN1/RC13

59

TCK/A

N12/RB12

33

U1TX

/RF341

U1RX

/RF242

C1TX/RF1

73C1RX

/RF072

AN

23/CN23/RA

777

AN

22/CN22/RA

676

VSS51

OSC2/CLK

O/RC15

50

OSC1/CLK

I/RC1249

VDD 48

IC1/RD8

54

IC2/RD9

55

OC6/CN

14/RD5

67

OC7/CN

15/RD6

68

OC8/CN

16/RD7

69

OC2/RD

161

OC3/RD

262

TDI/A

N13/RB13

34

U2RTS/A

N14/RB14

35

AN

15/OCFB/CN

12/RB1536

U2RX

/CN17/RF4

39

U2TX

/CN18/RF5

40

AN

16/T2CK/T7CK

/RC12

AN

17/T3CK/T6CK

/RC23

AN

18/T4CK/T9CK

/RC34

AN

19/T5CK/T8CK

/RC45

VDDCORE 70

VDD 71

COFS/RG

151

OC1/RD

058

C2TX/RG

174

C2RX/RG

075

SDO

1/RF843

SCL1/RG2

47

SDA

1/RG3

46

SCK2/CN

8/RG6

6

SDI2/CN

9/RG7

7

U2

dsPIC33FJ128GP708

C100.1uF

RA2

RA3

RA6

RA7

RA9

RA10

RA12

RA13

RF0RF1RF2RF3RF4RF5RF6RF7RF8

RC1RC2RC3RC4

RD0

RD1

RD2

RD3

RD4

RD5

RD6

RD7

RD8

RD9

RD10

RD11

RD12

RD13

RD14

RD15

RB0RB1RB2RB3RB4RB5PG

C1PG

D1

RB8RB9RB10RB11RB12RB13RB14RB15

RG0

RG1

RG2

RG3

RG6

RG7

RG8

RG9

RG12

RG13

RG14

RG15

PGC1

PGD

1

RA9

RA12

RA10

RA13

RC13RC14

R191M

IN3

GND1

OU

T2

U4

AP1117-5.0

C220.1uF

C240.1uF

C21220uF/25V

C2347uF/16V

J17-12V

DC

+5V

LED11

POW

ER

R22470

+3.3V

IN1

FB4

OU

T2

GND3

ON/OFF5

U3

LM2575-3.3

L1

220uH

D2

1N5819

C190.1uF/50V

D1

1N4001

C20100uF/16V

+3.3V

R20N

LR21N

L

R161K

R17100

R13470

R14470

C18

10uF/16V

12

34

56

78

910

CN7

PORTB-H

RB14

+3.3V

Circuit of ET-dsPIC33WE V

1.0

ETT CO.,LTD

(WW

W.ETT.CO

.TH)

1.0

12

Page 17: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

12

34

A B C D

43

21

DCBATitle

Num

berRevision

Size

A4

Date:

21-Aug-2007

Sheet of File:

D:\ET-dsPIC33W

EB.Ddb

Draw

n By:

LED1

R1

470

+3.3V

SW2

R10

10K

LED2

R2

470

LED3

R3

470

LED4

R4

470

VR1

10K

SW1

R910K

SW3

R11

10K

SW4

R12

10K

LED5

R5

470

LED6

R6

470

LED7

R7

470

LED8

R8

470

+3.3V+3.3V

1 2

HD

6

HEA

DER 2

1 2

HD

9

HEA

DER 2

1 2

HD

8

HEA

DER 2

1 2

HD

7

HEA

DER 2

1 2

HD

5

HEA

DER 2

12345678

HD

4H

EAD

ER 8

Circuit of ET-dsPIC33WEB V

1.0

ETT CO.,LTD

(WW

W.ETT.CO

.TH)

1.0

22

Page 18: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

12

34

A B C D

43

21

DCBATitle

Num

berRevision

Size

A4

Date:

3-Sep-2007 Sheet of

File:D

:\ET-MIN

I ENC28J60.ddb

Draw

n By:

8

142356

7

CHS G

ND

NC

1CT:1

TD+

TD-

CTRD+

CTRD-

TX+

TX-

RX+

RX-

6 3 2 14578

J1RJ45_PRJ-005

R11

2K7 1%

C11

10uF

VD

D

C30.1uF

C40.1uF

C50.1uF

C60.1uF

C70.1uF

VD

D

VD

D28

VD

DO

SC25

VD

DPLL

20

VD

DRX

19

VD

DTX

15

VCA

P1

TPOU

T+17

TPOU

T-16

TPIN+

13

TPIN-

12

LEDA

27

LEDB

26

RBIAS

14V

SSRX11

VSSTX

18V

SSPLL21

VSSO

SC22

VSS

2

WO

L5

INT

4

OSC1

23

OSC2

24CLK

OU

T3

RESET10

CS9

SCK8

SI7

SO6

U1

ENC28J60-SO

IC

X1

25MH

z

C1233pF

C1333pF

R6180

R5180

R7180

R8180

R250

R350

L1FB

C2

0.1uF

R150

R450

C1

0.1uF

VD

D

SDO

SCKCSRST

LINT

LWO

L

LSO

TPOU

T+

TPOU

T-

TPIN+

TPIN-

TPOU

T+TPO

UT-

TPIN+

TPIN-

LED2

LINK

LED1

ACT

R9180

R10180

LCLKO

UT

23

1

U2A

74AH

C125

56

4

U2B

74AH

C125

98

10

U2C

74AH

C125

1211

13

U2D

74AH

C125

LCLKO

UT

CLKO

LINT

LWO

LW

OL

INT

SDI

LCS

LSO

LCS

147

VCC

C80.1uF

VCC

IN

GND

OU

T

U3

LM3940-3.3

C90.1uF

C100.1uF

C1447uF/16V

JP1V

oltage Selection

VD

D

VCC

LED3

PWR

R12330

VD

D

12345678910

HD

3V

CC

CSSDO

SDI

SCK

RSTIN

T

WO

LCLK

O

VCC

RSTIN

T

WO

LCS SD

O

SDI

SCK

Circuit of ET-MIN

I ENC28J60

U2

12345678

HD

1

12345678

HD

2

CLKO

1-2=5V2-3=3.3V

1 2 3

ZD1

3V6

LEDA

LEDB

LEDB

LEDA

VD

D

11

WW

W.ETT.CO

.TH1.0

Page 19: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -1- WWW.ETT.CO.TH

การพัฒนาโปรแกรมของบอรด

สําหรับการพัฒนาโปรแกรมของบอรด “ET-dsPIC33WEB V1.0” นั้น จะแบงออกเปน 2 สวน

ดวยกัน คือ สวนของการพัฒนาโปรแกรม และการ Download โปรแกรม โดยในสวนของการพัฒนา

โปรแกรมของบอรดนั้น จะเปนการเขียนโปรแกรมเพื่อควบคุมและสั่งงานให MCU สามารถทํางานตาม

จุดประสงคที่ไดออกแบบไว ซึ่งในสวนนี้เปนหนาที่ของผูพัฒนาโปรแกรม วาจะเลือกใชภาษาใดในการ

พัฒนาโปรแกรม รวมไปถึงการเลือกใชโปรแกรมสําหรับทําหนาที่แปลคําสั่งของภาษานั้นๆ ใหเปนรหัสคําสั่ง

ในรูปแบบของ HEX File สําหรับใช Download ใหกับหนวยความจําโปรแกรม (Flash Memory) ของ MCU

เพื่อสั่งงานให MCU ปฏิบัติตามคําสั่งในโปรแกรมที่ผูพัฒนาโปรแกรมเขียนขึ้นมา

สําหรับสวนของการ Download โปรแกรม หรือการ Download HEX File ที่ไดจากการพัฒนา

โปรแกรมใหกับหนวยความจําโปรแกรม (Flash Memory) ของ MCU นั้น จะตองอาศัยเครื่องมือทาง

ฮารดแวรเปนสวนประกอบในการพัฒนาโปรแกรมดวย ซึ่งในกรณีของบอรด “ET-dsPIC33WEV V1.0” นั้น

จะตองใช เครื่องมือสําหรับโปรแกรมขอมูลใหกับ MCU ภายในบอรดดวยวิธีการแบบ In-Circuit โดยตองใช

เครื่อง Programmer หรือใชชุดพัฒนาโปรแกรมจําพวก In-Circuit Debugger ที่สนับสนุนการใชงาน

รวมกับ MCU เบอร dsPIC33FJ128GP708 ซึ่งใชขั้วตอสัญญาณตรงตามมาตรฐาน “ICD2” ของ

Microchips เชน ICD2,Pickit2 ซึ่งทางบริษัท อีทีที ก็มีสนับสนุน คือ “ET-PGMPIC USB” ดังตัวอยาง

ET-dsPIC33WEB V1

ET-PGMPIC USB

Page 20: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -2- WWW.ETT.CO.TH

การเขียนโปรแกรมใชงานกับบอรดโดยใช MPLAB C30 MPLAB C30 หรือ C30 Tools เปนโปรแกรมภาษาซี สําหรับใชแปลคําสั่งของ MCU ตระกูล dsPIC

ซึ่งไดรับการพัฒนาขึ้นโดย Microchips เอง โดยขอกําหนดและรายละเอียดของการเขียนโปรแกรมภาษาซี

นั้น จะไมกลาวถึงในที่นี้ดวย โดยถาผูใชตองการพัฒนาโปรแกรมใหกับ dsPIC ดวยภาษาซี แตยังไมมี

ความรูเรื่องการเขียนโปรแกรมภาษาซีเลยนั้นขอแนะนําให หาหนังสือที่อธิบายเกี่ยวกับการเขียนโปรแกรม

ภาษาซีในสวนที่เปนมาตรฐานตามขอกําหนดของ “ANSI C” มาศึกษาใหเขาใจเสียกอน และสําหรับสวน

ของขอกําหนดปลีกยอยอ่ืนๆที่เปนของ MPLAB C30 เองก็สามารถอานเพิ่มเติมไดจากเอกสารและคูมือการ

ใชงานของ MPLAB C30 ที่ทาง Microchips จัดทําไวได โดยสามารถ Download จาก Website ของ

Microchips หรือจาก Folder ของ “C:\Program Files\Microchip\MPLAB C30\docs” ที่ทําการติดต้ัง

โปรแกรม MPLAB C30 ไวก็ได โดยในที่นี้ จะขอกลาวแนะนําถึงเฉพาะสวนของการกําหนดคาตัวเลือกใน

โปรแกรมเพื่อใชงานรวมกับบอรด “ET-dsPIC33WEB V1.0” เทานั้น โดยในการที่จะใชงานโปรแกรม

MPLAB C30 ในการเขียนโปรแกรมนั้น ผูใชจําเปนตองทําการติดต้ังโปรแกรมของ Microchips จํานวน 2

โปรแกรมดังนี้คือ

MPLAB IDE ซึ่งเปนโปรแกรม Text Editor ของ Microchips ซึ่งในปจจุบัน (ตุลาคม 2548)

จะเปนรุน 7.21 แลวสามารถ Download มาใชงานไดฟรีจาก Web ของ Microchips

MPLAB C30 ซึ่งเปนตัวแปลภาษาซี (C Complier) ใหเปนรหัสคําสั่งของ dsPIC ซึ่งตาม

ปรกติแลวโปรแกรมชุดนี้จะตองซื้อมาใชงานเอง แตอยางไรก็ตามทาง Microchips เองมี

รุนทดลองใชงานใหผูใชสามารถ Download มาใชงานไดเชนเดียวกันกับ MPLAB IDE

โดยโปรแกรมทั้ง 2 ชุดนี้ ทางอีทีที ไดทําการ Download มาจัดเตรียมไวใหในแผน CD-ROM ที่แถม

ไปกับบอรดของ “ET-dsPIC33WEB V1.0” ดวยอยูแลว โดยในการติดต้ังโปรแกรมนั้นขอแนะนําใหผูใชทํา

การติดต้ังโปรแกรมในชุดของ MPLAB IDE กอนเปนอันดับแรก โดยขอแนะนําใหติดต้ังโปรแกรมของ

MPLAB IDE ไวตามคา Default ของโปรแกรมติดต้ังเลย คือ “C:\Program Files\Microchip\MPLAB IDE\"

จะสะดวกตอการใชงานมากกวา ซึ่งหลังจากทําการติดต้ังโปรแกรม MPLAB IDE เสร็จเรียบรอยแลวในครั้ง

แรกกอนการใชงานนั้นตองสั่ง Restart เครื่องคอมพิวเตอรกอน หลังจากนั้นแลว MPLAB IDE จึงจะ

สามารถทํางานไดโดยไมเกิดปญหา จากนั้นจึงทําการติดต้ังโปรแกรม MPLAB C30 เปนลําดับถัดไป โดยขอ

แนะนําใหทําการติดต้ังโปรแกรมชุดนี้ไวตามคา Default ของการติดต้ังโปรแกรม จะเกิดความสะดวกตอการ

ใชงานมากที่สุด โดยเฉพาะในขั้นตอนของการกําหนดการเชื่อมโยงการทํางานระหวาง MPLAB IDE และ

MPLAB C30 โดยในที่นี้จะขออธิบายโดยอางถึงตําแหนงการติดต้ังโปรแกรมดังที่กลาวไวแลวขางตนเทานั้น

ซึ่งถาผูใชทําการสั่งติดต้ังโปรแกรมไวยังตําแหนง Folder ที่แตกตางไปจากนี้แลวขอใหทําความเขาใจและ

ดัดแปลงวิธีการกําหนดคาเองตามที่ติดต้ังโปรแกรมไวจริงๆดวย

Page 21: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -3- WWW.ETT.CO.TH

ตัวอยางการสรางโปรแกรมภาษาซีของ MPLAB C30

เมื่อทําการติดต้ังโปรแกรมกําหนดการเชื่อมโยงคําสั่งระหวาง MPLAB IDE และ MPLAB C30 เปน

ที่เรียบรอยแลว ตอจากนี้ไป ผูใชก็สามารถทําการเรียกใชงานโปรแกรม MPLAB C30 ผานทางโปรแกรม

MPLAB IDE ไดแลว โดยคาตัวเลือกตางๆที่ไดกําหนดไวแลวนั้นจะถูกเก็บไวใน Configuration ของ

โปรแกรมตลอดไป จนกวาจะมีการสั่งเปลี่ยนแปลงใหม ซึ่งในที่นี้จะขอยกตัวอยางการเขียนโปรแกรม

ภาษาซี ของ MPLAB C30 สัก 1 ตัวอยางพอเปนแนวทางใหผูใชทําความเขาใจ โดยมีลําดับขั้นตอนดังนี้

1. สั่ง Run Program ของ MPLAB IDE ขึ้นมา จากน้ันก็สั่งสรางไฟลใหมขึ้นมา 1 ไฟล สําหรับเขียน

Source Code ภาษาซี โดยใชคําสั่ง “File → New” จากนั้นใหทําการพิมพ Source Code ภาษาซี

ใน Work Sheet ของโปรแกรม MPLAB IDE ดังตัวอยาง

2. ทําการสั่งบันทึกไฟลที่เขียนขึ้นใหเปน Text File ภาษาซี โดยใหทดลองกําหนดชื่อเปน “main.c”

แลวสั่งบันทึกไวใน Folder ชื่อ “…\Microchip\MPLAB C30\examples\led_blink\main.c” โดยใน

ที่นี้ใหใชคําสั่ง “File → Save As…” แลวสราง Folder ชื่อ led_blink ไวภายใต Folder ของ

examples อีกชั้นหนึ่ง แลว กําหนดชื่อเปน “main.c” แลวเลือก “Save” ดังรูป

Page 22: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -4- WWW.ETT.CO.TH

ซึ่งจะเห็นวาเมื่อทําการสั่งบันทึกไฟลเปน “main.c” ไปแลว กลุมของตัวอักษรตางๆที่ไดพิมพไว จะ

ถูกจัดแบงกลุม โดยใชสีในการแสดงผลที่แตกตางกันไปตามหนาที่ของกลุมตัวอักษร เชน กลุมตัวอักษรที่ใช

เปนคําอธิบาย (Comment) กลุมตัวอักษรที่เปนคําสั่ง และกลุมตัวอักษรที่เปนตัวแปรตางๆ ซึ่งจุดนี้เปนขอดี

ของ MPLAB IDE ที่สามารถแยกการแสดงผลกลุมตัวอักษรตามหนาที่การใชงานได ทําใหเราสามารถอาน

โปรแกรมไดงายและสะดวกมากยิ่งขึ้นดังรูป

Page 23: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -5- WWW.ETT.CO.TH

#include "p33FJ128GP708.h" // dsPIC33FJ128GP708 MPU Register /* Setup Configuration For ET-dsPIC33WEB-V1 */ _FOSCSEL(FNOSC_PRIPLL & // Select Primary OSC = XT + PLL IESO_OFF ) // Startup With User Select OSC _FOSC(FCKSM_CSDCMD & // Clock Switch Disabled OSCIOFNC_OFF & // OSC2 Pin = Clock O/P POSCMD_XT) // Primary OSC = XT _FWDT(FWDTEN_OFF & // Disable Watchdog Timer WINDIS_OFF & // Disabled Windowed WDT WDTPRE_PR128 & // Watchdog prescaler=1:128 WDTPOST_PS32768) // Watchdog postscaler=1:32,768 _FPOR(FPWRT_PWR128) // Power-on Reset Value = 128ms _CONFIG3(JTAGEN_OFF); // Disable JTAG Interface /* End of Configuration For ET-dsPIC33WEB-V1 */ /* Pototype Section */ void delay(unsigned long int); // Delay Time Function int main(void) { /* Start of PLL Config Fcy = 40MIPS */ CLKDIV &= 0xFFE0; // PLLPRE[4..0] = 00000 (N1=2) CLKDIV &= 0xFF3F; // PLLPOST[1:0] = 00 (N2=2) PLLFBD = 0x26; // PLLDIV[8..0] = 000100110(M=40) while(!OSCCONbits.LOCK); // Wait PLL to Lock OSCCONbits.CLKLOCK = 1; // Disable PLL Modify /* End of PLL Config Fly = 40MIPS */ /* Start Config RB8 = Output */ AD1PCFGLbits.PCFG8 = 1; // AN8(RB8) = Digital Mode TRISBbits.TRISB8 = 0; // RB8 = Output LATBbits.LATB8 = 0; // Start = ON LED while(1) // Loop Continue { LATBbits.LATB8 = !LATBbits.LATB8; // Toggle Output RB8 delay(2000000); // Display LED Delay } } /***********************/ /* Delay Time Function */ /* 1-4294967296 */ /***********************/ void delay(unsigned long int count1) { while(count1 > 0) {count1--;} // Loop Decrease Counter }

แสดง ตัวอยาง Source Code สําหรับใชทดลองการทํางาน

สําหรับตัวอยางนี้จะเปนการสั่งใหใชพอรต RB8 ทําหนาที่เปน Output ขับ LED ใหติดและดับ

สลับกันไปไมรูจบในลักษณะของไฟกระพริบ ซึ่งวิธีการทดสอบการทํางานของโปรแกรมนี้ โดยใชกับบอรด

Page 24: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -6- WWW.ETT.CO.TH

ET-dsPIC33WEB V1.0 นั้นทําไดโดยตอสัญญาณจาก RB8(PORTB-H) เขากับ LED1 Output ของบอรด

โดยจะเห็นผลการทํางานของโปรแกรมแกรม คือ LED1 จะกระพริบ ติดและดับอยางตอเนื่องตลอดเวลา

โดยสวนที่สําคัญและมีความจําเปนมากที่สุดของโปรแกรมก็คือสวนของคําสั่งที่ใชในการกําหนดคา

ของ Configuration Bit ใหกับ MCU โดยคานี้จะถูกแปลและใชกําหนดคาการทํางานของ Fuse Bit ในตัว

MCU ในขั้นตอนของการ Download Code ใหกับ MCU โดยในตัวอยางเปนการกําหนดให MCU ทํางาน

ดวยสัญญาณนาฬิกา 8MHz จากภายนอก รวมกับวงจรคูณความถี่ (Phase Lock Loop :PLL) ซึ่งตัวอยาง

โปรแกรมตางๆที่ทางอีทีที สรางขึ้น จะอางอิงจาก Configuration ดังตอไปนี้

• กําหนดให MCU ทํางานจากสัญญาณนาฬิกา : XTAL = 8MHz (XT+PLL)

• กําหนดคาการทํางานของวงจรคูณความถี่ Phase Lock Loop ดังนี้

o PLLPRE[4..0] = 00000 (N1=2)

o VCO Input = 8MHz / 2 = 4MHz

o PLLDIV[8..0] = 0x26(M=40)

o VCO Output = 4 x 40MHz = 160MHz

o PLLPOST[1:0] = 0:0 (N2=2)

o Fosc = 160MHz / 2 = 80MHz

o Fcy = Fosc/2 = 80MHz /2 = 40MHz

/* Setup Configuration For ET-dsPIC33WEB-V1 */ _FOSCSEL(FNOSC_PRIPLL & // Select Primary OSC = XT + PLL IESO_OFF ) // Startup With User Select OSC _FOSC(FCKSM_CSDCMD & // Clock Switch Disabled OSCIOFNC_OFF & // OSC2 Pin = Clock O/P POSCMD_XT) // Primary OSC = XT _FWDT(FWDTEN_OFF & // Disable Watchdog Timer WINDIS_OFF & // Disabled Windowed WDT WDTPRE_PR128 & // Watchdog prescaler=1:128 WDTPOST_PS32768) // Watchdog postscaler=1:32,768 _FPOR(FPWRT_PWR128) // Power-on Reset Value = 128ms _CONFIG3(JTAGEN_OFF); // Disable JTAG Interface /* End of Configuration For ET-dsPIC33WEB-V1 */

สวนของคําสั่งในการกําหนดคาการทํางานของ Phase Lock Loop เพื่อทําการคูณความถี่จาก

สัญญาณนาฬิกา 8.00MHz ที่ตอไวภายนอก เพื่อใหไดความถี่ Fosc เปน 80 MHz เพื่อให CPU สามารถ

ประมวลผลดวยความเร็วสูงสุดที่ 40MIPS (Fcy = 40MHz) ดังตัวอยาง

/* Start of PLL Config Fcy = 40MIPS */ CLKDIV &= 0xFFE0; // PLLPRE[4..0] = 00000 (N1=2) CLKDIV &= 0xFF3F; // PLLPOST[1:0] = 00 (N2=2) PLLFBD = 0x26; // PLLDIV[8..0] = 000100110(M=40) while(!OSCCONbits.LOCK); // Wait PLL to Lock OSCCONbits.CLKLOCK = 1; // Disable PLL Modify /* End of PLL Config Fly = 40MIPS */

Page 25: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -7- WWW.ETT.CO.TH

3. ทําการสราง Project File เพื่อใชสั่งผนวกไฟลตางๆ ที่เกี่ยวของเขาดวยกัน ทั้งนี้เนื่องมาจากวา

ภาษาซีของ MPLAB C30 นั้น ถูกออกแบบใหมีความออนตัวในการใชงาน ดังนั้นจึงมีการจัดสราง

และแบงแยกไฟลออกเปนหลายๆไฟลตามหนาที่การใชงาน เพื่อใหผูใชสามารถเรียกไฟลตางๆ

เหลานั้นเขามาใชงานรวมกับ Source Code ที่เขียนขึ้นมาไดไดงาย โดยไมตองเสียเวลาเขียน

Source Code เองทั้งหมด ซึ่งจะทําใหผูใชสามารถลดเวลาในการเขียนโปรแกรมไปไดเปนอยาง

มากเนื่องจากเพียงแตทําการสั่งผนวกไฟลที่ทาง MPLAB C30 สรางเตรียมไวให เขากับ Source

Code ที่ผูใชเขียนขึ้นใหมแลวสั่งแปลโปรแกรมก็จะไดไฟลที่มีความสมบูรณตอการใชงานแลว โดย

จากตัวอยาง Source Code ที่ไดทดลองเขียนไปแลวในขางตน ก็เชนเดียวกัน จะเห็นไดวามีการสั่ง

ผนวกไฟลชื่อ “p33FJ128GP708.h” เขามาใชงานดวย ซึ่งทําใหไมตองเสียเวลาไปสั่งประกาศชื่อ

และตําแหนงรีจิสเตอรตางๆของ “dsPIC33FJ128GP708” ใหเสียเวลา แตสามารถอางถึงชื่อของ

รีจิสเตอรตางๆในโปรแกรมไดทันที โดยวิธีการกําหนดคุณสมบัติของ Project File มีดังนี้

สั่งกําหนดคุณสมบัติของ project File โดยใชคําสั่ง “Project → Project Wizard…” ซึ่ง

จะไดผลดังรูป จากนั้นใหเลือก “Next >” เพื่อไปยังขั้นตอนตอไป

หลังจากเลือก “Next >” แลว โปรแกรมจะรอใหกําหนดเบอรของ MCU ที่จะใชงานรวมกับ

โปรแกรมที่เขียนขึ้น ซึ่งใหเลือกกําหนดเปน “dsPIC33FJ128GP708” จากนั้นเลือก “Next >” เพื่อขามไป

ทํางานยังขั้นตอนตอไปดังรูป

Page 26: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -8- WWW.ETT.CO.TH

ในขั้นตอนนี้จะเปนการเลือกวาจะใชโปรแกรมชุดใดในการแปลคําสั่ง เนื่องจาก MPLAB IDE

สามารถใชงานไดกับชุดโปรแกรมตางๆมากมายหลายโปรแกรม ซึ่งในที่นี้ใหเลือกกําหนดใชโปรแกรม ของ

MPLAB C30 โดยการเลือกกําหนดตัวเลือกของ “Active Toolsuite” ใหเปนของ MPLAB C30 โดยกําหนด

ตัวเลือกเปน “Microchip C30 Toolsuite” ดังรูป แลวเลือก “Next >”

Page 27: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -9- WWW.ETT.CO.TH

ในขั้นตอนนี้จะเปนการ กําหนดชื่อ Project และตําแหนง Folder ที่จะใชเก็บไฟลตางๆที่ไดจากการ

ทํางานของ Project โดยใหกําหนดชื่อเปน “LED_BLINK” ดังรูป แลวเลือก “Next >”

Page 28: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -10- WWW.ETT.CO.TH

ในขั้นตอนนี้จะเปนการสั่งผนวกไฟลตางๆเขาไวดวยกันภายใตชื่อ Project ของ LED_BLINK โดย

ใหทําการสั่งผนวกไฟลทั้งหมด 3 ไฟลเขาไวใน Project ดังนี้

สั่งผนวกไฟลชื่อ “main.c” ซึ่งเปน Source Code ที่เราไดเขียนและสั่งบันทึกไวแลวใน

ขั้นตอนที่ผานมาโดยเก็บอยูใน …\LED_BLINK\main.c”

สั่งผนวกไฟลชื่อ “p33FJ128GP708.h” ซึ่งเปน Header ของภาษาซี ในการอางถึง

รีจิสเตอรตางๆของ MCU เบอร “dsPIC33FJ128GP708” โดยถาติดต้ังโปรแกรม C30

ตามคา Default ไฟลดังกลาวจะเก็บอยูใน “…\MPLAB C30\support\h\”

สั่งผนวกไฟลชื่อ “p33FJ128GP708.gld” ซึ่งเปน Script File ของ dsPIC33FJ128GP708

ที่ทาง MPLAB C30 สรางเตรียมไวให โดยถาติดต้ังโปรแกรมตาม C30 ตามคา Default

ไฟลดังกลาวจะเก็บอยูใน “…\MPLAB C30\support\gld\”

***หมายเหตุ*** คา Default มาตรฐานของการติดต้ังโปรแกรมคอมไพลเลอร C30 โดยปรกติแลวโปรแกรม

จะถูกติดต้ังไวที่ “C:\Program Files\Microchip\MPLAB C30“

โดยในการสั่งผนวกไฟลทั้ง 3 ดังกลาวใหทําการคลิกเมาสไปยัง “ICON” ของไฟลจากตําแหนง

Folder ที่กลาวไวในขางตนที่ผานมาแลวเลือก “Add >>” จนชื่อไฟลดังกลาวไปปรากฏอยูที่กรอบหนาตาง

ดานขวาของโปรแกรม ซึ่งใหเลือกทําตามวิธีการนี้จนสามารถสั่ง “Add” ไฟลไดครบทั้ง 3 ไฟล แลวเลือก

“Next >” เพื่อไปยังขั้นตอนตอไปดังรูป

Page 29: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -11- WWW.ETT.CO.TH

เมื่อสั่งผนวกไฟลทั้งหมดเขากับ Project ไฟลที่สรางขึ้นเปนที่เรียบรอยแลว โปรแกรมจะรายงานผล

โดยแสดงคาพารามิเตอรตางๆที่ไดกําหนดไวแลวใหทราบดังรูป ใหเลือก “Finish” เปนอันเสร็จขั้นตอนของ

การสราง Project File ของ BLINK_LED

Page 30: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -12- WWW.ETT.CO.TH

ซึ่งหลังจากกําหนดคาตางๆใหกับ Project File เปนที่เรียบรอยแลว ผูใชก็สามารถทําการสั่งแปล

คําสั่งของโปรแกรม “main.c” ที่เขียนขึ้นไดทันที โดยใชคําสั่ง “Project → Build All” ซึ่งจะทําใหไดไฟล

Output มีชื่อเดียวกับ Project File ที่สรางไวแตมีนามสกุลเปน HEX ซึ่งจากตัวอยาง Project นี้เมื่อสั่งแปล

โปรแกรมแลวถาไมเกิดขอผิดพลาดใดๆจะได Output ไฟลชื่อ “LED_BLINK.HEX” โดยไฟลดังกลาวจะถูก

สรางและเก็บไวในตําแหนง Folder ของ Project คือ “…\led_blink\led_blink.hex” โดยผูใชสามารถสั่ง

Download Hex File ชื่อ “LED_BLINK.HEX” นี้ใหกับบอรด “ET-dsPIC33WEB V1.0” เพื่อทดสอบการ

ทํางานไดทันที

Page 31: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -13- WWW.ETT.CO.TH

การ Download Code ใหกับบอรด หลังจากทําการเขียนโปรแกรมและสั่งคอมไพลจนได HEX เรียบรอยแลว ขั้นตอนการพัฒนา

โปรแกรมของบอรดก็จะเหลือเพียงการ Download Code ใหกับ MCU ซึ่งในขั้นตอนนี้จะตองใชเครื่องมือใน

การ Download Code รวมดวย ซึ่งอาจเปน ICD2 หรือ Pickit2 ก็ได

สําหรับในกรณีที่ใช ICD2 นั้นจะสามารถสั่ง Download Code ไดจากโปรแกรม MPLAB โดยตรง

เลย โดยใหทําการเชื่อมตอสายสัญญาณจาก “ICD2” เขากับบอรด “ET-dsPIC33WEB V1.0” แลวเลือก

สวิตช Mode ใหอยูในตําแหนง PGM (สวิตชอยูในตําแหนงถูกกด LED PGM สีแดงติดสวาง) จากนั้นเลือก

กําหนดการเชื่อมตอกับ ICD2 โดยการคลิกเมาสที่เมนูคําสั่ง “Programmer → Select Program →

MPLAB ICD 2” จากนั้นใหสั่ง Download Code โดยคลิกเมาสที่เมนูคําสั่ง “Programmer → Program”

ซึ่งเครื่องก็จะทําการ Download Code ใหเองโดยอัตโนมัติ จนเมื่อเสร็จเรียบรอยแลว จะมีขอความแจงให

ทราบคือ “MPLAB ICD2 Ready” ดังรูป

ซึ่งหลังจากทําการ Download Code เรียบรอยแลวใหเลือกสวิตช Mode ไปไวในตําแหนง Run โดย

ใหตําแหนงของสวิตช Mode อยูในตําแหนงปลอย และ LED Run สีเขียวติดสวาง จากน้ันใหกดสวิตช

Reset 1 ครั้ง บอรดก็จะเริ่มตนทํางานตามคําสั่งที่ Download ใหแลวในทันที

Page 32: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -14- WWW.ETT.CO.TH

การ Download Code ดวย “ET-PGMPIC USB” สําหรับในกรณีที่ผูใชเลือกใชเครื่องโปรแกรม Pickit2 หรือ ET-PGMPIC USB นั้น ในปจจุบัน

โปรแกรม MPLAB ยังไมไดสรางการเชื่อมตอคําสั่งกับเครื่องโปรแกรมดังกลาวไวให ดังนั้นผูใชจึงไมสามารถ

สั่ง Download Code ผานทางโปรแกรม MPLAB ไดเหมือน ICD2 แตจะตองสลับไปใหโปรแกรม Pickit2

เพื่อสั่ง Download Code เองดังนี้

1. ตอสายสัญญาณ ICD2 จาก ET-PGMPIC USB เขากับบอรด ET-dsPIC33WEB V1.0 โดยให

เลือกกําหนด Jumper “B/T” ของ ET-PGMPIC USB ไวในตําแหนง “B” (Target Board) พรอมกับ

กําหนดสวิตชเลือก Mode ของบอรด “ET-dsPIC33WEB V1.0” ไวในตําแหนง PGM (LED PGM สี

แดงติดสวาง)

2. สั่ง Run โปรแกรม Pickit2 ถาทุกอยางถูกตองจะไดผลดังรูป

Page 33: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -15- WWW.ETT.CO.TH

3. ทําการคลิกเมาสที่เมนูคําสั่ง “Device Family → dsPIC33” ซึ่งเครื่องโปรแกรมจะทําการเชื่อมตอ

กับ MCU พรอมกับอานคา Configuration ตางๆของ MCU ขึ้นมาแสดงผลใหเห็นที่หนาจอของ

โปรแกรม ใหเห็นในทันที ซึ่งในกรณีของบอรด “ET-dsPIC33WEB V1.0” นั้น ถาทุกอยางถูกตองที่

หนาจอของโปรแกรมจะแสดงขอความ “dsPIC33 device found” พรอมกับมีการแสดงเบอรของ

MCU (Device) เปน “dsPIC33FJ128GP708” ดังรูป

Page 34: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -16- WWW.ETT.CO.TH

4. ใหทําการสั่ง Load HEX File ที่ไดจากการแปลโปรแกรมของ C30 โดยใหทําการคลิกเมาสที่เมนู

คําสั่ง “File → Import Hex” แลวเลือก HEX File ที่ไดจากจากแปลคําสั่งของ C30 ซึ่งถาทุกอยาง

ถูกตอง จะปรากฏขอความ “Hex file successfully imported” ซึ่งหมายถึงการสั่ง Load Hex ไฟล

เรียบรอยแลว ซึ่งผูใชสามารถสั่ง Download Code จาก Hex File ใหกับหนวยความจําของ MCU

ไดทันที โดยการคลิกเมาสที่ปุมคําสั่ง “Write” ดังรูป

Page 35: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรมของบอรด ET-dsPIC33WEB V1.0

ETT CO.,LTD -17- WWW.ETT.CO.TH

5. เครื่อง “ET-PGMPIC USB” จะเริ่มตนทําการ Download Code ใหกับ MCU ในทันที เมื่อการ

Download Code เสร็จเรียบรอยแลว จะมีขอความ “Programming Successful” ดังรูป

6. หลังจากทําการ Download Code เรียบรอยแลว ใหทําการเลือกกําหนดการทํางานของสวิตช

Mode ของบอรด ET-dsPIC33WEB V1.0 ไปไวในตําแหนง Run โดยใหตําแหนงของสวิตช Mode

อยูในตําแหนงปลอย และ LED Run สีเขียวติดสวาง จากนั้นใหกดสวิตช Reset 1 ครั้ง บอรดก็จะ

เริ่มตนทํางานตามคําสั่งที่ Download ใหแลวในทันที

Page 36: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-1-

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

ความตองการทางดานฮารดแวร (Hardware Requirements)

อุปกรณที่ใช

- บอรดไมโครคอนโทรลเลอร ET-dsPIC33WEB V1.0

- โมดูล ET-MINI ENC28J60

- สายเชื่อมตอวงจร อยางนอย 13 เสน

- จอแสดงผล Character LCD ขนาด 16 ตัวอักษร 2 บรรทัด

- โมดูล EEPROM 25LC256

- เครื่องโปรแกรม PIC/dsPIC รุน ET-PGMPIC USB หรือรุนอ่ืนๆ พรอมสายเชื่อมตอ USB

- แหลงจายไฟสําหรับบอรด ET-dsPIC33WEB V1.0 (7-12V/850mA)

- เครื่องคอมพิวเตอร ซึ่งมีพอรตเชื่อมตอ Ethernet LAN

- สายเคเบิลของระบบแลนด ซึ่งมีอยูสองกรณี คือ

• กรณีที่ 1 คือ การเชื่อมตอเขากับคอมพิวเตอรโดยตรง สาย LAN จะตองเขาสายแบบ Cross

• กรณีที่ 2 คือ การเชื่อมตอผาน Hub ของเครื่องคอมพิวเตอร Server จะตองเขาสายแบบ Direct

Page 37: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-2-

ความตองการทางดานซอรฟแวร (Software Requirements)

- ติดต้ังโปรแกรม MPLAB IDE v7.61 (เวอรชันลาสุด ณ ปจจุบัน กรกฎาคม 2550)

- โปรแกรมคอมไพลเลอร C30 เวอรชัน 3.01 Student Edition

- โปรแกรม TCPIP Stack 4.02 (เวอรชันลาสุด ณ ปจจุบัน กรกฎาคม 2550)

- โปรแกรม รับสงขอมูลอนุกรม RS232 เชน Procomm หรือ HyperTerminal ของวินโดว

- โปรแกรม Internet Explorer หรือ โปรแกรมที่เปด Webpage ทั่วไป

*** ใหทําการติดต้ังโปรแกรมเหลานี้ใหเรียบรอย

ขั้นตอนการทดลอง

1. ตอวงจรใหเรียบรอยดังนี้

รูปแสดงการเชื่อมตอสัญญาณตางๆ เพ่ือทําการทดลอง

Page 38: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-3-

รูปแสดงบอรดทดลองหลังจากเชื่อมตอสัญญาณตางๆ

Page 39: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-4-

สัญญาณการเชื่อมตอ

สําหรับตัวอยาง Code Program ที่เปน Web Server Control ที่ทาง อีทีที จัดทําขึ้น เพื่อเปนแนวทาง และ

ตัวอยางการใชงาน เพื่อใหผูใชนําไปทดสอบการทํางาน และแกไขพัฒนาตามความตองการนั้น จะเปนการปรับปรุง

มาจากตัวอยาง Code ของ Microchips โดยทางอีทีที ไดนํา Source Code ของ TCP/IP Stack V4.02 จากทาง

Microchips มาปรับปรุงแกไขใหสอดคลองกับ I/O ตางๆของบอรด ET-dsPIC33WEB V1.0 ซึ่งไดมีการปรับปรุง

และแกไขดัดแปลง Code เฉพาะในสวนของ Webpage และ HTML สวนของการ Process I/O Function เทานั้น

สวนรายละเอียดการใชงานฟงกชั่นตางๆที่เปนของ TCP/IP Stack นั้นจะยึดตามตนฉบับของ Microchips เปนหลัก

ซึ่งผูใชสามารถศึกษารายละเอียดตางๆเกี่ยวกับการใชงาน ฟงกชั่นตางๆของ TCP/IP Stack ไดจากเอกสารที่ทาง

Microchips จัดทําไวใหไดเอง โดยจะไมขอกลาวถึงในที่นี้ดวย

โดยในตัวอยางทาง อีทีที จะจัดทําเปนลักษณะของการประยุกตใชงาน Web Server Control ขนาดเล็ก

โดยแสดงใหเห็นวิธีการรับสงคําสั่งจากหนา Webpage สําหรับควบคุมการทํางานของอุปกรณ I/O ตางๆ ที่อยูใน

บอรด ET-dsPIC33WEB V1.0 ทั้ง Digital Output (LED), Digital Input (SW), Analog Input (ADC) และ LCD

Display โดยในการทดลองตามตัวอยางโปรแกรม ใหทําการเชื่อมตอสัญญาณ I/O ของ MCU กับวงจร I/O ตางๆ

ตามรายละเอียดดังตอไปนี้

• Ethernet Module สําหรับใชในการเชื่อมตอกับ Ethernet LAN จะใชโมดูล ET-MINI ENC28J60

ซึ่งสามารถรับสงขอมูลไดดวยความเร็วสูงสุด 10MB โดยฟงกชั่นในการเชื่อมตอจะใชสัญญาณ

SPI1 ของ MCU โดยใชสัญญาณตางๆดังนี้

RF6 ใชเปน SCK ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

RF7 ใชเปน SDI ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

RF8 ใชเปน SDO ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

RD14 ใชเปน CS ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60)

RA12 ใชเปน INT1 ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60) ซึ่งใน

ตัวอยางนี้จะไมไดใชงานใหกําหนด Jumper INT(EN/DS) เปน DS(Disable:ไมใชงาน)

RA13 ใชเปน WOL ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60) ซึ่งใน

ตัวอยางนี้จะไมไดใชงานใหกําหนด Jumper WOL(EN/DS) เปน DS(Disable:ไมใชงาน)

RD15 ใชเปน RST ในการเชื่อมตอกับ Ethernet Module (ET-MINI ENC28J60) ซึ่งใน

ตัวอยางนี้จะไมไดใชงานใหกําหนด Jumper RST(EN/DS) เปน DS(Disable:ไมใชงาน)

• SPI Memory Module สําหรับใชเก็บ Webpage File และ CGI Scrip ตางๆ จะใชโมดูล

25LC256 โดยฟงกชั่นการเชื่อมตอจะใชสัญญาณ SPI2 ของ MCU โดยใชสัญญาณตางๆดังนี้

RG6 ใชเปน SCK ในการเชื่อมตอกับ SPI Memory

RG7 ใชเปน SDI ในการเชื่อมตอกับ SPI Memory

RG8 ใชเปน SDO ในการเชื่อมตอกับ SPI Memory

RD12 ใชเปน CS ในการเชื่อมตอกับ SPI Memory

Page 40: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-5-

• I/O Control Signal สําหรับใชควบคุมการทํางานและรับคา Input มาแสดงผลที่หนา

Webpage โดยจะมีอยูดวยกัน 4 กลุม คือ

8 Bit Digital Output โดยใช LED เปนตัวแสดงสถานะของการทํางาน

4 Bit Digital Input โดยใช Push-Button Switch เปน Input

1 ชอง Analog Input ขนาด 12 Bit โดยใชตัวตานทานปรับคาไดเปน Input

Character Display LCD 16x2 สําหรับแสดงผลขอความตางๆ

dsPIC33FJ128GP708 LED

RB8 LED1

RB9 LED2

RB10 LED3

RB11 LED4

RB12 LED5

RB13 LED6

RB14 LED7

RB15 LED8

dsPIC33FJ128GP708 SW

RD8 SW1

RD9 SW2

RD10 SW3

RD11 SW4

dsPIC33FJ128GP708 VR1 (0-3V3)

RB5 VR1

dsPIC33FJ128GP708 LCD

RD0 D4

RD1 D5

RD2 D6

RD3 D7

RD4 RS

RD5 RW

RD6 EN

Page 41: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-6-

การกําหนดคา Configuration ใหบอรด ET-dsPIC33WEB V1.0

ตามปรกติแลวคา Configuration ตางๆของบอรด จะถูกกําหนดไวแลวในสวนของ Source Code ไมวาจะ

เปนคา IP Address, DHCP Name หรืออ่ืนๆ ซึ่งคา Configuration ตามคา Default ที่กําหนดไวภายใน Code นั้น

ตามตัวอยางที่ทาง อีทีที จัดทําขึ้นจะเปนดังนี้

Device IP Address คือ 192.168.1.200

Gateway IP Address คือ 192.168.1.255

Subnet mask คือ 255.255.255.0

DNS Server IP Address คือ 192.168.1.255

DCHP Protocol = Enable ,DHCP name = dspic33web

แตอยางไรก็ตามผูใชสามารถเขาไปแกไขคา Configuration ตางๆไดเอง โดยไมจําเปนตองกลับไปแกไขที่

Source Code ก็ได ซึ่งการแกไขจะกระทําผานพอรตสื่อสารอนุกรม RS232 ชอง 2 (RS232-CH2) โดยใชโปรแกรม

จําพวก Serial Terminal ตางๆ เชน Procomm หรือ Hyper Terminal ก็ได โดยใหสั่งเชื่อมตอดวยเงื่อนไขดังนี้

Baudrate = 19200BPS, Data Bit = 8 Bit, Parity Bit = None, Stop Bit = 1 Bit, Flow Control = None

ซึ่งหลังจากทําการเปดโปรแกรม Hyper Terminal และกําหนดการเชื่อมตอเรียบรอยแลว พรอมกับตอ

สายสัญญาณจาก RS232-CH2 ของบอรด ET-dsPIC33WEB V1.0 กับ Comport PC เปนที่เรียบรอยแลว ใหทํา

การกดสวิตช SW1 ที่ตอกับ Port-RD8 คางไว พรอมกับกดสวิตช RESET ของบอรดแลวปลอย โดยที่ SW1 ยัง

กดคางอยู โดยโปรแกรมมอนิเตอรจะตรวจสอบวา มีการกด SW1 ในตอนเริ่มตนการทํางานหรือไม ซึ่งถาพบวามี

การกดสวิตชคางไวเปนเวลาอยางนอย 4 วินาที ก็จะเขาสูโหมดการ Setup Configuration ของบอรด แตถาไมพบ

การกดสวิตชใดๆก็จะขามไปทํางานตามปรกติ โดยถามีการกด SW1 คางไวตอนเริ่มตนการทํางาน(หลังรีเซ็ต) จะมี

การสงขอความและเมนูคําสั่งกลับมาทางพอรต RS232-CH2 ซึ่งผูใชสามารถกดคีย เลือกตัวเลข ตามหัวขอตางๆ

เพื่อทําการเปลี่ยนแปลงแกไขคา Configuration ตางๆไดตามตองการ ดังตัวอยาง

BUTTON0 held for more than 4 seconds. EEPROM contents erased. Microchip TCP/IP Config Application (v4.02, Aug 22 2007) 1: Change serial number: 0 2: Change host name: DSPIC33WEB 3: Change static IP address: 192.168.1.200 4: Change static gateway address: 192.168.1.255 5: Change static subnet mask: 255.255.255.0 6: Change static primary DNS server: 192.168.1.255 7: Change static secondary DNS server: 192.168.1.255 8: Disable DHCP & IP Gleaning: DHCP is currently enabled 9: Download MPFS image. 0: Save & Quit. Enter a menu choice:

Page 42: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-7-

192.168.1.200192.168.1.x

ขั้นตอนการทดสอบ Web Server Control

1. ทําการติดต้ัง โมดูล และ เชื่อมตอสัญญาณใหกับอุปกรณ I/O ตางๆดังกลาวขางตนใหเรียบรอย ดังตัวอยาง

รูปแสดงตัวอยางการเชื่อมตอฮารดแวร

2. เชื่อมตอสาย LAN ระหวางบอรด เขากับระบบเครือขาย LAN โดย กรณีที่เชื่อมตอผาน HUB จะตองใช

สาย แบบ Direct และ กรณีที่เชื่อมตอเขากับการด LAN ของเครื่องคอมพิวเตอรจะตองใชสายแบบ Cross

ดังรูปตอไปนี้

รูปแสดงการเชื่อมตอ ET-dsPIC33WEB เขากับการด LAN ของคอมพิวเตอรใชสายแบบ Cross

Page 43: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-8-

ET-dsPIC33 WEB V1.0

HUB

Direct Line

Direct Line

Direct Line

192.168.1.200

192.168.1.x 192.168.1.x

รูปแสดงตัวอยางการตั้งคา IP Address ของคอมพิวเตอร

รูปแสดงการเชื่อมตอ ET-dsPIC33WEB เขากับ HUB ของระบบ LAN ใชสายแบบ Direct

3. ทําการดาวนโหลด Code ซึ่งอยูใน “\DEMO_WEB_TCPIP_V4\TCPIP Demo App\TCPIP Demo App.HEX”

ใหกับบอรด โดยสามารถศึกษาขั้นตอนการ Download Code ไดจากหัวขอ “การ Download Code ใหกับบอรด”

ในสวนของคูมือการใชงาน

4. ทําการเซตคา IP Address ของคอมพิวเตอรให Subnet mask: และ IP address ใหเปนคลาสเดียวกันกับ

บอรด ET-dsPIC33WEB V1.0 ในตัวอยางนี้ IP ของบอรด คือ 192.168.1.200 เราจะตองเซต IP ของเครื่อง

คอมพิวเตอรใหเปน 192.168.1.xxx (xxx = 0 ถึง 255 แตตองไมซ้ํากับ 200 ซึ่งเปน IP ของบอรด) สวน Subnet

mask: ต้ังเปน 255.255.255.0 ดังรูปตอไปนี้

Page 44: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-9-

5. เปดโปรแกรม Command Prompt ซึ่งจะอยูในโฟลเดอร “…\DEMO_WEB_TCPIP_V4\TCPIP Demo App”

เมื่อดับเบิลคลิก ICON ดังกลาวจะปรากฏหนาตาง Command Prompt ดังตอไปนี้

C:\...\ DEMO_WEB_TCPIP_V4\TCPIP Demo App>

6. ลองทดสอบการเชื่อมตอโดยใชวิธีการ Ping ไปที่หมายเลข IP ของบอรดในตัวอยางนี้ คือ 192.168.1.200 โดยให

พิมพคําสั่ง ping 192.168.1.200 แลว Enter ดังรูปตอไปนี้

C:\...\ DEMO_WEB_TCPIP_V4\TCPIP Demo App>ping 192.168.1.200

โดยผลจากการ Ping หากการเชื่อมตอสมบูรณ ก็จะแสดงขอความ ดังตัวอยาง

C:\...\DEMO_WEB_TCPIP_V4\TCPIP Demo App>ping 192.168.1.200 Pinging 192.168.1.200 with 32 bytes of data: Reply from 192.168.1.200: bytes=32 time<1ms TTL=100 Reply from 192.168.1.200: bytes=32 time<1ms TTL=100 Reply from 192.168.1.200: bytes=32 time<1ms TTL=100 Reply from 192.168.1.200: bytes=32 time<1ms TTL=100 Ping statistics for 192.168.1.200: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 0ms, Average = 0ms

Page 45: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-10-

การคอมไพล Webpage

ในเบ้ืองตนผูใชสามารถทําการแกไขเปลี่ยนแปลงรายละเอียดของหนา Webpage ใหมได โดยเขาไปใน

โฟลเดอร “…\Examples\DEMO_WEB_TCPIP_V4\TCPIP Demo App\Webpages” โดยอาจใชโปรแกรม

Notepad หรือ Text Editor ใดๆในการแกไขโคดเหลานี้ก็ได

โดยไฟลที่เปนหนา Webpage จะชื่อ index.html สวนอีก 10 ไฟลที่เหลือเปน CGI Scrip สําหรับใชรับสง

ขอมูลกันระหวางหนา Webpage และ บอรด ET-dsPIC33WEB V1.0 ซึ่งหลังจากทําการแกไขโคดตางๆตาม

ตองการเปนที่เรียบรอยแลว ผูใชจะตองทําการคอมไพลโคดเหลานี้ใหม ใหเปนไฟลแบบ Binary (.bin) เพื่อที่จะได

สั่ง Download ไฟลดังกลาวไปเก็บไวในหนวยความจํา SPI Memory Module (25LC256) ที่อยูในบอรด ซึ่งทาง

Microchips เองไดสรางเครื่องมือสําหรับอํานวยความสะดวกในการพัฒนาโปรแกรมสวนนี้เตรียมไวใหเราไดใชงาน

ดวย คือไฟล “MPFS.EXE” โดยไฟลตัวนี้เปนโปรแกรมที่ทํางานแบบ Command Line ใชสําหรับแปลงไฟลตางๆที่

อยูภายใน Folder ใหเปน Binary File โดยขั้นตอนในการคอมไพล Webpage File ใหทําดังนี้

เปดหนาตาง Command Prompt โดยคลิกเมาสที่ Shortcut ของ Command Prompt ที่เตรียมไวใหแลวใน

Folder “…\ET-dSPIC33WEB\Examples\DEMO_WEB_TCPIP_V4\TCPIP Demo App”

พิมพคําสั่ง MPFS Input Output

o Input หมายถึง ชื่อของ Folder ที่ใชเก็บไฟลทั้งหมดที่ตองการแปลงเปน Binary File ซึ่งในกรณีนี้

คือ Folder ชื่อ “Webpages”

o Output หมายถึง ชื่อ ไฟล Output ที่ไดจากการแปลง ซึ่งใหกําหนดนามสกุลเปน bin โดยในที่นี้จะ

กําหนดชื่อของ Output File เปน “dspic33web.bin”

Page 46: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-11-

C:\...\TCPIP Demo App>mpfs Webpages dspic33web.bin Adding 'Webpages\BUILDDATE.CGI'... MPFS Size so far 247... Adding 'Webpages\BUTTON0.CGI'... MPFS Size so far 254... Adding 'Webpages\BUTTON1.CGI'... MPFS Size so far 261... Adding 'Webpages\BUTTON2.CGI'... MPFS Size so far 268... Adding 'Webpages\BUTTON3.CGI'... MPFS Size so far 275... Adding 'Webpages\INDEX.HTML'... MPFS Size so far 7056... Adding 'Webpages\LED0.CGI'... MPFS Size so far 7063... Adding 'Webpages\LED1.CGI'... MPFS Size so far 7070... Adding 'Webpages\POT0.CGI'... MPFS Size so far 7077... Adding 'Webpages\STATUS.CGI'... MPFS Size so far 7387... Adding 'Webpages\VERSION.CGI'... MPFS Size so far 7394...

รูปแสดง ผลการคอมไพล Webpage File

โดยไฟล “dspic33web.bin” ที่ถูกสรางจะอยูในโฟลเดอรเดียวกันกับ โปรแกรม MPFS ซึ่งในกรณีนี้จะอยูที่

“…\ET-dSPIC33WEB\Examples\DEMO_WEB_TCPIP_V4\TCPIP Demo App” ดังตอไปนี้

Page 47: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-12-

การดาวนโหลด Webpage File ใหบอรด ET-dsPIC33WEB V1.0

ในตัวอยางการทดลอง Web Server Control นี้ ไฟลตางๆที่เปนของ Webpage นั้น จะตองนําไปเก็บไวใน

หนวยความจําแบบภายนอก ซึ่งก็คือ EEPROM ที่เปน SPI Memory Module เบอร 25LC256 ซึ่งไดทําการติดต้ังไว

ในบอรดเปนที่เรียบรอยแลว โดยใน Code Program ที่สรางขึ้นตามตัวอยางนี้ จะทําใหเราสามารถใช Protocol

ยอยของ TCP/IP ในการสงไฟลไปยังบอรดผานทางสายสัญญาณ Ethernet LAN ไดทันที โดยให FTP Protocol

โดยวิธีการนี้เราสามารถเรียกใช คําสั่ง FTP ใน Command Line เพื่อทําการ Login และสงไฟลไปใหกับบอรดได

โดยตรง โดยมีลําดับขั้นตอนดังนี้

เปดหนาตาง Command Prompt โดยคลิกเมาสที่ Shortcut ของ Command Prompt ที่เตรียมไวใหแลวใน

Folder “…\ET-dSPIC33WEB\Examples\DEMO_WEB_TCPIP_V4\TCPIP Demo App”

ใชคําสั่ง FTP เพื่อเชื่อมตอกับ IP Address ของบอรด ET-dsPIC33WEB ซึ่งในที่นี้ ก็คือ 192.168.1.200

เมื่อผลการ FTP ไดรับการเชื่อมตอ Connected เปนที่เรียบรอยแลวใหทําการ Login โดยใชชื่อ “ftp” และ

ใชรหัสผาน Password เปน “ett” (จะไมมีการ Echo ตัวอักษรของ Password ใหเห็น)

เมื่อสามารถทําการ Login ไดสําเร็จใหใชคําสั่ง PUT ในการสงไฟลชื่อ “dspic33web.bin” โดยพิมพคําสั่ง

เปน put dspic33web.bin แลว Enter

เพื่อการสงไฟลเสร็จเรียบรอยแลว ใหทําการพิมพคําสั่ง quit เพื่อออกจากการเชื่อมตอกับ FTP Protocol ซึ่ง

หลังจากนี้ก็สามารถใชงาน Web Server Control ของบอรด ET-dsPIC33WEB V1.0 ไดแลว

เปดโปรแกรม Internet Explorer แลว พิมพหมายเลข IP Address ของบอรด ซึ่งในที่นี้ คือ 192.168.1.200

หรือชื่อ DHCP ของบอรด ซึ่งก็คือ dspic33web ลงในชอง Address แลว Enter เพื่อทดสอบ \…\Examples\DEMO_WEB_TCPIP_V4\TCPIP Demo App>ftp 192.168.1.200 Connected to 192.168.1.200. 220 Ready User (192.168.1.200:(none)): ftp 331 Password required Password:ett 230 Logged in ftp> put dspic33web.bin 200 Ok 150 Transferring data... ###################################### 226 Transfer Complete ftp: 7595 bytes sent in 0.00Seconds 7595000.00Kbytes/sec. ftp> quit 221 Bye

รูปแสดง ตัวอยางการใชคําส่ัง FTP เพ่ือ Download ไฟล dspic33web.bin ใหบอรด

หมายเหตุ รหัส Password ที่ปอนใหกับคําสั่ง จะไมมีการ Echo กลับมาใหเห็นดวย ซึ่งผูใชตองพิมพให

ถูกตองตามลําดับทั้ง 3 หลัก (ett) ไมเชนนั้นจะไมสามารถ Login ได ซึ่งถาพิมพผิด และไมสามารถทําการ Login

ไดใหใชคําสั่ง quit กลับไปกอนแลวเริ่มตนกระบวนการใหม

Page 48: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-13-

การทดสอบการทํางานของ Web Server Control

หลังจากทําการ Download Code ใหกับบอรด และ Download Webpage Files ตางๆใหกับบอรดเปนที่

เรียบรอยแลว ผูใชสามารถทําการทดสอบการทํางานของโปรแกรมตัวอยางของ Web Server Control ไดทันที โดย

ใหเปดโปรแกรม Internet Explorer แลวพิมพหมายเลข IP ของบอรดลงไปในชอง Address ในตัวอยางนี้คือ

192.168.1.200 ซึ่งจะปรากฏหนาตาง Webpage ดังแสดงในรูป

รูปแสดง ลักษณะ Web Server Control ของ ET-dsPIC33WEB V1.0

โดยจากตัวอยางโปรแกรมนี้ ผูใชสามารถทําการทดสอบการสงคําสั่งเพื่อควบคุมการทํางานของ I/O ภายในบอรด

ET-dsPIC33WEB V1.0 จากหนา Webpage ไดโดยตรง ดังนี้

• Toggle LEDs สามารถทําการทดสอบไดโดยคลิกเมาสที่ ปุม LED2 - LED8 ซึ่งผลการคลิกเมาส

แตละครั้งจะสงผลให LED กลับสถานะเปนตรงกันขาม คือ ดับ และ ติด สลับกันไป

• Write to LCD: สามารถพิมพขอความตามตองการแตไมเกนิ 32 อักขระ แลวคลิกเมาสที่ปุม

“Write” เพื่อสงขอความดังกลาวไปแสดงผลที่หนาจอ LCD บนบอรดได

Page 49: ET-DsPIC33WEB V1 - Etteam · o ระบบการสื่อสารแบบขนาน DCI(Data Converter Interface) จํานวน 1 ช อง คุณสมบัติโดยทั่วไปของบอร

ตัวอยางการพัฒนาโปรแกรม Web Server Control ของ ET-dsPIC33WEB V1.0

-14-

• Status จะแสดงผล อยู 3 สวน คือ

Analog[AN5:RB5]: จะแสดงผลจากการแปลงสัญญาณ Analog to Digital ที่ขา RB5

ซึ่งตออยูกับ VR 10K บนบอรด เมื่อทําการปรับคาของ VR1 ก็จะทําใหคา Status ของ

A/D เปลี่ยนแปลงตามคาการปรับ โดยมีคาระหวาง 0..4095

Switch[RD8..11]: จะแสดงคาสถานะของการกดสวิตช ของ SW1-SW4 ที่อยูบนบอรด

โดยเมื่อกดจะไดคาเปน “0” แตเมื่อปลอยจะไดคาเปน “1”

LED[RB8..15]: จะแสดงคาสถานะของพอรต RB8..15 ที่ตอกับ LED บนบอรดไว โดย

คาจะเปลี่ยนแปลงไปตามการคลิกเมาสที่ปุม LED2..LED8 โดยถามีคาเปน “1” จะทําให

LED ดับ แตถาเปน “0” จะทําให LED ติดสวาง สวน LED1 จะไมสามารถสั่งควบคุมการ

ทํางานจากปุมได เนื่องจาก LED1 จะสงวนไวใชแสดงการทํางานของ TCP/IP โดยจะ

กระพริบติดและดับสลับกันตลอดเวลา

การพัฒนาและปรับปรุง Code Program โดยรวมแลว Code ตางๆทั้งหมดที่อยูใน Project นี้จะเปนสวนของ Protocol TCP/IP มาตรฐานทั้งหมด ที่

ทาง Microchips ไดพัฒนาขึ้น ทําใหเราสามารถนํามาเรียกใชงานฟงกชั่นตางๆที่อยูในไฟลตางๆเหลานั้นไดทันท ี

โดยไมจําเปนตองไปแกไข Code ตางๆที่เปนสวนของ Protocol TCP/IP ใหเสียเวลา ซึ่ง Code ในสวนที่เรา

จําเปนตองแกไขนั้น จะเปนในสวนของ Application Layer ของ TCP/IP Stack เทานั้น ซึ่งใน Project นี้ไฟลตางๆที่

เปนของ Application นั้นจะถูกแยกเก็บไวใน Folder ชื่อ “..\DEMO_WEB_TCPIP_V4\TCPIP Demo App”

HardwareProfile.h เปนสวนของการกําหนดรายละเอียดของสัญญาณ I/O ตางๆ ที่จะใชในการเชื่อมตอกับ

อุปกรณภายนอก โดยตองกําหนดใหสอดคลองกับระบบฮารดแวรของบอรด ET-dsPIC33WEB V1.0 อัน

ไดแก Ethernet Driver (ET-MINI ENC28J60) ,SPI Memory Module(25LC256),LCD,LED,SW,ADC

TCPIPConfig.h เปนสวนของการกําหนดคา Default ตางๆเกี่ยวกับ TCP/IP Stack อันไดแก DHCP Name,

IP Address ของบอรด,MAC Address ของบอรด

MainDemo.c เปนสวนของ Main Program ซึ่งจะมีการเรียกใช TCP/IP Stack และนําขอมูลตางๆที่ไดการ

Stack มาประมวลผล และตัดสินใจ อันไดแกการแปลคําสั่งจาก CGI Scrip เพื่อนํารหัสคําสั่งไปสั่งงาน

LED Output และ LCD Display รวมทั้งการอานคาสถานะของ I/O ตางๆเพื่อสงออกไป Refresh Status

ของหนา Webpage เปนตน

Wabpage File ตางๆ เชน HTML และ CGI Scrip ใน Folder ชื่อ “Webpages” ซึ่งเปนสวนที่ผูใชสามารถทํา

การดัดแปลงแกไขไดเองตามตองการ แตถามีการแกไขคาใน CGI Scrip ใหมีคาตางจากที่กําหนดไวแลว

ผูใชจําเปนตองเขาไปแกไข Code ที่อยูในไฟล “MainDemo.c” ใหสัมพันธและสอดคลองกันดวย