1.
½Ã¸®¾ó Åë½ÅÀ̶õ ¹«¾ùÀԴϱî?
Á÷·Ä Åë½ÅÀº Çϳª ¶Ç´Â µÎ °³ÀÇ Àü¼Û ¶óÀÎÀ» »ç¿ëÇÏ¿© µ¥ÀÌÅ͸¦ ¼Û¼ö½ÅÇÏ´Â Åë½Å ¹æ¹ýÀ¸·Î, ÇÑ ¹ø¿¡ ÇÑ ºñÆ® ¾¿ µ¥ÀÌÅ͸¦ Áö¼ÓÀûÀ¸·Î
ÁÖ°í ¹Þ½À´Ï´Ù.
ÀûÀº ½ÅÈ£¼±À¸·Î ¿¬°áÀÌ °¡´ÉÇϱ⠶§¹®¿¡ ¼±Àç¿Í Áß°è ÀåÄ¡ÀÇ ºñ¿ëÀÌ ¾ïÁ¦µÇ´Â µîÀÇ ÀåÁ¡ÀÌ ÀÖ½À´Ï´Ù.
2. ½Ã¸®¾ó Åë½Å
±Ô°Ý
RS-232C / RS-422A / RS-485´Â EIA
(ÀüÀÚ »ê¾÷ Çùȸ) Åë½Å Ç¥ÁØÀÔ´Ï´Ù.
ÀÌ·¯ÇÑ Åë½Å Ç¥ÁØ Áß RS-232C´Â ´Ù¾çÇÑ ÀÀ¿ë ºÐ¾ß¿¡¼ ³Î¸® äÅÃµÇ¾î ¿ÔÀ¸¸ç ÄÄÇ»ÅÍÀÇ Ç¥ÁØ ÀåºñÀ̱⵵ÇÕ´Ï´Ù.
¸ðµ© ¹× ¸¶¿ì½º ¿¬°á¿¡ »ç¿ëµË´Ï´Ù. ¼¾¼ ¹× ¾×Ãß¿¡ÀÌÅÍ¿¡´Â ÀÌ·¯ÇÑ ÀÎÅÍÆäÀ̽º°¡ Æ÷ÇԵǾî ÀÖÀ¸¸ç ´ëºÎºÐÀÌ Á÷·Ä Åë½ÅÀ» ÅëÇØ Á¦¾î
ÇÒ ¼ö ÀÖ½À´Ï´Ù.
RS-232C
ÀÌ Á÷·Ä Åë½Å Ç¥ÁØÀº ³Î¸® »ç¿ëµÇ¸ç Á¾Á¾ Ç¥ÁØÀ¸·Î ÄÄÇ»ÅÍ¿¡ ÀåÂøµË´Ï´Ù."EIA-232"¶ó°íµµÇÕ´Ï´Ù.
½ÅÈ£¼±°ú Ä¿³ØÅÍÀÇ ¸ñÀû°ú ŸÀ̹ÖÀÌ Á¤ÀǵǾú½À´Ï´Ù (D-sub 25 ÇÉ ¶Ç´Â D- sub 9 ÇÉ).
ÇöÀç Ç¥ÁØÀº ½ÅÈ£¼±À» Ãß°¡ÇÏ¿© °³Á¤µÇ¾úÀ¸¸ç Á¤½ÄÀ¸·Î "ANSI / EIA-232-E"¶ó°íÇÕ´Ï´Ù. ±×·¯³ª Áö±ÝÀº
ÀϹÝÀûÀ¸·Î "RS-232C"¶ó°íµµÇÕ´Ï´Ù.
RS-422A
ÀÌ Ç¥ÁØÀº ªÀº Àü¼Û °Å¸® ¹× ´À¸° Àü¼Û ¼Óµµ¿Í °°Àº RS-232C ¹®Á¦¸¦ ¼öÁ¤ÇÕ´Ï´Ù. "EIA-422A"¶ó°íµµÇÕ´Ï´Ù.
½ÅÈ£¼±ÀÇ ¸ñÀû°ú ŸÀ̹ÖÀº Á¤ÀǵǾúÁö¸¸ Ä¿³ØÅÍ´Â ¾Æ´Õ´Ï´Ù. ¸¹Àº ȣȯ Á¦Ç° ÁÖ·Î D-sub 25 ÇÉ ¹× D-sub 9 ÇÉ Ä¿³ØÅ͸¦
»ç¿ëÇÕ´Ï´Ù.
RS-485
ÀÌ Ç¥ÁØÀº RS-422A¿¡¼ ¸î °¡Áö ¿¬°á ÀåÄ¡ÀÇ ¹®Á¦Á¡À» ¼öÁ¤ÇÕ´Ï´Ù. "EIA-485"¶ó°íµµÇÕ´Ï´Ù.
RS-485´Â RS-422A¿Í ȣȯ °¡´ÉÇÑ Ç¥ÁØÀÔ´Ï´Ù.
½ÅÈ£¼±ÀÇ ¸ñÀû°ú ŸÀ̹ÖÀÌ Á¤ÀǵÇÁö¸¸ Ä¿³ØÅÍ ´ëºÎºÐÀÇ È£È¯ Á¦Ç°Àº ÁÖ·Î D-sub 25 ÇÉ ¹× D-sub 9 ÇÉ Ä¿³ØÅ͸¦ äÅÃÇÕ´Ï´Ù.
¸Å°³º¯¼ö
|
RS-232C |
RS-422A |
RS-485 |
Àü¼Û ¸ðµå
|
´Ü¸é |
¸ÖƼÆ÷ÀÎÆ®, ½ÉÇ÷º½º
|
¸ÖƼÆ÷ÀÎÆ®, ¸ÖƼÇ÷º½º |
ÃÖ´ë
Á¢¼Ó ´ë¼ö |
1 µå¶óÀ̹ö, 1¼ö½Å±â
|
1°³ÀÇ µå¶óÀ̹ö, 10°³ÀÇ
¼ö½Å±â |
32 µå¶óÀ̹ö, 32 ¼ö½Å±â |
ÃÖ´ë
Àü¼Û ¼Óµµ |
20kbps |
10Mbps |
10Mbps |
ÃÖ´ë
ÄÉÀÌºí ±æÀÌ |
15m |
1,200m |
1,200m |
µ¿ÀÛ
¸ðµå |
´ÜÀÏ Á¾´Ü Çü (ºÒ±ÕÇü) |
Â÷µ¿ (±ÕÇü À¯Çü) |
Â÷µ¿ (±ÕÇü À¯Çü) |
¿¬°á
À̹ÌÁö |
|
|
|
Ư¡ |
´Ü°Å¸®, ÀüÀÌÁß, 1:1
¿¬°á |
Àå°Å¸®, ÀüÀÌÁß, ¹ÝÀÌÁß,
1:N ¿¬°á |
Àå°Å¸®, ÀüÀÌÁß, ¹ÝÀÌÁß,
N:N¿¬°á |
3.
½ÅÈ£ ¹èÄ¡ ¹× Ä¿³ØÅÍ
RS-232C¿¡¼´Â »ç¿ëÇÒ Ä¿³ØÅÍ¿Í ½ÅÈ£ ÇÒ´çÀÌ Á¤Àǵǰí
Ç¥ÁØȵǾú½À´Ï´Ù.
±×¸²Àº D-sub 9 ÇÉ ½ÅÈ£ ÁöÁ¤°ú ½ÅÈ£ ¶óÀÎÀ» ³ªÅ¸³À´Ï´Ù.
1. DCD : Data Carrier Detect, ¹Ý¼ÛÆÄ °¨Áö
2. RXD : Receive Data, ¼ö½Å µ¥ÀÌÅÍ
3. TXD : Transmit Data, Àü¼Û µ¥ÀÌÅÍ
4. DTR : Data Terminal Ready, µ¥ÀÌÅÍ Å͹̳ΠÁغñ
5. SG : Signal Ground, ½ÅÈ£ Á¢Áö ¶Ç´Â °øÅë ¸®ÅÏ
6. DSR : Data Set Ready, µ¥ÀÌÅÍ ¼¼Æ® Áغñ
7. RTS : Request To Send, ¼Û½Å ¿ä±¸
8. CTS : Clear to Send, ¼Û½Å Çã°¡
9. RI : Ring Indicator, Âø½Å Ç¥½Ã
CASE FG : Frame Ground, Á¢Áö
4. ¿¬°á ¹æ¹ý
RS-232C¿¡¼´Â Ä¿³ØÅÍ¿Í ½ÅÈ£ ÇÒ´çÀÌ Ç¥ÁØÈµÇ¾î ¸¹Àº Ç¥ÁØ È£È¯ ÄÉÀ̺íÀÌ »ó¾÷ÀûÀ¸·Î Á¦°øµË´Ï´Ù.
±×·¯³ª Àåºñ´Â ´ÙÀ½ À¯ÇüÀ¸·Î Á¦°øµÇ¸ç ¿¬°áµÇ´Â Àåºñ¿¡ µû¶ó Á÷¼± ÄÉÀÌºí ¶Ç´Â Å©·Î½º ¿À¹ö ÄÉÀ̺í ÇÊ¿äÇÕ´Ï´Ù.
DCE
µ¥ÀÌÅÍ Åë½ÅÀåºñ. ÀÌ ¿ë¾î´Â ¸ðµ©, ÇÁ¸°ÅÍ ¹× Ç÷ÎÅÍ¿Í °°ÀÌ ¼öµ¿ÀûÀ¸·Î ÀÛµ¿ÇÏ´Â Àåºñ¸¦ ³ªÅ¸³À´Ï´Ù.
DTE
µ¥ÀÌÅÍ Å͹̳ΠÀåºñ. ÀÌ ¿ë¾î´Â ÄÄÇ»ÅÍ¿Í °°ÀÌ ´Éµ¿ÀûÀ¸·Î ÀÛµ¿ÇÏ´Â Àåºñ¸¦ ³ªÅ¸³À´Ï´Ù.
Å©·Î½º
¿À¹ö ÄÉÀÌºí ¿¬°á(1) |
Å©·Î½º ¿À¹ö ÄÉÀ̺í
¿¬°á(2) |
Á÷¼± ÄÉÀÌºí ¿¬°á |
|
|
|
5.
¹ÝÀÌÁß Åë½Å ¹× ÀüÀÌÁß Åë½Å
ÀüÀÌÁß Åë½Å : ¼Û¼ö½Å ¸ðµÎ ÀÚü Àü¼Û ȸ¼±ÀÌ ÀÖ¾î µ¿½Ã¿¡ µ¥ÀÌÅ͸¦ ¼Û¼ö½Å ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÔ´Ï´Ù.
¹ÝÀÌÁß Åë½Å : ÇϳªÀÇ Àü¼Û ȸ¼±À» »ç¿ëÇÏ¿© ¼Û¼ö½ÅÀ» ÀüȯÇÏ¸é¼ Åë½ÅÇÏ´Â ¹æ½ÄÀÔ´Ï´Ù. À̶§¹®¿¡ µ¿½Ã Åë½ÅÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù.
6.
ºñµ¿±â Åë½Å ¹× µ¿±â½Ä Åë½Å
Á÷·Ä Åë½Å¿¡¼ µ¥ÀÌÅÍ´Â ÇϳªÀÇ ½ÅÈ£¼±À» »ç¿ëÇÏ¿© Çѹø¿¡ ÇѺñÆ® ¾¿ Àü¼ÛµÇ¹Ç·Î, ¼ö½ÅÃø¿¡¼ µ¥ÀÌÅ͸¦ Á¤È®ÇÏ°Ô ¼ö½ÅÇÏ·Á¸é ¼Û½ÅÃø¿¡¼
°¢ ºñÆ®¸¦ Àü¼ÛÇÒ ¼Óµµ¸¦ ¾Ë¾Æ¾ß ÇÕ´Ï´Ù.
RS-232C¿¡¼ µ¿±â½Ä Åë½Å ¹× ºñµ¿±â Åë½Å Ç¥ÁØÀÌ Á¤ÀÇ µÇ¾ú½À´Ï´Ù.
ÃøÁ¤ ¶Ç´Â Á¦¾î¿¡ »ç¿ëµÇ´Â ÁÖº¯ ÀåÄ¡ÀÇ °æ¿ì, ÀϹÝÀûÀ¸·Î ¾Õ¼ ¾ð±ÞÇÑ ÀüÀÌÁß Åë½Å°ú ºñµ¿±â Åë½ÅÀÌ ÀϹÝÀûÀ¸·Î »ç¿ëµË´Ï´Ù.
µ¿±â½Ä Åë½Å
ÀÌ ¹æ¹ýÀº ´Ù¸¥ Àåºñ¿¡¼ »ý¼ºµÈ Ŭ·° ¶Ç´Â ÀÚü »ý¼±µÈ Ŭ·°¿¡ µ¿±âµÈ µ¥ÀÌÅ͸¦ ¼Û¼ö½Å ÇÕ´Ï´Ù.
¼Û½ÅÀº ¼Û½ÅÃø¿¡¼ °¢ ºñÆ®¿¡ Ãß°¡µÈ µ¿±â ½ÅÈ£¸¦ ±â¹ÝÀ¸·Î ¼öÇàµË´Ï´Ù.
ÀÌ´Â µ¥ÀÌÅÍ Àü¼Û È¿À²ÀÌ ÁÁÁö¸¸ Àü¼Û ÀýÂ÷°¡ º¹ÀâÇØÁø´Ù´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù.
ºñµ¿±â Åë½Å
ÀÌ ¹æ¹ýÀº °¢ ÃøÀÇ ÀÚü »ý¼º Ŭ·Ï¿¡ µ¿±âÈ µÈ µ¥ÀÌÅ͸¦ ¼Û¼ö½ÅÇÕ´Ï´Ù.
Àü¼Û ¼Óµµ ¼³Á¤ÀÌ ÀÏÄ¡ÇÏÁö ¾ÊÀ¸¸é Á¤»óÀûÀÎ Åë½ÅÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù. Áï, ¼Û½Å Ãø°ú ¼ö½Å Ãø ¸ðµÎ Ãʱ⿡ Àü¼ÛÇÒ ºñÆ® ¼ö¿¡ ´ëÇØ
°¢ ÃÊ,
±×¸®°í ³ª¼ °¢°¢Àº ±× Àü¼Û ¼Óµµ¿Í ÀÏÄ¡ÇÏ´Â ÁÖÆļöÀÇ µ¿±âÈ ½ÅÈ£¸¦ »ý¼ºÇÑ´Ù. ºñµ¿±â Åë½ÅÀÇ °æ¿ì ÇÑ ¹ø¿¡ ÇÑ ºñÆ® ¾¿ µ¥ÀÌÅ͸¦
¼Û¼ö½ÅÇϹǷÎ
°¢ ÃøÀÇ Åë½Å Á¶°ÇÀÌ Ãʱ⿡ ÀÏÄ¡ÇÏÁö ¾ÊÀ¸¸é Á¤»óÀûÀÎ Åë½ÅÀÌ ºÒ°¡´ÉÇÕ´Ï´Ù.
ÄÄÇ»ÅÍ (ÄÁÆ®·Ñ·¯) Ãø ¼³Á¤À» ÁÖº¯ ±â±â Ãø¿¡ ÀÏÄ¡ ½ÃÅ°¸é ¼³Á¤Àº ÀϹÝÀûÀÎ ¼³Á¤ ¹æ¹ýÀÔ´Ï´Ù.
Àü¼Û ¼Óµµ
ÃÊ´ç º¸³¾ ºñÆ® ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
´ÜÀ§´Â bps (ÃÊ´ç ºñÆ® ¼ö)À̸ç 300, 600, 1200, 2400, 4800, 9600, 19200 µî¿¡¼ ¼±Åõ˴ϴÙ.
¼³Á¤°ú ŸÀ̹ÖÀÌ ÀÏÄ¡ÇÏ¸é µ¥ÀÌÅÍ ±¸ºÐ ±âÈ£°¡ ÀÏÄ¡ÇÏ°í µ¥ÀÌÅ͸¦ Á¤»óÀûÀ¸·Î ¼Û¼ö½Å ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ ¶§¹®¿¡ ¿Ã¹Ù¸¥ ŸÀ̹ÖÀ» ¾ò±â À§ÇØ °¢ µ¥ÀÌÅÍ Ç׸ñ (1 ¹ÙÀÌÆ®)¿¡ ½ÃÀÛ ºñÆ®°¡ Ãß°¡µË´Ï´Ù.
Á¤Áö ºñÆ® ±æÀÌ
ÀÌ °ªÀº µ¥ÀÌÅÍÀÇ ³¡À» ³ªÅ¸³»´Â ºñÆ®ÀÇ ±æÀ̸¦ ¼³Á¤ÇÕ´Ï´Ù.
ÀÌ°ÍÀº ÀϹÝÀûÀ¸·Î 1 ºñÆ®, 1.5 ºñÆ® ¶Ç´Â 2 ºñÆ®·Î ¼±Åõ˴ϴÙ. ½ÃÀÛ ºñÆ® ±æÀÌ´Â 1 ºñÆ®·Î °íÁ¤µÇ¾î ÀÖÀ¸¹Ç·ÎÀÌ ¼³Á¤ÀÌ
ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù.
µ¥ÀÌÅÍ ºñÆ® ±æÀÌ
ÀÌ°ÍÀº °¢ µ¥ÀÌÅÍ Ç׸ñÀÌ ±¸¼ºµÇ´Â ºñÆ® ¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
»ç¿ëµÇ´Â ÀåÄ¡¿¡ µû¶ó ´Ù¸£Áö¸¸ ÀϹÝÀûÀ¸·Î ¿µ¼ýÀÚ ¹× ±âÈ£¿¡´Â 7 ºñÆ®¸¦ ÁöÁ¤ÇÏ°í 1 ¹ÙÀÌÆ® ÀÌÁø µ¥ÀÌÅÍ¿¡´Â 8 ºñÆ®¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
Æи®Æ¼ üũ ¼³Á¤
µ¥ÀÌÅÍ¿¡¼ ¿À·ù¸¦ ã´Â ±â´ÉÀ̸ç "¦¼ö Æи®Æ¼ °Ë»ç (EVEN)", "Ȧ¼ö Æи®Æ¼ °Ë»ç (ODD)"¶Ç´Â
"Æи®Æ¼ ¾øÀ½ °Ë»ç (¾øÀ½)"Áß¿¡¼ ¼±Åõ˴ϴÙ.
Æи®Æ¼ °Ë»ç ¼¼ºÎ Á¤º¸
¼Û½Å Ãø¿¡¼´Â EVEN¿¡ ´ëÇؼµµ "1"µ¥ÀÌÅÍ ºñÆ®ÀÇ ¼ö¸¦, ODD¿¡ ´ëÇؼ´Â Ȧ¼ö°¡µÇµµ·Ï µ¥ÀÌÅÍ¿¡ "1"¶Ç´Â
"0"ÀÇ Æи®Æ¼ ºñÆ®¸¦ Ãß°¡ÇÕ´Ï´Ù.
¼ö½Å Ãø¿¡¼´Â " 1 "µ¥ÀÌÅÍ ºñÆ®°¡ Ä«¿îÆ®µÇ°í EVEN ÀÏ ¶§µµ ¼ýÀÚ°¡ ODD ÀÎ °æ¿ì µ¥ÀÌÅÍ°¡ ¿Ã¹Ù¸¥ °ÍÀ¸·Î
ÆǴܵ˴ϴÙ.
¿¹ : ¦¼ö Æи®Æ¼ °Ë»ç
ÇÚµå ¼ÎÀÌÅ© (È帧 Á¦¾î)
ÀåÄ¡°£¿¡ µ¥ÀÌÅ͸¦ ¼Û¼ö½Å ÇÒ ¶§ ¼ö½Å ÃøÀÌ ¼ö½Å »óÅ°¡ ¾Æ´Ñ °æ¿ì µ¥ÀÌÅ͸¦ Àü¼ÛÇÒ ¶§ µ¥ÀÌÅÍ°¡ ¼Õ½Ç µÉ ¼ö ÀÖÀ¸¹Ç·Î »ó´ëÃøÀÇ
»óŸ¦ È®ÀÎÇÏ´Â
°ÍÀÌ Åë½Å¿¡¼ Áß¿äÇÕ´Ï´Ù.
ÇÚµå ¼ÎÀÌÅ© (È帧 Á¦¾î)´Â Åë½ÅÀÇ ½Å·Ú¼ºÀ» À¯ÁöÇÕ´Ï´Ù. ¼Û½Å Ãø¿¡¼ "µ¥ÀÌÅ͸¦ ¼Û½Å Áß"À̶ó°íÇÏ´Â ¼ö½Å ÃøÀ¸·Î
½ÅÈ£°¡ º¸³»Áö°í ¼ö½Å Ãø¿¡¼
±× ½ÅÈ£¸¦ ¼ö½ÅÇÏ¿© ½ÅÈ£¼±¿¡¼ µ¥ÀÌÅ͸¦ ÀнÀ´Ï´Ù. ±×·¯¸é ¼Û½Å Ãø¿¡ ÀÀ´äÀ» º¸³À´Ï´Ù. "µ¥ÀÌÅÍ°¡ ¼ö½ÅµÇ¾ú½À´Ï´Ù."Áï,
°¢ Ãø¸é¿¡¼ µ¥ÀÌÅÍ
¼Û¼ö½ÅÀ» È®ÀÎÇÏ¸é¼ µ¥ÀÌÅ͸¦ Àü¼ÛÇÒ ¼ö ÀÖ½À´Ï´Ù.
¼ÒÇÁÆ®¿þ¾î ÇÚµå ¼ÎÀÌÅ© (XON / XOFF È帧 Á¦¾î)
ÀÌ´Â "XOFF ÄÚµå"°¡ ¼ö½Å Ãø¿¡¼ ¼ö½Å ¹öÆÛÀÇ ³²¾ÆÀÖ´Â ¿©À¯ °ø°£ÀÌ Àû¾îÁö¸é ¼Û½ÅÀÌ ÀϽÃÀûÀ¸·Î Áߴܵǵµ·Ï
¿äûÇϱâ À§ÇØ ¼Û½Å ÃøÀ¸·Î Àü¼ÛµÇ´Â
Á¦¾î ¹æ¹ýÀÔ´Ï´Ù. ÃæºÐÇÑ ¿©À¯ °ø°£ÀÌÀÖ´Â °æ¿ì,
"XON ÄÚµå"´Â ¼Û½Å ÃøÀÌ ¼Û½ÅÀ» ´Ù½Ã ½ÃÀÛÇϵµ·Ï ¿äûÇϱâ À§ÇØ Àü¼ÛµË´Ï´Ù.
Çϵå¿þ¾î ¾Ç¼ö
Á¦¾î È帧 (RTS ¶Ç´Â DTR)Àº ¼ÒÇÁÆ®¿þ¾î È帧 Á¦¾î¿¡¼ XON / XOFF Äڵ带 Àü¼ÛÇÏ´Â ´ë½Å ÀÚµ¿À¸·Î ÄÑÁö°Å³ª ²¨Áý´Ï´Ù.
RTS ½ÅÈ£¿Í CTS ½ÅÈ£ ¶Ç´Â DTR ½ÅÈ£¿Í DSR ½ÅÈ£´Â ¼·Î ¿¬°áµÇ¾î¾ßÇÕ´Ï´Ù.
7.
ÇÁ·Î±×·¡¹Ö (Visual Basic)
7-1. Visual Basic¿¡¼ Á÷·Ä Æ÷Æ® Á¦¾î
Visual Basic¿¡¼ Á÷·Ä Æ÷Æ®¸¦ Á¦¾îÇÏ·Á¸é .NET Framework SerialPort Ŭ·¡½º¸¦ »ç¿ëÇÏ´Â ¸Þ¼µå¿Í Win32
API¸¦ »ç¿ëÇÏ´Â ¸Þ¼µå°¡ ÀÖ½À´Ï´Ù.
¿©±â¿¡¼´Â »ó´ëÀûÀ¸·Î °£´ÜÇÑ SerialPort Ŭ·¡½º¸¦
»ç¿ëÇÏ¿© µ¥ÀÌÅ͸¦ º¸³»°í¹Þ´Â ÇÁ·Î±×·¡¹Ö ¿¹Á¦¸¦ ¼Ò°³ÇÕ´Ï´Ù.
7-2. .NET Framework SerialPort (SerialPort Ŭ·¡½º)
COM Æ÷Æ® Ŭ·¡½º (SerialPort ±¸¼º ¿ä¼Ò)°¡ .NET Framework¿¡ Ver. 2.0. Visual Basic
2005 À̻󿡼´Â COM Æ÷Æ®¸¦ ºñ±³Àû °£´ÜÇÏ°Ô Á¦¾î ÇÒ ¼öÀÖ´Â
.NET Framework SerialPort ±¸¼º ¿ä¼Ò¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Visual Basic 6°ú °°Àº ÀÌÀü ¹öÀü¿¡¼ ÀÚÁÖ »ç¿ëµÇ¾ú´ø MSComm ÄÁÆ®·ÑÀ» ´õ ÀÌ»ó »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
.NET Framework SerialPort ±â´É
. Á÷·Ä Æ÷Æ®¿¡ ¿¬°áÇϱâÀ§ÇÑ ¼³Á¤
. ¸í·É Àü¼Û (RTS ¹× CTS¿Í °°Àº ´Ù¾çÇÑ Á÷·Ä ÀÎÅÍÆäÀ̽º Á¦¾î ½ÅÈ£ ¹× »óÅ ÀÔ·Â Á¦¾î)
. µ¥ÀÌÅÍ Àü¼Û
. Á÷·Ä ¿¬°á ¹× ¿À·ù ¸ð´ÏÅ͸µ ¹× ó¸® Áß ´Ù¾çÇÑ À̺¥Æ® (Á¦¾î ½ÅÈ£¿¡ »óÅ º¯È°¡ÀÖÀ» ¶§ ¹× Åë½Å Áß ¿À·ù°¡ ¹ß»ýÇÒ ¶§ À̺¥Æ®°¡
»ý¼º µÉ ¼ö ÀÖÀ½)
. Á÷·Ä Æ÷Æ®¿¡ ¿¬°áÇϱâÀ§ÇÑ ¼³Á¤
7-3. .NET Framework SerialPort ÇÁ·Î±×·¡¹Ö Æ÷ÀÎÆ®
- NewLine (ÆíÀÇ»ó "±¸ºÐÀÚ ÄÚµå"(Á¾°á ÀÚ, ±¸ºÐ ±âÈ£)·Î Ç¥½ÃµÊ)¸¦ Æ÷ÇÔÇÏ´Â µ¥ÀÌÅ͸¦ ¾²°í ÀÐÀ»
¼ö ÀÖ½À´Ï´Ù.
±¸ºÐ ±âÈ£ Äڵ带 Ãß°¡ÇÏ¸é ¿¬¼Ó µ¥ÀÌÅÍÀÇ ±¸ºÐ ±âÈ£·Î ÀÚµ¿ ÆǴܵ˴ϴÙ.
¼Û½Å½Ã "WriteLine"À» »ç¿ëÇϸé ÁöÁ¤µÈ ±¸ºÐ ±âÈ£ Äڵ尡 ÀÚµ¿À¸·Î µ¥ÀÌÅÍ ¹®ÀÚ¿¿¡
Ãß°¡µË´Ï´Ù.
- ¾ç¹æÇâ 󸮴 ÀÎÅÍ·´Æ® (À̺¥Æ® ±¸µ¿) 󸮷Π°¡´ÉÇÕ´Ï´Ù. "DataReceived"¹× "PinChanged"À̺¥Æ®¸¦
»ç¿ëÇϸé Á¦¾î ½ÅÈ£¼±ÀÇ º¯°æ ¹× µ¥ÀÌÅÍ
¼ö½Å°ú °°Àº À̺¥Æ®°¡ ¹ß»ýÇÒ ¶§ ¾Ë¸²À» ¼ö½Å ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÎÅÍ·´Æ®´Â À̺¥Æ®°¡ ¹ß»ýÇÒ ¶§ ¹ß»ýÇϹǷÎ
ÇÊ¿äÇÑ Ã³¸®¸¦ Áï½Ã ¼öÇà ÇÒ ¼ö ÀÖ½À´Ï´Ù.
SerialPort
±¸¼º ¿ä¼Ò ºÙ¿© ³Ö±â
Visual Basic "µµ±¸ »óÀÚ"¿¡¼ SerialPort ±¸¼º ¿ä¼Ò¸¦ ¼±ÅÃÇÏ°í ±¸¼º ¿ä¼Ò¸¦ ¸¶¿ì½º ¿ÞÂÊ
´ÜÃß·Î ²ø¾î¼ ²ø¾î´Ù ³õ¾Æ Æû¿¡ ºÙ¿© ³Ö½À´Ï´Ù.
±¸¼º ¿ä¼ÒÀÇ ºÙ¿© ³Ö±â°¡ ³¡³ª¸é ±¸¼º ¿ä¼Ò°¡ ¾ç½Ä ¾Æ·¡¿¡ ºÙ¿© ³Ö¾îÁý´Ï´Ù.
¼Ó¼º ±¸¼º
±¸¼º ¿ä¼ÒÀÇ µî·Ï Á¤º¸ âÀ¸·Î Àüȯ ÇÑ °ÍÀ¸·Î º¸ÀÌ´Â ±¸¼º ¿ä¼Ò¸¦ Ŭ¸¯ÇϽʽÿÀ.
"PortName"¼Ó¼ºÀ¸·Î Åë½Å¿¡ »ç¿ëµÉ Æ÷Æ® ¹øÈ£¸¦ ¼³Á¤ÇϽʽÿÀ. Ãʱ⠰ªÀº "COM1"ÀÔ´Ï´Ù.
"BaudRate"¼Ó¼ºÀ¸·Î Àü¼Û ¼Óµµ¸¦ ¼³Á¤ÇϽʽÿÀ. Ãʱ⠰ªÀº "9600"ÀÔ´Ï´Ù. RTS
»ç¿ë ¿©ºÎ¿Í °°Àº ±âŸ ¼Ó¼ºÀ» ±¸¼º ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.
À̺¥Æ® ¼³Á¤µµ
±¸¼º ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¼Ó¼º âÀÇ À̺¥Æ® ¹öÆ°À» Ŭ¸¯ÇÏ¿© ±¸¼º ¿ä¼ÒÀÇ À̺¥Æ® ¸ñ·ÏÀ» Ç¥½ÃÇÕ´Ï´Ù.
»ç¿ëÇÒ À̺¥Æ®¸¦ ¼±ÅÃÇÏ°í µÎ ¹ø Ŭ¸¯Çϸé ÇØ´ç À̺¥Æ® ·çƾÀÌ Ãß°¡µË´Ï´Ù. ÀÌ À§Ä¡¿¡¼ À̺¥Æ®°¡ ¹ß»ýÇßÀ» ¶§ ó¸® Äڵ带 ÀÛ¼ºÇϽʽÿÀ.
À̺¥Æ® À¯Çü
DataReceived À̺¥Æ®
Chars : ¹®ÀÚ°¡ ¼ö½ÅµÇ°í µ¥ÀÌÅÍ°¡ ¼ö½Å ¹öÆÛ¿¡ ÀúÀåµÇ¸é
Eof : EOF (ÆÄÀÏ ³¡)°¡ ¼ö½ÅµÇ°í ÀÌ°ÍÀÌ ¼ö½Å ¹öÆÛ¿¡ ÀúÀåµÇ¸é
ErrorReceived À̺¥Æ®
Frame : ÇÁ·¹ÀÌ¹Ö ¿À·ù°¡ °¨ÁöµÇ¾ú½À´Ï´Ù.
Overrun : ¿À¹ö·± ¿À·ù°¡ °¨ÁöµÇ¾ú½À´Ï´Ù.
RxOver : ¹öÆÛ ¿À¹öÇ÷ΰ¡ °¨ÁöµÇ¾ú½À´Ï´Ù.
RxParity : Æи®Æ¼ ¿À·ù°¡ °¨ÁöµÇ¾ú½À´Ï´Ù.
TxFull : ¼Û½Å ¹öÆÛ°¡ °¡µæ Â÷¼ ¹öÆÛ¿¡ µ¥ÀÌÅ͸¦ ÀúÀåÇÒ ¼ö¾ø´Â °æ¿ì
ÇÉ Ã¼ÀÎÁö À̺¥Æ®
Break : Áß´Ü ½ÅÈ£°¡ °¨ÁöµÇ¾ú½À´Ï´Ù.
CDChanged : CD (Carrier Detect) »óÅ º¯°æµÊ
CtsChanged : CTS (Clear to Send) »óÅ º¯°æµÊ
DsrChanged : DSR (µ¥ÀÌÅÍ ¼¼Æ® Áغñ) »óÅ º¯°æµÊ
Ring : ¸µ Ç¥½Ã±â°¡ °¨ÁöµÇ¾ú½À´Ï´Ù.
7.4 Win32 API¸¦ »ç¿ëÇÏ¿© Á÷·Ä Æ÷Æ® Á¦¾î
Á÷·Ä Æ÷Æ® ÇÁ·Î±×·¡¹ÖÀÇ °æ¿ì Wind32 API (ÀÀ¿ë ÇÁ·Î±×·¡¹Ö ÀÎÅÍÆäÀ̽º)¸¦ È£ÃâÇÏ´Â ¸Þ¼Òµåµµ ÀÖ½À´Ï´Ù.
Win32 API ¹× ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡ ´ëÇÑ ±¤¹üÀ§ÇÑ Áö½ÄÀÌ ÇÊ¿äÇÏÁö¸¸º¸´Ù °í±ÞÀÌ°í À¯¿¬ÇÑ ÇÁ·Î±×·¡¹ÖÀÌ °¡´ÉÇÕ´Ï´Ù.
Win32 API´Â Windows°¡ Ç¥ÁØÀ¸·Î Á¦°øÇÏ´Â ±â´É (ÇÔ¼ö)ÀÔ´Ï´Ù.
DLL·Î Á¦°øµÇ¸ç Windows¿¡¼ ½ÇÇàµÇ´Â ¸ðµç ÀÀ¿ë ÇÁ·Î±×·¥ÀºÀ̸¦ °øÀ¯ÇÏ°í
»ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Windows´Â ¾à 1000 °¡Áö À¯ÇüÀÇ API ±â´ÉÀ¸·Î ±âº» ±â´ÉÀ» Á¦°øÇϸç ÀÀ¿ë ÇÁ·Î±×·¥ ¼ÒÇÁÆ®¿þ¾î´ÂÀÌ ±â´ÉÀ» °áÇÕÇÏ¿© ºôµåµË´Ï´Ù.
Visual Basic ¹× Visual C¿¡´Â ¸¹Àº ¸í·ÉÀÌ ÀÖÁö¸¸ ÀÌ´Â ¸ðµç Windows ±â´ÉÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÏÁö
¾ÊÀ¸¹Ç·Î ÇÊ¿ä¿¡ µû¶ó API ÇÔ¼ö¸¦
È£ÃâÇÏ°í »ç¿ëÇؾßÇÕ´Ï´Ù. Á÷·Ä Æ÷Æ®¸¦ Á¦¾îÇÏ·Á¸é ´ÙÀ½ API ÇÔ¼ö¸¦ »ç¿ëÇϽʽÿÀ.
Á÷·Ä Æ÷Æ®¸¦ Á¦¾îÇÏ´Â µ¥ »ç¿ëµÇ´Â Win32 API
Æ÷Æ® ¿±â : CreateFile
Æ÷Æ® ±¸¼º : SetCommState, SetCommTimeouts
µ¥ÀÌÅÍ Àü¼Û : WriteFile
µ¥ÀÌÅÍ ¼ö½Å : ReadFile
8.
Á÷·Ä Æ÷Æ® ¿±â / ´Ý±â - Visual Basic 2005 Á÷·Ä Åë½Å ÇÁ·Î±×·¥ -
ÀÌ ¿¹Á¦ ÇÁ·Î±×·¥Àº USB ¿¬°áÀ» ÅëÇØ COM1¿¡ ÇÒ´ç µÈ COM-1(USB)Hº¸µå¿¡ RS-232C 1 Æ÷Æ® À¯ÇüÀ» »ç¿ëÇÏ°í
COM Æ÷Æ®¸¦ ¿°í ´Ý¾Æ ¿¹¿Ü 󸮸¦
¼öÇàÇÕ´Ï´Ù.
»ç¿ëµÈ
COM Æ÷Æ® |
COM1 |
Àü¼Û
¼Óµµ |
9600
bps
|
Æи®Æ¼
¼³Á¤ |
¾øÀ½ |
µ¥ÀÌÅÍ
ºñÆ® ±æÀÌ |
8 ºñÆ® |
Á¤Áö
ºñÆ® |
1 ºñÆ® |
Çڵ彦ÀÌÅ· |
»ç¿ëÇÏÁö ¸¶¼¼¿ä |
RTS
¶óÀÎ |
¹«È¿ |
8. 1 ȸéÀÇ »ý¼º°ú ¼Ó¼º ¼³Á¤
Visual Basic 2005¸¦ ½ÃÀÛÇÏ°í »õ ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé°í ¾Æ·¡¿¡ Ç¥½ÃµÈ °Í°ú °°Àº ¾ç½ÄÀ» ¸¸µì´Ï´Ù.
SerialPort ±¸¼º ¿ä¼Ò¸¦ ¾ç½Ä¿¡ ºÙ¿© ³Ö½À´Ï´Ù. Á÷·Ä Æ÷Æ® ±¸¼º ¿ä¼Ò ¼Ó¼º (Àü¼Û ¼Óµµ¿Í °°Àº Åë½Å ¼³Á¤)À» È®ÀÎÇϽʽÿÀ.
°´Ã¼ |
TextBox1 |
COM1 |
°´Ã¼ |
¹öÆ° 1 |
¿¬°á |
°´Ã¼ |
¹öÆ° 2 |
¿¬°á ²÷±â |
8. 2 ¿À·ù ó¸® (¿¹¿Ü ó¸®)
ÇÁ·Î±×·¥ÀÌ ¿¹¿Ü 󸮸¦ ¼öÇàÇÏÁö ¾ÊÀ» ¶§ ¿¹¿Ü ¿À·ù°¡ ¹ß»ýÇϸé ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ °Á¦ Á¾·áµË´Ï´Ù.
À̸¦ ÇÇÇϱâ À§ÇØ ÇÁ·Î±×·¥Àº ¿¹¿Ü 󸮸¦ ¼öÇàÇÕ´Ï´Ù. ¿¹¿Ü°¡ 󸮵Ǹé ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ °Á¦ Á¾·áµÇÁö ¾Ê½À´Ï´Ù.
¾Æ·¡ÀÇ À̹ÌÁö ¿¹¿Ü°¡ ó¸® µÉ ¶§ ¸Þ½ÃÁö »óÀÚ¸¦ Ç¥½ÃÇÏ¿© »ç¿ëÀÚ¿¡°Ô °æ°íÇÏ´Â ¿¹Á¦ÀÔ´Ï´Ù.
8.3 ÇÁ·Î±×·¥ ÄÚµå ¿¹Á¦
¿¬°á ´ÜÃß ¹× ¿¬°á ²÷±â ´ÜÃ߸¦ Ŭ¸¯ ÇÒ ¶§ 󸮸¦ Ãß°¡ÇϽʽÿÀ. Form1.vb¿¡¼ ´ÙÀ½ Äڵ带 ÀÛ¼ºÇϽʽÿÀ.
°¢ ¿ÀºêÁ§Æ® (´ÜÃß µî)¸¦ µÎ ¹ø ´©¸£¸é, ¿ÀºêÁ§Æ®°¡ ´ÜÃß ÀÎ °æ¿ì ´ÙÀ½ Äڵ带 ÀÛ¼ºÇϽʽÿÀ. ¹öÆ°À» ´·¶À» ¶§ 󸮰¡ ¿¸³´Ï´Ù.
¿©±â¿¡¼ ¼öÇàÇÏ·Á´Â 󸮸¦À§ÇÑ Äڵ带 ÀÛ¼ºÇϽʽÿÀ.
Æ÷Æ® ¿±â
Private
Sub Button1_Click (... : ¿¬°á ¹öÆ°À» ´·¶À» ¶§ÀÇ Ã³¸®
SerialPort1.PortName = TextBox1.Text '¿·Á´Â Æ÷Æ®ÀÇ À̸§À» ÀúÀåÇÕ´Ï´Ù.
SerialPort1.Open () 'Æ÷Æ®¸¦ ¿±´Ï ´Ù.
End Sub
Æ÷Æ® ´Ý±â
Private
Sub Button2_Click (... : ¿¬°á ÇØÁ¦ ¹öÆ°À» ´·¶À» ¶§ÀÇ Ã³¸®
If SerialPort1.IsOpen = True Then
'Æ÷Æ®°¡ ¿·È½À´Ï´Ù.
SerialPort1.Close
() 'Æ÷Æ®¸¦ ´Ý½À´Ï´Ù.
End If
End Sub
¿¹¿Ü ó¸®
ÀÌ ÄÚµå ¿¹Á¦´Â À§ Äڵ忡 ¿¹¿Ü 󸮸¦ Ãß°¡ÇÏ°í ¿¹¿Ü ¿À·ùÀÇ ¼¼ºÎ Á¤º¸¸¦
Ç¥½ÃÇÕ´Ï´Ù.
Private
Sub Button1_Click (... : ¿¬°á ¹öÆ°À» ´·¶À» ¶§ÀÇ Ã³¸®
Try '¿¹¿Ü ó¸® ½ÃÀÛ
If SerialPort1.IsOpen
= True Then 'Æ÷Æ®°¡ ¿·È½À´Ï´Ù.
MessageBox.Show
( "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit
Sub
End If
SerialPort1.PortName
= TextBox1.Text '¿·Á´Â Æ÷Æ®ÀÇ À̸§À» ÀúÀåÇÕ´Ï´Ù.
SerialPort1.Open
() 'Æ÷Æ®¸¦ ¿±´Ï ´Ù.
Catch ex As Exception '¿¹¿Ü ó¸®
MessageBox.Show
(¿¹ : ¸Þ½ÃÁö, "¿À·ù", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
Private Sub Button2_Click (... : ¿¬°á ÇØÁ¦ ¹öÆ°À» ´·¶À» ¶§ÀÇ Ã³¸®
If SerialPort1.IsOpen
= True Then 'Æ÷Æ®°¡ ¿·È½À´Ï´Ù.
SerialPort1.Close
() 'Æ÷Æ®¸¦ ´Ý½À´Ï´Ù.
End
If
End Sub
Try-Catch-End Try ±¸¹®ÀÇ °æ¿ì Visual Basic 2005 ÂüÁ¶¸¦ È®ÀÎÇϽʽÿÀ.
9.
µ¥ÀÌÅÍ Àü¼Û - Visual Basic 2005 ½Ã¸®¾ó Åë½Å ÇÁ·Î±×·¥
ÀÌ ¿¹Á¦ ÇÁ·Î±×·¥Àº USB ¿¬°áÀ» ÅëÇØ COM1¿¡ ÇÒ´ç µÈ COM-1(USB)Hº¸µå RS-232C 1 Æ÷Æ® À¯ÇüÀ» »ç¿ëÇÏ°í ±âº»
±¸ºÐ ±âÈ£¸¦ Æ÷ÇÔÇÏ¿©
ÅؽºÆ® »óÀÚ¿¡ ÀÔ·Â µÈ ¹®ÀÚ¿ µ¥ÀÌÅ͸¦ º¸³À´Ï´Ù.
»ç¿ëµÈ
COM Æ÷Æ® |
COM1 |
Àü¼Û
¼Óµµ |
9600
bps
|
Æи®Æ¼
¼³Á¤ |
¾øÀ½ |
µ¥ÀÌÅÍ
ºñÆ® ±æÀÌ |
8 ºñÆ® |
Á¤Áö
ºñÆ® |
1 ºñÆ® |
Çڵ彦ÀÌÅ· |
»ç¿ëÇÏÁö ¸¶¼¼¿ä |
RTS
¶óÀÎ |
¹«È¿ |
±¸ºÐ ±âÈ£ ÄÚµå |
LF (ÁÙ ¹Ù²Þ) |
9. 1 ¾ç½Ä ÀÛ¼º ¹× Ư¼º ±¸¼º
Visual Basic 2005¸¦ ½ÃÀÛÇÏ°í »õ ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé°í ¿ÞÂÊ¿¡ Ç¥½ÃµÈ °Í°ú °°Àº ¾ç½ÄÀ» ¸¸µì´Ï´Ù.
SerialPort ±¸¼º ¿ä¼Ò¸¦ ¾ç½Ä¿¡ ºÙ¿© ³Ö½À´Ï´Ù. Á÷·Ä Æ÷Æ® ±¸¼º ¿ä¼Ò ¼Ó¼º (Àü¼Û ¼Óµµ¿Í °°Àº Åë½Å ¼³Á¤)À» È®ÀÎÇϽʽÿÀ.
°´Ã¼ |
TextBox1 |
COM1 |
°´Ã¼ |
¹öÆ° 1 |
¿¬°á |
°´Ã¼ |
¹öÆ° 2 |
¿¬°á ²÷±â |
°´Ã¼ |
TextBox2 |
|
°´Ã¼ |
Button3 |
º¸³»´Ù |
9.2 NewLine (±¸ºÐ ±âÈ£ ÄÚµå)
±¸ºÐ ±âÈ£ ÄÚµå´Â µ¥ÀÌÅÍÀÇ ºÐ¸® ¹®ÀÚ ¶Ç´Â ºÐ¸® ±âÈ£¸¦ ÀǹÌÇÕ´Ï´Ù.
SerialPort Ŭ·¡½ºÀÇ ±âº» ±¸ºÐ ±âÈ£ ÄÚµå´Â "LF"ÀÌÁö¸¸ ¿¬°áµÉ Àåºñ¿¡ ´ëÇØ ±¸¼ºµÇ¾î¾ßÇÕ´Ï´Ù.
ÇØ´ç ±¸ºÐ ±âÈ£ ÄÚµå´Â ´ÙÀ½À» ÂüÁ¶ÇϽʽÿÀ. ¿¬°áµÈ ÀåÄ¡.
. ¿¬¼Ó µ¥ÀÌÅÍÀÇ ´ÜÀýÀº µ¥ÀÌÅÍ¿¡ ±¸ºÐ ±âÈ£ Äڵ带 Ãß°¡ÇÏ¿© ÆÇ´ÜÇÕ´Ï´Ù.
. ±¸ºÐ ±âÈ£ ÄÚµå´Â Visual Basic µµ¿ò¸»ÀÇ NewLine °ª°ú µ¿ÀÏÇÑ Á¤ÀÇÀÔ´Ï´Ù.
.WriteLine ¸Þ¼µå¸¦ »ç¿ëÇÒ ¶§ NewLine °ªÀÌ ¼Û½Å ¹öÆÛ¿¡ ÀúÀåµÈ ¼Û½Å µ¥ÀÌÅÍ¿¡ Ãß°¡ µÈ ´ÙÀ½ µ¥ÀÌÅÍ°¡ Àü¼ÛµË´Ï´Ù.
±âº» NewLine °ªÀº LF (ÁÙ ¹Ù²Þ)ÀÔ´Ï´Ù.
. CR (ij¸®Áö ¸®ÅÏ), LF (ÁÙ ¹Ù²Þ) ¹× CR + LF°¡ ºÐ¸® ¹®ÀÚ·Î ÀÚÁÖ »ç¿ëµË´Ï´Ù.
9.3 ÇÁ·Î±×·¥ ÄÚµå ¿¹Á¦
¿¬°á ´ÜÃß ¹× ¿¬°á ²÷±â ´ÜÃ߸¦ Ŭ¸¯ ÇÒ ¶§ 󸮸¦ Ãß°¡ÇϽʽÿÀ. Form1.vb¿¡¼ ´ÙÀ½ Äڵ带 ÀÛ¼ºÇϽʽÿÀ.
°¢ ¿ÀºêÁ§Æ® (´ÜÃß µî)¸¦ µÎ ¹ø ´©¸£¸é, ¿ÀºêÁ§Æ®°¡ ´ÜÃß ÀÎ °æ¿ì ´ÙÀ½ Äڵ带 ÀÛ¼ºÇϽʽÿÀ.
¹öÆ°À» ´·¶À» ¶§ 󸮰¡ ¿¸³´Ï´Ù. ¿©±â¿¡¼ ¼öÇàÇÏ·Á´Â 󸮸¦À§ÇÑ Äڵ带 ÀÛ¼ºÇϽʽÿÀ.
Private
Sub Button1_Click (... : ¿¬°á ¹öÆ°À» ´·¶À» ¶§ÀÇ Ã³¸®
Try '¿¹¿Ü ó¸® ½ÃÀÛ
If
SerialPort1.IsOpen = True Then 'Æ÷Æ®°¡ ¿·È½À´Ï´Ù.
MessageBox.Show
( "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit
Sub
End
If
SerialPort1.PortName
= TextBox1.Text '¿·Á´Â Æ÷Æ®ÀÇ À̸§À» ÀúÀåÇÕ´Ï´Ù.
SerialPort1.Open
() 'Æ÷Æ®¸¦ ¿±´Ï ´Ù.
Catch ex As Exception
'¿¹¿Ü ó¸®
MessageBox.Show
(ex.Message, "¿À·ù", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
Private Sub Button2_Click (... : ¿¬°á ÇØÁ¦ ¹öÆ°À»
´·¶À» ¶§ÀÇ Ã³¸®
If
SerialPort1.IsOpen = True Then 'Æ÷Æ®°¡ ¿·È½À´Ï´Ù.
SerialPort1.Close
() 'Æ÷Æ®¸¦ ´Ý½À´Ï´Ù.
End
If
End Sub
Private Sub Button3_Click (... : º¸³»±â ¹öÆ°À»
´·¶À» ¶§ÀÇ Ã³¸®
If
TextBox2.Text.Length = 0 Then 'º¸³»±â µ¥ÀÌÅÍ°¡ ¾øÀ¸¸é ¿À·ù°¡ ¹ß»ýÇÕ´Ï´Ù.
MessageBox.Show
( "¹®ÀÚ¿ ÀÔ·Â ¿À·ù", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit
Sub 'ó¸® Áß´Ü
End
If
Try
SerialPort1.WriteLine
(TextBox2.Text) '¼Û½Å ¹öÆÛ¿¡ µ¥ÀÌÅÍ ¾²±â
Catch
ex As Exception '¿¹¿Ü ó¸®
MessageBox.Show
(ex.Message,"¿À·ù", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
ÄÚµåÀÇ ±¸ºÐ ±âÈ£¸¦ º¯°æÇÏ°í µ¥ÀÌÅ͸¦ º¸³»·Á¸é ´ÙÀ½°ú °°ÀÌ Äڵ带 ÀÛ¼ºÇϽʽÿÀ.
Dim strSend As String 'NewLineÀ» ÀúÀåÇÒ ¹®ÀÚ¿ º¯¼ö
strSend = SerialPort1.NewLine 'NewLineÀ»
Ãëµæ
strSend = strSend.Replace (vbLf, vbCr) '¹®ÀÚ¿¿¡¼ LF¸¦ CR·Î º¯È¯ÇÏ·Á¸é
SerialPort1.NewLine = strSend 'NewLine¿¡ ´ëÄ¡ µÈ ±¸ºÐ ±âÈ£ ÀúÀå
Try
SerialPort1.WriteLine
(TextBox2.Text) 'º¸³¾ µ¥ÀÌÅÍ ¾²±â ¹öÆÛ
Catch ex As Exception '¿¹¿Ü ó¸®
MessageBox.Show (ex.Message,
"¿À·ù", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
Try-Catch-End Try ±¸¹®ÀÇ °æ¿ì Visual Basic 2005 ÂüÁ¶¸¦ È®ÀÎÇϽʽÿÀ.
|