<Ãʺ¸ÀÚ¸¦ À§ÇÑ 8051 Á¦ 4ȸ °­ÁÂ>

µåµð¾î ¸¶Áö¸· °­Á¸¦ ¿Ã¸®°Ô ‰ç½À´Ï´Ù.

À̹øÀåÀº °¡Àå ¾î·Æ´Ù°í ÇÒ¼öµµ ÀÖÁö¸¸ °¡Àå À¯¿ëÇÏ´Ù°í ÇÒ¼öµµ ÀÖ½À´Ï´Ù.

À̹ø °­Á¸¦ ÅëÇØ¼­ home-automationÀ» ±¸Çö ÇÒ¼ö ÀÖ´Â ´É·ÂÀ» ¹è¾çÇÏ°í ´Ù¸¥ CPU¿ÍÀÇ Åë½ÅÀ» ÇÒ¼ö ÀÖ´Â ±âÃʸ¦ ¹è¿ì°Ô µÉ °ÍÀÔ´Ï´Ù.

ÀÛǰÀ» ¸¸µé°í ±×°ÍÀÇ ±¸µ¿À» À§Çؼ­ ÇÁ·Î±×·¥À» down-loadÇÒ ¶§ ÄÄÇ»ÅÍ¿ÍÀÇ Åë½ÅÀ» ¸¹ÀÌ »ç¿ëÇÏ°Ô µË´Ï´Ù.

°­ÁÂÀÇ ¸¶Áö¸· ºÎºÐ¿¡´Â °£´ÜÇÑ Åë½ÅÇÁ·Î±×·¥À» ¿¹·Î µé¾î ÁÖ¼®À¸·Î ¼³¸í ÇϰڽÀ´Ï´Ù.

<Á÷·Ä Åë½Å>

°³¿ä : ¸¶ÀÌÅ©·Î ÄÄÇ»ÅÍ¿Í ¸¶ÀÌÅ©·Î ÄÄÇ»ÅÍ »çÀÌ, ¶Ç´Â ¸¶ÀÌÅ©·Î ÄÄÇ»ÅÍ¿Í ÁÖº¯ ÀåÄ¡ »çÀÌÀÇ µ¥ÀÌÅÍ Àü¼ÛÀº Á÷·Ä Åë½Å ¶Ç´Â º´·Ä Åë½Å¿¡

ÀÇÇØ ÀÌ·ç¾îÁø´Ù. º¸Åë Á÷·Ä Åë½ÅÀÌ º´·Ä Åë½Åº¸´Ù Àú·ÅÇϱ⠶§¹®¿¡ ¸¹ÀÌ »ç¿ëÇÑ´Ù.

MCS-51 °è¿­ ¸¶ÀÌÅ©·Î ÇÁ·Î¼¼¼­ÀÇ ½Ã¸®¾ó Æ÷Åä´Â µ¿½Ã¿¡ ¼Û¼ö½Å ÇÒ ¼ö ÀÖ´Â Àü ÀÌÁß ½Ã¸®¾ó Æ÷Æ®¸¦ ³»ÀåÇϰí ÀÖ´Ù. ÀÌ ½Ã¸®¾ó Æ÷Æ®ÀÇ

¼Û¼ö½ÅÀº io51.h(reg51.h) ¿¡ ¼±¾ðµÇ¾î ÀÖ´Â sfr SBUF¸¦ ÅëÇÏ¿© ÀÌ·ç¾îÁø´Ù. µ¥ÀÌÅ͸¦ ¼Û½ÅÇÒ ¶§´Â º¸³»·Á´Â µ¥ÀÌÅ͸¦ SBUF¿¡ ½á³Ö°í

¼ö½ÅÇÏ°í ¹ÞÀº µ¥ÀÌÅ͸¦ SBUF¿¡¼­ ÀоîµéÀÌ¸é µÈ´Ù. µû¶ó¼­ MCS-51 °è¿­ÀÇ ¸¶ÀÌÅ©·Î ÇÁ·Î¼¼¼­´Â ¼Û¼ö½Å ¸ðµÎ SBUF·¹Áö½ºÅ͸¦ °ÅÃļ­

ÀÌ·ç¾îÁø´Ù.

* ½Ã¸®¾ó Æ÷Æ®´Â sfr(Special Function Register) ³»ÀÇ SBUF(Serial Port Buffer Register), SCON(Serial Port Control Register), PCON

  (Power Control Register)ÀÇ 3°³ÀÇ ·¹Áö½ºÅ͸¦ ¼ÒÇÁÆ®¿þ¾îÀûÀ¸·Î Á¦¾îÇÑ´Ù.

*µ¥ÀÌÅÍ Àü¼Û ¹æ¹ý¿¡´Â µ¿±â ½ÅÈ£ÀÇ À¯¹«¿¡ µû¶ó¼­ µ¿±â ¸ðµå¿Í ºñµ¿±â ¸ðµå·Î ³ª´­¼ö ÀÖ´Ù.

µ¿±â ¸ðµå : Ŭ·° ÆÞ½º¿¡ ¸ÂÃç µ¥ÀÌÅ͸¦ Àü¼ÛÇÏ´Â ¹æ¹ý. Ŭ·°Àº µ¶¸³µÈ ¼±À¸·Î º¸³¾¼öµµ ÀÖ°í ¶Ç´Â µ¥ÀÌÅÍ¿¡ ³¢¿ö µ¥ÀÌÅÍ¿Í °°Àº ¼±¿¡

                º¸³¾ ¼öµµ ÀÖ´Ù. µ¿±â ¸ðµå´Â ³ôÀº Àü¼Û È¿À²À» °¡Áö¹Ç·Î ¼±·Î¿¡ ÀâÀ½ÀÌ Àְųª °Å¸®°¡ ¸Õ °æ¿ì¿¡µµ ¸¶ÀÌÅ©·Î ÄÄÇ»ÅÍ¿Í ¸¶ÀÌÅ©

                ·Î ÄÄÇ»ÅÍ»çÀÌ¿¡¼­ ´ë·®ÀÇ µ¥ÀÌÅ͸¦ Àü¼ÛÇϴµ¥ »ç¿ëÇÑ´Ù.

ºñµ¿±â ¸ðµå : ±âÁØ Å¬·° ¾øÀÌ µ¥ÀÌÅÍ ºñÆ®ÀÇ À¯Áö ½Ã°£À» ¼­·Î ¾à¼ÓÇØ Àü¼ÛÇÏ´Â ¹æ¹ýÀÌ´Ù. Áï, ¼Û½Å±â°¡ ¾à¼ÓµÈ Á֯ļö·Î µ¥ÀÌÅ͸¦ º¸³»¸é

                   ¼ö½Å±â°¡ °°Àº Á֯ļö·Î µ¥ÀÌÅ͸¦ Àд´Ù. ¼ö½Å±âÀÇ Å¬·°Àº °¢°¢ÀÇ ¹®ÀÚ¸¦ ´Ù½Ã µ¿±â ½ÃŰ´Â µ¥ ÇÊ¿äÇÏ´Ù.

                   ºñµ¿±â ¸ðµå´Â °¢°¢ÀÇ ¹®ÀÚ¸¶´Ù Á¦¾î ºñÆ®°¡ ÇÊ¿äÇϱ⠶§¹®¿¡ µ¿±â ¸ðµå º¸´Ù È¿À²ÀÌ ³·´Ù. ºñµ¿±â ¸ðµå´Â º¸Åë ¸¶ÀÌÅ©·Î

                   ÄÄÇ»ÅÍ¿Í Å͹̳ÎÀ» ¿¬°á Çϴµ¥ »ç¿ëµÈ´Ù.

<Åë½Å¹æ½Ä>

´Ü¹æÇâ(simplex) ¹æ½Ä : ÇÑÂÊ ¹æÇâÀ¸·Î¸¸ µ¥ÀÌÅ͸¦ Àü¼ÛÇÑ´Ù.

ºÒ¾ÈÀü ÀÌÁß(half duplex) ¹æ½Ä : ÇÑ ¼±¸¸À» »ç¿ëÇÏ¿© º¸³»±â¿Í ¹Þ±â¸¦ ÇÏ´Â ¹æ½ÄÀ¸·Î ÇÑ ¼ø°£¿¡ ÇÑÂÊ ¹æÇâÀ¸·Î Àü¼ÛÇÒ ¼ö ÀÖ´Ù.

                                              Àü¼ÛÀÌ ³¡³ª¸é ¹Ý´ë ¹æÇâÀ¸·Î Àü¼ÛÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¾ç¹æÇâÀ¸·Î Àü¼ÛÀÌ °¡´ÉÇϳª µ¿½Ã¿¡ Àü¼ÛÇÒ ¼ö ¾ø´Ù.

* ¿¹¸¦ µéÀÚ¸é ¹«Àü±â °°Àº °ÍÀÌ µÉ¼ö ÀÖ´Ù. ¹«Àü±â(±º¿¡ ´Ù³à¿Â »ç¶÷µéÀº ¾ËÅÙµ¥..)´Â µ¿½Ã¿¡ ¸»À»  ÇÒ¼ö ¾ø´Ù. »ó´ë¹æÀÇ ¹«ÀüÀÌ ³¡³ª¾ß

   ºñ·Î¼­ ³»°¡ ¸»ÇÒ¼ö ÀÖ´Ù. ±×·¡¼­ ¿µÈ­¿¡¼­ ó·³ ÀÚ½ÅÀÇ ¸»ÀÌ ³¡³µ´Ù´Â °ÍÀ» ¾Ë¸®±â À§ÇØ over¶ó´Â ¸»À» »ç¿ëÇÏ´Â °ÍÀÌ´Ù.

¿ÏÀü ÀÌÁß(full duplex) ¹æ½Ä : 2 ¼±À» »ç¿ëÇÏ¿© µ¿½Ã¿¡ º¸³»±â¿Í ¹Þ±â¸¦ ÇÏ´Â ¹æ½ÄÀ¸·Î µ¿½Ã¿¡ ¾ç¹æÇâ Àü¼ÛÀÌ °¡´ÉÇÏ´Ù. (ex> telephone)

8051ÀÇ Á÷·Ä Æ÷Æ®´Â µ¿±â ¸ðµå¿Í ºñµ¿±â ¸ðµå ¸ðµÎ¸¦ Á¦°øÇÑ´Ù.

µ¿±â ¸ðµå´Â ¸ðµå 0À¸·Î ºÒ¿ÏÀü ÀÌÁß ¹æ½ÄÀÌ¸ç ´ÜÀÏ º¸(baud)À²·Î µ¿ÀÛÇÑ´Ù. baud(º¸À²)Àº ŸÀ̸Ӹ¦ ¼³¸íÇÑ 2Àå¿¡¼­ º¼¼ö ÀÖÀ» °ÍÀÌ´Ù.

ºñµ¿±â ¸ðµå´Â 3°¡Áö ¸ðµå°¡ ÀÖ°í ¿ÏÀü ÀÌÁß ¹æ½ÄÀÌ¸ç º¸³»±â¿Í ¹Þ±âÀÇ º¸¼Óµµ¸¦ ¼­·Î ´Ù¸£°Ô ÇÒ ¼ö ÀÖ´Ù. ºñµ¿±â ¸ðµå´Â ÇÁ·¹ÀÓ ºñÆ®

¿À·ù °ËÃâ, ´ÙÁß ÇÁ·Î¼¼¼­ Åë½Å, ±×¸®°í ÀÚµ¿ ÁÖ¼ÒÀÎ½Ä ±â´ÉÀ» Á¦°øÇÑ´Ù.

À§ÀÇ Ç¥´Â ¸ðµå¿Í µ¿±â¸¦ °°ÀÌ ³ªÅ¸³½ Ç¥ÀÌ´Ù.

SBUF ·¹Áö½ºÅÍ

SBUF´Â ¼Û½ÅÇÒ µ¥ÀÌÅÍ¿Í ¼ö½ÅÇÑ µ¥ÀÌÅ͸¦ ÀϽÃÀûÀ¸·Î ÀúÀåÇÏ´Â ·¹Áö½ºÅÍÀÌ´Ù. SBUF´Â ¼Û½Å¿ë°ú ¼ö½Å¿ëÀÌ °°Àº ¹øÁö¸¦ Áö´Ï°í ÀÖÀ¸³ª

¼­·Î ´Ù¸¥ µÎ °³ÀÇ ·¹Áö½ºÅÍÀÌ´Ù. Áï, WR(Write), RD(Read)¸í·ÉÀ¸·Î ¼Û¼ö½Å SBUF¸¦ ÁöÁ¤ÇÏ°Ô µÈ´Ù.

SBUF = 'A' ; (¼Û½Å¿ë SBUF ÁöÁ¤)

r = SBUF ; (¼ö½Å¿ë SBUF ÁöÁ¤)

SBUF¸¦ ¾Õ¿¡ ¾µ ¶§¿Í µÚ¿¡ ¾µ ¶§¿ÍÀÇ Â÷À̸¦ ³ªÅ¸³»°í ÀÖ´Ù.

¼Û½Å ÇÒ ¶§´Â µ¥ÀÌÅ͸¦ '' »çÀÌ¿¡ µÐ´Ù.

¼ö½ÅºÎÀÇ XBUF´Â 2Áß ±¸Á¶·Î µÇ¾î À־ ´ÙÀ½ ÇÁ·¹ÀÓÀÇ ¼ö½Å ½ÃÀÛ Àü¿¡ CUP°¡ ¼ö½Å ÀÎÅÍ·´Æ®¿¡ ÀÀ´äÇÏÁö ¾Ê¾Æ¼­ µ¥ÀÌÅ͸¦ ÀоÁö

¸øÇصµ Over Run¿¡·¯¸¦ ¹æÁöÇÒ ¼ö ÀÖ´Ù.

SCON ·¹Áö½ºÅÍ

SCON ·¹Áö½ºÅÍ´Â ½Ã¸®¾ó Æ÷Æ®¸¦ Á¦¾îÇϱâ À§ÇÑ ·¹Áö½ºÅÍ·Î °¢ ºñÆ®ÀÇ ±â´ÉÀº ´ÙÀ½°ú °°´Ù.

 

* SM0, SM1 : ½Ã¸®¾ó Æ÷Æ®ÀÇ ¸ðµå¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Â ºñÆ®ÀÌ´Ù. ÀÌ ºñÆ®µéÀÇ Á¶ÇÕ¿¡ µû¶ó ´ÙÀ½°ú °°ÀÌ ³× °³ÀÇ ¸ðµå¸¦ ¼³¸í ÇÒ¼ö ÀÖ´Ù.

* SM2 : ¸ðµå 2, 3 ÀÇ ¸ÖƼÇÁ·Î¼¼¼­ Åë½Å¿¡¼­´Â SM2°¡ '1'·Î ¼³Á¤µÇ°í ¼ö½Å µ¥ÀÌÅÍÀÇ 9¹øÂ° ºñÆ®°¡ '1'ÀÌ¸é µ¥ÀÌÅ͸¦ ¼ö½ÅÇÒ ¼ö ÀÖ´Ù.

  SM2°¡ '0'À¸·Î ¼³Á¤µÇ°í ¼ö½Å µ¥ÀÌÅÍÀÇ 9¹øÂ° ºñÆ®°¡ '0'ÀÌ¸é µ¥ÀÌÅ͸¦ ¹«½ÃÇÑ´Ù. ¸ðµå 1 ¿¡¼­´Â SM2°¡ '1'ÀÌ°í ¾à¼ÓµÈ ½ºÅé ºñÆ®°¡

 ¼ö½ÅµÇÁö ¾ÊÀ¸¸é ¼ö½Å ÀÎÅÍ·´Æ®(RI)°¡ ¹ß»ýµÇÁö ¾Ê´Â´Ù. ¸ðµå 0¿¡¼­´Â 'SM2 °¡ 0'À¸·Î ¼³Á¤µÇ¾î¾ß ÇÑ´Ù.

* REN(D4) : ½Ã¸®¾ó Æ÷Æ®ÀÇ ¼ö½ÅÀ» °¡´ÉÇÏ°Ô ÇÏ´Â ºñÆ®ÀÌ´Ù. '1'·Î ¼³Á¤ÇÏ¸é ¼ö½ÅÀ» °¡´ÉÇÏ°Ô Çϰí '0'À¸·Î ¼³Á¤ÇÏ¸é ¼ö½ÅÀ» ÇÒ ¼ö ¾ø´Ù.

* TB8 : ¸ðµå 2, 3¿¡¼­ '1'·Î ¼³Á¤ÇÏ¿´À» ¶§´Â 9¹øÂ° µ¥ÀÌÅÍ ºñÆ®°¡ '1'ÀÎ ¾îµå·¹½º Á¤º¸¸¦ ¼Û½ÅÇϰí '0'À¸·Î ¼³Á¤ÇÏ¿´À» ¶§´Â 9¹øÂ°

  µ¥ÀÌÅÍ ºñÆ®°¡ '0'À¸·Î ¼³Á¤ÇÏ¿´À» ¶§´Â 9¹øÂ° µ¥ÀÌÅÍ ºñÆ®°¡ '0'ÀÎ ¾îµå·¹½º Á¤º¸¸¦ Àü¼ÛÇÑ´Ù.

* RB8 : ¸ðµå 2, 3¿¡¼­ '1'·Î ¼³Á¤ÇÏ¿´À» ¶§´Â 9¹øÂ° µ¥ÀÌÅÍ ºñÆ®°¡ '1'ÀÎ ¾îµå·¹½º Á¤º¸¸¦ ¼ö½ÅÇϰí '0'À¸·Î ¼³Á¤ÇÏ¿´À» ¶§´Â 9¹øÂ° µ¥ÀÌÅÍ

  ºñÆ®°¡ '0'ÀÎ ¾îµå·¹½º Á¤º¸¸¦ ¼ö½ÅÇÑ´Ù. ¸ðµå 1¿¡¼­´Â SM2°¡ '0'ÀÏ ¶§´Â RB8Àº ½ºÅé ºñÆ®ÀÇ ¼ö½ÅÀ» ³ªÅ¸³½´Ù. ¸ðµå 0¿¡¼­´Â »ç¿ëµÇÁö

  ¾Ê´Â´Ù.

* TI : ¼Û½Å ¿Ï·á ÀÎÅÍ·´Æ® Ç÷¡±×ÀÌ´Ù. ÀÌ ºñÆ®´Â ¹Ýµå½Ã ¼Û½Å ÈÄ ¼ÒÇÁÆ®¿þ¾îÀûÀ¸·Î '0'À» ¸¸µé¾î ÁÖ¾î¾ß ÇÑ´Ù.

* RI : ¼ö½Å ¿Ï·á ÀÎÅÍ·´Æ® Ç÷¡±×ÀÌ´Ù. ÀÌ ºñÆ®´Â ¹Ýµå½Ã ¼ö½Å ÈÄ ¼ÒÇÁÆ®¿þ¾îÀûÀ¸·Î '0'À» ¸¸µé¾î ÁÖ¾î¾ß ÇÑ´Ù.

PCON ·¹Áö½ºÅÍ

PCON ·¹Áö½ºÅÍ´Â º¸·¹ÀÌÆ®¸¦ Á¶Á¤ÇÒ ¼ö ÀÖ´Â ·¹Áö½ºÅÍÀÌ¸ç °¢ ºñÆ® ±â´ÉÀº ´ÙÀ½°ú °°´Ù.

SM0D : 2 ¹è º¸·¹ÀÌÆ® Ç÷¹±× SM0D¸¦ '1'·Î ÇÏ¸é º¸·¹ÀÌÆ®°¡ 2¹è·Î µÈ´Ù.

* ¸ðµå ¼³¸í

µ¿±â ¸ðµå(¸ðµå 0)

SM0 = 0 ; SM1 = 0

¸ðµå 0Àº µ¿±â ¸ðµå·Î ºÒ¿ÍÀü ÀÌÁß ¹æ½ÄÀÌ´Ù. ÁÖ·Î shift-register¸¦ »ç¿ëÇØ ĨÀÇ I/O ±â´ÉÀ» È®ÀåÇϱâ À§ÇØ »ç¿ëÇÑ´Ù.

TXD(CLK) ÇÉÀ¸·Î µ¿±â Ŭ·° ÆÞ½º¸¦ Ãâ·ÂÇϰí RXD(DATA) ÇÉÀ¸·Î µ¥ÀÌÅÍ ¹ÙÀÌÆ®¸¦ º¸³»°Å³ª ¹Þ´Â´Ù.

µ¥ÀÌÅÍ ¹ÙÀÌÆ®´Â ÃÖÇÏÀ§ ºñÆ® LSBºÎÅÍ º¸³»Áø´Ù. ¹Þ´Â µ¥ÀÌÅ͵µ ¸¶Âù°¡Áö·Î LSBºÎÅÍ º¸³»Áø´Ù. ¹Þ´Â µ¥ÀÌÅ͵µ ¸¶Âù°¡Áö·Î LSBºÎÅÍ

¹Þ¾ÆÁø´Ù.

¸ðµå Àü¼Û ¼Óµµ(º¸¼Óµµ)´Â Fosc/12·Î °íÁ¤µÈ´Ù.

º¸³»±â - Á÷·Ä Æ÷Æ® Á¦¾î SCON ·¹Áö½ºÅÍÀÇ ¹Þ±â Çã¿ë RENºñÆ®¸¦ 0À¸·Î Áö¿ö º¸³»±â ¸ðµå·Î ¼³Á¤ÇÏ°í º¸³»±â Ç¥½Ã±â TI¸¦ Áö¿î´Ù.

REN = 0 (¹Þ±â Çã¿ë = ±ÝÁö => º¸³»±â); T=0 (º¸³»±â Ç¥½Ã±â¸¦ Áö¿î´Ù)

º¸³¾ ¹ÙÀÌÆ®¸¦ Á÷·Ä ¹öÆÛ SBUF ·¹Áö½ºÅÍ¿¡ ¾´´Ù. ¾²±â µ¿ÀÛÀÌ Çϵå¿þ¾î¿¡°Ô ÀÚµ¿À¸·Î º¸³¾ °ÍÀ» Áö½Ã ÇÑ´Ù.

SBUF = send ; (µ¥ÀÌÅ͸¦ º¸³½´Ù)

µ¥ÀÌÅ͸¦ ´Ù º¸³»¸é Çϵå¿þ¾î°¡ º¸³»±â Ç¥½Ã±â TI¸¦ 1·Î ¼³Á¤ÇØ º¸³»±â°¡ ³¡³µÀ½À» Ç¥½Ã ÇÑ´Ù.

while (!TI) ; (´Ù º¸³»Áú ¶§±îÁö ±â´Ù¸°´Ù)

±×·¯¸é ÇÁ·Î±×·¥¿¡¼­ ´ÙÀ½ µ¥ÀÌÅ͸¦ Á÷·Ä ¹öÆÛ SBUF ·¹Áö½ºÅÍ¿¡ ¾µ ¼ö ÀÖ´Ù.

TI = 0 ; (º¸³»±â Ç¥½Ã±â¸¦ Áö¿î´Ù)

SBUF = SEND ; (´ÙÀ½ µ¥ÀÌÅ͸¦ º¸³½´Ù)

¹Þ±â - Á÷·Ä Æ÷Æ® Á¦¾î SCON ·¹Áö½ºÅÍÀÇ ¹Þ±â Çã¿ë REN ºñÆ®¸¦ ¼³Á¤ÇÏ¿© ¹Þ±â ¸ðµå·Î ¼³Á¤ÇÏ°í ¹Þ±â Ç¥½Ã±â RIºñÆ®¸¦ Áö¿î´Ù.

REN = 1 ; (¹Þ±â Çã¿ë = ¼³Á¤)

RI = 0 ; (¹Þ±â Ç¥½Ã±â¸¦ Áö¿î´Ù)

ù ¹øÂ° ºñÆ®°¡ µé¾î¿À¸é ÀÚµ¿ÀûÀ¸·Î ¹Þ±â¸¦ ½ÃÀÛÇÑ´Ù.

µ¥ÀÌÅ͸¦ ´Ù ¹ÞÀ¸¸é Çϵå¿þ¾î°¡ ¹Þ±â Ç¥½Ã±â RI¸¦ 1·Î ¼³Á¤ÇØ ¹Þ±â°¡ ³¡³µÀ½À» Ç¥½ÃÇÑ´Ù.

while (!RI) ; (´Ù ¹ÞÀ» ¶§±îÁö ±â´Ù¸°´Ù)

±×·¯¸é ÇÁ·Î±×·¥¿¡¼­ ¹ÞÀº µ¥ÀÌÅ͸¦ Á÷·Ä ¹öÆÛ SBUF·¹Áö½ºÅͷκÎÅÍ ÀÐÀ» ¼ö ÀÖ´Ù.

recv = SBUF ; (µ¥ÀÌÅ͸¦ Àд´Ù)

ºñµ¿±â ¸ðµå (¸ðµå 1,2,3)                                           

ºñµ¿±â ¸ðµå´Â 3°¡ÁöÀÇ µ¿ÀÛ ¸ðµå°¡ ÀÖ´Ù.

- ¸ðµå 1 : ¿ÏÀü ÀÌÁß ¹æ½ÄÀ¸·Î 1:1 Åë½Å¿¡ »ç¿ëÇÑ´Ù. µ¥ÀÌÅÍ ÇÁ·¹ÀÓÀº 10ºñÆ®·Î ±¸¼ºµÈ´Ù.

   ½ÃÀÛ ºñÆ® 1 , µ¥ÀÌÅÍ ºñÆ® 8, Á¤Áö ºñÆ® 1.

   º¸¼Óµµ´Â ŸÀ̸Ó1 ¶Ç´Â ŸÀ̸Ó2ÀÇ ³Ñħ¿¡ ÀÇÇØ ¹ß»ýÇÑ´Ù.

   ¼³Á¤ SM1 = 0 ; SM0 = 1; (¸ðµå 1)

   ¸ðµå 1¿¡¼­ µ¥ÀÌÅ͸¦ ´Ù ¹Þ¾ÒÀ» ¶§, Á¤Áö ºñÆ®°¡ Á÷·Ä Æ÷Æ® Á¦¾î SCON ·¹Áö½ºÅÍÀÇ ¹Þ±â RB8 ºñÆ®¿¡ ÀúÀåµÈ´Ù.

- ¸ðµå 2,3  : ¸ðµå2 ¿Í 3Àº ¿ÏÀü ÀÌÁß ¹æ½ÄÀ¸·Î 1 : n Åë½Å¿¡ »ç¿ëÇÑ´Ù.

   µ¥ÀÌÅÍ ÇÁ·¹ÀÓÀº 11ºñÆ®·Î ±¸¼ºµÈ´Ù : ½ÃÀÛ ºñÆ® 1, µ¥ÀÌÅÍ ºñÆ® 8(LSB°¡ ù ¹øÂ°·Î º¸³»Áö°í ¹Þ¾ÆÁø´Ù) ÇÁ·Î±×·¡¸Óºí 9¹øÂ° ºñÆ® 1

   Á¤Áö ºñÆ® 1.

   ¼³Á¤ SM1 = 1 ; SM0 = 0 ; (¸ðµå 2)

   ¼³Á¤ SM1 = 1 ; SM0 = 1 ; (¸ðµå 3)

   µ¥ÀÌÅ͸¦ ´Ù ¹Þ¾ÒÀ» ¶§, 9 ¹øÂ° ºñÆ® D8ÀÌ Á÷·Ä Æ÷Æ® Á¦¾î SCON ·¹Áö½ºÅÍÀÇ RB8 ºñÆ®¿¡ ÀúÀåµÈ´Ù. ÇÁ·Î±×·¥¿¡¼­ Á÷·Ä Æ÷Æ®Á¦¾î

   SCON ·¹Áö½ºÅÍÀÇ º¸³»±â ºñÆ® TB8 ºñÆ®¿¡ ÇÑ ºñÆ®¸¦ ½á ³ÖÀ¸¸é µ¥ÀÌÅ͸¦ º¸³¾ ¶§ 9¹øÂ° ºñÆ® D8¿¡ Ãß°¡µÈ´Ù. ÀÌ 9¹øÂ° ºñÆ®´Â

   ÁÖ¼Ò/µ¥ÀÌÅÍ Ç¥½Ã±â·Î »ç¿ëÇÒ ¼ö ÀÖ´Ù.

   ¸ðµå 2¿¡¼­, Àü¼Û ¼Óµµ(º¸¼Óµµ)´Â Fosc/32, ¶Ç´Â Fosc64·Î °íÁ¤µÈ´Ù. ¸ðµå 3¿¡¼­, º¸¼Óµµ´Â ŸÀ̸Ó1 ¶Ç´Â ŸÀ̸Ó2ÀÇ ³Ñħ¿¡ ÀÇÇØ

   ¹ß»ýÇÑ´Ù.

   º¸³»±â - (¸ðµå 1,2,3)

   º¸³»±â Ç¥½Ã±â¸¦ Áö¿î´Ù. ¸ðµå 2/3ÀÇ °æ¿ì 9¹øÂ° ºñÆ® D8À» Á÷·Ä Æ÷Æ® Á¦¾î SCON·¹Áö½ºÅÍÀÇ º¸³»±â ºñÆ® TB8¿¡ ¾´´Ù.

   TI = 0 ; (º¸³»±â Ç¥½Ã±â¸¦ Áö¿î´Ù)

   RI = 1 ; (1 :  ÁÖ¼ÒÇÁ·¹ÀÓ , 0 : µ¥ÀÌÅÍ ÇÁ·¹ÀÓ)

ÀÌÁ¦ ¿¹Á¦¸¦ º¸¸é¼­ ÇÁ·Î ±×·¥¿¡¼­ Àû¿ëµÇ´Â °ÍÀ» ¾Ë¾Æº¸ÀÚ.

#include "reg51.h"

#define PASSWORD 0x55       // Åë½Å»ó¿¡¼­ »ç¿ëÇÒ password¸¦ Á¤ÀÇ

data unsigned int buffer = 0;  // buffer ¶ó´Â º¯¼ö

serial() interrupt 4                 // interrupt ÇÔ¼ö »ç¿ë

{

if(RI)                                    // ¼ö½Å¿Ï·á È®ÀÎ

    {

buffer = SBUF;                     // ¼ö½Å¿ë

RI = 0;                                 

while(!TI);                            // ¼Û½Å¿Ï·á È®ÀÎ

SBUF = buffer;                    // ¼Û½Å¿ë

TI = 0;

     }

}

void main()

{

TMOD = 0x20;                    //Åë½Å ¸ðµå ¼³Á¤                               TMOD = 0010 0000

EA = 1;                             // Àüü interrupt Enable

ET1 = 0;                            // ŸÀ̸Ó1 interrupt Disable

TH1 = 243;                        // »óÀ§ºñÆ® ¼³Á¤                               

TL1 = 243;                        // ÇÏÀ§ºñÆ® ¼³Á¤

TR1 = 1;

SCON = 0x70                   // SCON ¼³Á¤                                   SCON = 0111 0000

PCON = 0x00                   // PCON ¼³Á¤                                   PCON = 0000 0000

ES = 1;

while(SBUF != PASSWORD)

SBUF = 0x00;

RI = 0;

TI = 0;

SBUF = PASSWORD;

ES = 1;

while(1);

}

 

À§ÀÇ ÇÁ·Î±×·¥À» ÀÌÇØ Çϸé ÀÚ½ÅÀÌ Á÷Á¢ ÇÁ·Î±×·¥À» ÇØº¸´Â °ÍÀÌ ÁÁ°Ú´Ù.

°­Á Àü¹ÝºÎ¿¡¼­µµ ¸»ÇßÁö¸¸ À̷и¸ÀÌ ¾Æ´Ñ °æÇèÀÌ Áß¿äÇϱ⠶§¹®ÀÌ´Ù

1