[9] Ŭ·°À» ³Ö¾îÁÖÀÚ. 11/17 18:26 21 line
Ŭ·°À» ³Ö¾îÁÖÀÚ.
CPU°¡ µ¹¾Æ°¡±â À§Çؼ´Â ¸î°¡Áö ±âº»ÀûÀΠȯ°æÀ» ¸¸µé¾î ÁÖ¾î¾ß ÇÑ´Ù.
±×Áß¿¡ Ŭ·°Àº ÇÙ»ù ¿ä°ÇÀ¸·Î CPUÀÇ µ¿ÀÛ¼Óµµ¸¦ °áÁ¤ÇÑ´Ù. 80C31¿¡¼´Â
Ĩ ³»ºÎ¿¡ OSC¶ó°í ºÎ¸£´Â ¿À½Ç·¹ÀÌŸ ȸ·ÎÀÇ ÀϺΰ¡ µé¾î ÀÖ´Ù.
Á÷Á¢ÀûÀ¸·Î ¼Óµµ¸¦ °áÁ¤ÇÏ´Â ºÎºÐÀÎ ¼öÁ¤Áøµ¿ÀÚ(crystal)¿Í ¼¼¶ó¹Í
Äܵ§¼´Â µé¾î ÀÖÁö ¾Ê´Ù. µû¶ó¼ ¿ì¸®´Â »ç¿ëÇÏ·Á´Â ¼Óµµ¿¡ ¸Â´Â ¼öÁ¤
Áøµ¿ÀÚ¿Í Äܵ§¼¸¦ ´Þ¾ÆÁؾî¾ß ÇÑ´Ù. ¼öÁ¤ Áøµ¿ÀÚ´Â ³ªÁß¿¡ Á÷·Ä Åë½ÅÀ»
À§ÇØ 11.0592 MHz¸¦ »ç¿ëÇÏ°í Äܵ§¼´Â 30pF Á¤µµÀÇ °ªÀ» »ç¿ëÇÏ´Ù.
(±×¸² 1 ÂüÁ¶) ¼öÁ¤ Áøµ¿ÀÚ ¿Ü¿¡ ¼¼¶ó¹Í ·¹Á¶³×ÀÌÅͶó´Â ¹ßÁøÀÚ¸¦ ½áµµ
µÈ´Ù. À̶§´Â Äܵ§¼ °ªÀ» 47pF Á¤µµÀÎ °ÍÀ» »ç¿ëÇÑ´Ù. ¼¼¶ó¹Í
·¹Á¶³×ÀÌÅÍ°¡ ±Ã±ÀÇϽŠºÐÀº Áý¿¡ ÀÖ´Â °¡ÀüÁ¦Ç°¿ë ¸®¸ðÄÜÀ» Çϳª
¹Ú»ì³»º¸ÀÚ. ¶Ç ´Ù¸¥ Ŭ·° °ø±Þ ¹æ¹ýÀÌ ÀÖÁö¸¸ ´õÀÌ»óÀÇ ¼³¸íÀº
Ãʺ¸ÀÚ¿¡°Ô´Â µµ¿òÀÌ µÇÁö ¾ÊÀ» °Í °°´Ù.
Á¦À۽à ÁÖÀÇÁ¡Àº Äܵ§¼ C1,C2¿Í crystal Y1¸¦ °¡´ÉÇϸé CPUÀÇ 18,19¹ø
ÇÉ¿¡ °¡±õ°Ô ºÎÃÄÁÖ¾î¾ß ÇÑ´Ù. C1,C2,Y1 ¸ðµÎ ±Ø¼º(polarity)Àº ¾ø´Ù.
Âü°í·Î JS8051A´Â crystalÀ» ATS ŸÀÙ (³ôÀÌ°¡ ³·Àº ŸÀÙ)À» »ç¿ëÇÏ¿©
CPU¼ÒÄϾȿ¡ ±¸¼º µÇ¾î ÀÖ¾î °Ñ¿¡¼´Â º¸ÀÌÁö ¾Ê¾Æ ±ò²ûÇÏ°í ÄÄÆÑÆ®
ÇÏ´Ù.
[10] ¸®¼ÂÀ» °É¾îÁÖÀÚ. 11/17 18:28 40 line
RESET¸¦ °É¾î ÁÖÀÚ.
¸®¼Â½ÅÈ£´Â CPU ¹× ´Ù¸¥ ¼ÒÀÚµéÀ» ÃʱâÈ ½ÃÅ°´Âµ¥ »ç¿ëÇÏ´Â ½ÅÈ£·Î
¹Ýµå½Ã ±ÔÁ¤¿¡ ¸Â°Ô °ø±ÞÇØ¾ß ÇÏ´Â ½ÅÈ£ÀÔ´Ï´Ù. ¸®¼ÂÀº Àü¹®ÀûÀÎ
½Ã½ºÅÛ¿¡¼´Â ÀÇ¿Ü·Î ¹Î°¨ÇÑ ¹®Á¦ ÀÔ´Ï´Ù. ¸®¼Â ȸ·Î¸¦ Á¤½ÄÀ¸·Î
¼³¸íÇÏÀÚ¸é ²Ï ¾çÀÌ µË´Ï´Ù. ÇÏÁö¸¸ Ãʺ¸ÀÚµéÀº ±×¸² 2¿Í °°ÀÌ °ËÁõµÈ
ȸ·Î¸¦ ²Ù¸ç »ç¿ëÇÏ¸é ¹®Á¦°¡ ¾ø½À´Ï´Ù. CPU°¡ Á¤»ó µ¿ÀÛ Çϱâ À§Çؼ´Â
ÆÄ¿ö°¡ °ø±Þ°ú ÇÔ²² ¸®¼ÂÀ» °É¾î ÁÖ¾î¾ß ÇÕ´Ï´Ù. Ȥ½Ã CPU¿¡ Àü¿ø¸¸
ÁÖ¸é ÃʱâÈ°¡ µÇ´ÂÁö ¾Ë°í ÀÖ´Â ºÐµéÀÌ °è½ÇÁöµµ ¸ð¸£°Ú±º¿ä. ÇÏÁö¸¸
±×·¸Áö ¾Ê½À´Ï´Ù. ±×¸² 2ÀÇ ¸®¼Â ȸ·Î°¡ ±×·¯ÇÑ POWER-ON RESET À̶ó´Â
Áß¿äÇÑ ±â´ÉÀ» ÇØ ÁÝ´Ï´Ù.
ȸ·Î¸¦ °£´ÜÈ÷ ¼³¸íµå¸®°Ú½À´Ï´Ù. ÇÏÁö¸¸ ÀÌÇØ°¡ ¾ÈµÇ¸é ±×³É ³Ñ¾î
°¡½Ê½Ã¿ä. Àü¹® ÀüÀÚ ÀïÀÌ°¡ ¾Æ´Ï¸é ±¦Âú½À´Ï´Ù. ÆÄ¿ö°¡ ¿ÂÀÌ µÇ¸é
ÀüÇÏ°¡ ÀúÇ×À» ÅëÇØ Äܵ§¼¿¡ ÃæÀüÀÌ µË´Ï´Ù. À̶§ ÃæÀü ½Ã°£Àº
ÀúÇ×°ª°ú Äܵ§¼ÀÇ ¿ë·®¿¡ °ü°è°¡ µË´Ï´Ù. ÃæÀüÀÌ µÇ´Â µ¿¾È ÀÌ¹Ì ´Ù¸¥
Ĩ¿¡´Â VCC°¡ Á¤»ó °ø±Þ µÇ°Ô µË´Ï´Ù. ±×·¯¸é HC04ÀÇ Ãâ·ÂÀº HIGH°¡
µÇÁö¿ä. ÃæÀüÀÌ °è¼ÓµÇ¾î HC04ÀÇ ÀÔ·Â ÂÊÀÌ HIGH°¡ µÇ¸é Ãâ·ÂÀº LOW°¡
µÇÁö¿ä. °£´Ü ÇÏÁö¿ä.
±×·±µ¥ ´ÙÀÌ¿Àµå°¡ ÀÌ»óÇÑ ¹æÇâÀ¸·Î °É·Á ÀÖ±º¿ä. Àß »ý°¢ÇØ º¸½Ê½Ã¿ä.
Àü¿øÀÌ ³ª°¡¸é VCC°¡ ±Þ°ÝÈ÷ ³»·Á °©´Ï´Ù.(¹°·Ð ȸ·Î³»¿¡ ¹öÆÛ¸µ
Äܵ§¼°¡ ¾ó¸¸Å ÀÖ´À³Ä¿¡ µû¶ó ´Ù¸£Áö¸¸) ±×·¯³ª Äܵ§¼ÀÇ ¹æÀüÀº
ÀúÇ×À» °ÅÃÄ ¹æÀüµÇ¹Ç·Î ¼¼È÷ ¹æÀü µË´Ï´Ù. ÀÌ·²¶§ ´Ù½Ã ÆÄ¿ö¸¦
¿ÂÇϸé Á¤»ó ¸®¼ÂÀÌ ¾È °É¸®Áö¿ä. µû¶ó¼ ¹æÀüÀº ºü¸£°Ô ÇØÁÖ±â À§Çؼ
°ª½Ñ ´ÙÀÌ¿Àµå¸¦ °É¾î ÁØ °Ì´Ï´Ù.
¿©·¯ IC Áß¿¡´Â ¸®¼ÂÀÌ HIGH ÀΰͰú LOWÀΰÍÀÌ ÀÖ¾î RESET¸¦ Çѹø´õ
¹ÝÀü ½ÃÄÑ /RESET¸¦ ¸¸µé ¾ú½À´Ï´Ù.
PUSH SW´Â (¾ç)ÀüÇϸ¦ ¼ø°£ÀûÀ¸·Î GND·Î ¹æÀü ½ÃÄÑ ¸®¼ÂÀ» °Å´Âµ¥
»ç¿ëÇÕ´Ï´Ù.
Á¦À۽à ÁÖÀÇ »çÇ×Àº ±×¸² 3¿¡¼¿Í °°ÀÌ HC04ÀÇ ÀÔ·ÂÀ» ±×³É µÎ¸é
¾ÈµË´Ï´Ù. VCC¿¡ ¿¬°áÀ» ÇØÁÖ´øÁö ´Ù¸¥ ½ÅÈ£¸¦ ³Ö¾î¾î¾ß ÇÕ´Ï´Ù. ±âÃÊ°¡
µçµçÇÑ ºÐÀº ¾Ë°í ÀÖ°ÚÁö¸¸ ÀÏ´ÜÀº ±×·¸Áö ¾ÊÀº ºÐÀº ÀÏ´Ü ±×·¸°Ô µû¶ó
Áֽʽÿä. ÀÌÀ¯¸¦ ¼³¸íÇÏÀÚ¸é CMOS ĨÀÇ ³»ºÎ ±¸Á¶°¡ ³ª¿Í¾ß ÇÏ°í Á»
º¹ÀâÇØ Áý´Ï´Ù.
11] ¸Þ¸ð¸®¿Í I/O¸¦ ´ÞÀÚ. 11/17 18:30 112 line
¸Þ¸ð¸®¿Í I/O¸¦ ´ÞÀÚ
¸ÕÀú ·¹Ä¡¸¦ ´ÞÀÚ.
'latch on' À̶ó´Â ¼÷¾îÀÇ ¶æÀ» »çÀü¿¡¼ ã¾Æº¸¸é '<°³°¡> ¹°°í ³õÁö
¾Ê´Ù'¶ó´Â ¶æÀÌ Àִµ¥ ÀÌ°ÍÀÌ latch¸¦ °¡Àå Àß ¼³¸íÇÑ ¸»ÀÏ °Ì´Ï´Ù.
ȸ·Î¿¡¼ÀÇ ·¹Ä¡ÀÇ ±â´ÉÀº µ¥ÀÌŸ¿Í ¾îµå·¹½º°¡ ´ÙÁßȵÈ( ½ÃºÐÇÒ·Î
Ãâ·ÂµÇ´Â) ¶óÀο¡¼ ÇÏÀ§ ¹ÙÀÌÆ®ÀÇ ¾îµå·¹½º¸¦ ¹°°í ÀÏÁ¤ ±â°£( ´ÙÀ½
ALE ½ÅÈ£°¡ ¿À±â Àü±îÁö ) µ¿¾È Àâ¾Æ µÎ´Â ±â´ÉÀ» ÇÕ´Ï´Ù. latch¿ë
¼ÒÀÚ´Â ¸î °³°¡ ÀÖÁö¸¸ Àú´Â °³ÀÎÀûÀ¸·Î HC573À» ÁÁ¾ÆÇÕ´Ï´Ù. ±×·¯´Ï±î
¿©·¯ºÐµéµµ HC573À» ¾²¼¼¿ä.("¿ì¿Í~ ÀÌ ¾öû³ ³í¸®")
latchÀÇ /OC( ¾Õ¿¡ ½½·¡½¬(/)´Â ½ÅÈ£°¡ LOW À϶§ µ¿ÀÛÇÏ´Â Active Low
ÀÓÀ» Ç¥½ÃÇÕ´Ï´Ù. )´Â Ãâ·Â Á¦¾î¿ë ÇÉÀε¥ ¿ì¸®´Â ¹«Á¶°Ç Ãâ·ÂÀ¸·Î ³õ°í
»ç¿ëÇÕ´Ï´Ù. ALE ÇÉÀº CPU¿¡¼ Ãâ·ÂÇÏ´Â ALE ÇÉÀ» ¹Ù·Î ¿¬°áÇϸé
µË´Ï´Ù. ALEÀÇ Ãâ·ÂÀº ¿ì¸®°¡ ¸¸µå´Â °ÍÀÌ ¾Æ´Ï°í CPU°¡ ¾Ë¾Æ¼ ÇØÁÖ´Ï
³Ê¹« °ÆÁ¤ÇÏÁö ¸¶½Ê½Ã¿ä.
·ÒÀ» ¿¬°áÇÏÀÚ
·ÒÀº 27C256 À̶ó´Â 32 K byte Â¥¸®¸¦ »ç¿ëÇÕ´Ï´Ù. µ¥ÀÌŸ ¹ö½º¿Í
¾îµå·¹½º ¹ö½º´Â ¼·Î ¿¬°áÇÏ¸é µË´Ï´Ù. ·ÒÀ» ÀÐÀ»¶§ CPU´Â /PSENÀ»
»ç¿ëÇÕ´Ï´Ù. µû¶ó¼ CPUÀÇ /PSENÀ» ROMÀÇ /OE¿¡ ¿¬°áÇØ ÁÝ´Ï´Ù.
ÇÑ°¡Áö Áß¿äÇÑ°Ô Àִµ¥ ȸ·ÎµµÀÇ ÁÖ1À» º¸½Ê½Ã¿ä. Ĩ ¼±Åà ÇÉÀÎ
/CE(Chip Enable)Àº ĨÀÌ Ç×»ó ¼±Åà »óÅ·ΠµÇµµ·Ï GND¿¡ ¹°·Á ÀÖÁö¿ä.
Ȥ½Ã ÀÌ°ÍÀ» º¸°í ¾î¶²ºÐµéÀº µ¥ÀÌŸ ¹ö½º°¡ ³ÀåÆÇÀÌ µÇÁö ¾ÊÀ»±î
ÀǽÉÀ» Ç°´Â ºÐÀÌ ÀÖ°Ú±º¿ä. ÇÏÁö¸¸ ÀüÇô °ÆÁ¤ÇÏÁö ¸¶½Ê½Ã¿ä. ¿ì¸®ÀÇ
½Ã½ºÅÛÀº Àüü Program Memory Space¿¡ ´ÜÁö ÇϳªÀÇ ·Ò¸¸ ¾²°í ÀÖÀ¸´Ï
Ãæµ¹ÇÏÁö ¾Ê½À´Ï´Ù.
JS8051A º¸µå¸¦ »ç¿ëÇϽô ºÐÀº Á» ´õ Áøº¸µÈ ÇüÅÂÀÇ ROM, RAM, I/OÀÇ
¿¬°áÀ» »ç¿ë ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ¾ÕÀ¸·Î ÁøÇàµË´Ï´Ù.
·¥°ú I/O¸¦ ¿¬°áÇÏÀÚ
·¥Àº MCS-51¿¡¼ ¸»ÇÏ´Â Data Memory Space¿¡ µé¾î°¡´Âµ¥ ÀϹÝÀûÀ¸·Î ÀÌ
°ø°£¿¡´Â I/Oµµ °°ÀÌ µé¾î°¡¾ß ÇÕ´Ï´Ù. Data Memory Space´Â ROMÀÌ
µé¾îÀÖ´Â Program Memory Space¿Í´Â ´Ù¸¥ ¿ÏÀüÈ÷ ±¸º°µÈ ´Ù¸¥ °ø°£À¸·Î
ÀÐ°í ¾²±â°¡ ¸ðµµ °¡´ÉÇÑ °ø°£ÀÔ´Ï´Ù. CPU°¡ ÀÐÀ» ¶§´Â /RD ½ÅÈ£¼±À»
¾µ¶§´Â /WR ½ÅÈ£¼±À» »ç¿ëÇÕ´Ï´Ù. ÁÖ2¸¦ º¸½Ê½Ã¿ä. ·¥ÀÇ Ä¨¼±Åà ÇÉÀÌ
ROM°ú °°ÀÌ GND¿¡ ¾È°¡ÀÖ°í A15¿¡ ¹°·Á ÀÖÁö¿ä. ±×·¸°ÔÇÑ Àǵµ´Â RAMÀ»
A15°¡ 0À϶§ ¼±Åõǵµ·Ï Çϱâ À§Çؼ ÀÔ´Ï´Ù. ±×¸®°í A15°¡ 1À϶§´Â
I/O°¡ ¼±Åõǵµ·Ï ²Ù¸ç ³õ¾Ò½À´Ï´Ù. ±×¸² 4¸¦ º¸½Ê½Ã¿ä.
< Address for RAM >
A15 A0 A15 A0
binary : 0000 0000 0000 0000 ~ 0111 1111 1111 1111
hex : 0 0 0 0 ~ 7 F F F
< Address for I/O >
A15 A0 A15 A0
binary : 1000 0000 0000 0000 ~ 1111 1111 1111 1111
hex : 8 0 0 0 ~ F F F F
±×¸² 4¿¡¼ Á» ƯÀÌÇÑ °ÍÀº HC139ÀÇ enable ÇÉÀÎ 1¹ø ÇÉ°ú 15¹ø ÇÉ¿¡
°¢°¢ /RD¿Í /WRÀÌ ¿¬°áµÇ¾î ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù. ÀÌ°ÍÀº Ãâ·ÂÀ» °è¼Ó
À¯ÁöÇØÁÖ´Â ±â´ÉÀ» ÇÏ´Â Çø³Ç÷Ó(HC574)À̳ª ¿ÜºÎ ÀÔ·Â ½ÅÈ£°¡ µ¥ÀÌŸ
¹ö½º¸¦ Å» ¼ö ÀÖµµ·Ï ¹®À» ¿¾îÁÖ´Â ±â´ÉÀÌ ÀÖ´Â 3»óÅ ¹ö½º
¹öÆÛ(HC541)¸¦ µ¿ÀÛ ½ÃÅ°´Â ½ÅÈ£·Î »ç¿ëÇϱâ À§Çؼ ÀÔ´Ï´Ù. I/O ¼±ÅÃÀ»
»ìÆ캸¸é ¾Æ·¡¿Í °°½À´Ï´Ù.
< Àбâ Àü¿ë >
.541_EN
A15,A14 A13 ~ A0
binary : 1 0 0 ~ 0
hex : 8000H
.EX_RD
A15,A14 A13 ~ A0
binary : 1 1 0 ~ 0
hex : C000H
< ¾²±â Àü¿ë >
.574_EN
A15,A14 A13 ~ A0
binary : 1 0 0 ~ 0
hex : 8000H
.EX_WR
A15,A14 A13 ~ A0
binary : 1 1 0 ~ 0
hex : C000H
"¾î~¾î, ¾µ¶§¿Í ÀÐÀ»¶§ÀÇ ¹øÁö°¡ °°³×"
¸Â½À´Ï´Ù. ¸ðµÎ C000H ÀÔ´Ï´Ù. ÀÌ·¸°Ô Àü¿ëÀÇ Àбâ, ¾²±â´Â °°Àº
¹øÁö·Î ¼³°è°¡ °¡´ÉÇÕ´Ï´Ù. ¾²´Â ¸í·É°ú Àд ¸í·ÉÀÌ ´Ù¸§À¸·Î ÀüÇô
¹®Á¦°¡ ¾øÀ¸¸ç µµ¸®¾î ¾îµå·¹½º °ø°£À» È¿À²ÀûÀ¸·Î ¾µ ¼ö°¡ ÀÖ´Â °Í
ÀÔ´Ï´Ù. Âü°í·Î JS8051A º¸µå¿¡¼µµ ÀÌ¿Í ºñ½ÁÇÏ°Ô °°Àº ¹øÁö¸¦ Àаí
¾²Áö¸¸ ¹°¸®ÀûÀ¸·Î´Â ´Ù¸¥ ĨÀÌ µ¿ÀÛÇÏ°Ô µÇ¾î ÀÖ½À´Ï´Ù.
¾ÆÁ÷ ¾î¸®µÕÀýÇϽŠºÐÀº ¾Æ·¡ ¹®ÀåÀ» ¼Ò¸®³»¾î ¿¹ø ¹Ýº¹ÇØ ÀÐ°í ´Ù½Ã
Çѹø ÀÐÀ¸¼¼¿ä.
" ÇÁ·Î±×·¥ ¸Þ¸ð¸® ½ºÆäÀ̽º´Â 'ÇÇ¿¡½ºÀÌ¿£'À¸·Î ÀÐÀ» ¼ö¸¸ ÀÖ´Ù."
" µ¥ÀÌŸ ¸Þ¸ð¸® ½ºÆäÀ̽º´Â '¸®µå'·Î Àаí '¶óÀÌÆ®'·Î ¾´´Ù."
[12] Ĩ ¼±Åà ¹æ¹ý. 11/17 18:34 72 line
Ĩ ¼±ÅÃ
"»ç½Ç ¾ó·î¶×¶¥ ³Ñ¾Æ°¡·Á Çߴµ¥ Áú¹®À» ÇϽô ±º¿ä. ~ÂÁ"
¸ÕÀú µðÄÚµùÀ̶ó´Â ¸»ÀÇ °³³äÀ» ÀâÀ»±î¿ä.
ÀüÀÚȸ·Î¿¡¼ÀÇ µðÄÚµù(decoding)À̶õ ÀÔ·ÂµÈ Äڵ带 Çؼ®Çؼ ƯÁ¤
´ë»ó¿¡°Ô ¼±Åà ½ÅÈ£¸¦ ÁÖ´Â ±â´ÉÀ» ¸»ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é ÀüȹøÈ£¸¦
´©¸£¸é ±× ÀüÈ ¹øÈ£¸¦ °®°í ÀÖ´Â ÇØ´ç Àüȱ⿡ º§ÀÌ ¿ï¸³´Ï´Ù. À̶§
ÀüȹøÈ£´Â (¾îµå·¹½º) Äڵ忡 ÇØ´çµÇ°í º§½ÅÈ£´Â ¼±Åà ½ÅÈ£¿¡
ÇØ´çµË´Ï´Ù. ´ëÃæÀº ¾Æ½Ã°ÚÁö¿ä. Âü°í·Î µðÄÚµù¿¡ ¹Ý´ëµÇ´Â ¿£ÄÚµù
(encoding)À̶ó´Â ¸»ÀÌ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é Ä¿ÇÇ ÀÚÆDZ⿡ ¼±ÅÃ
½ºÀ§Ä¡°¡ 4°³°¡ ÀÖ´Ù¸é 1¹ø ¹ÐÅ© Ä¿ÇǸ¦ ´©¸£¸é 4°³ÀÇ ½ºÀ§Ä¡¿Í ¿¬°áµÈ
¿£ÄÚ´õÀÇ Ãâ·Â¿¡´Â 00(binary)ÀÌ ³ª¿É´Ï´Ù. ±×¸®°í 4¹ø Ä«ÇÁÄ¡³ë¸¦
´©¸£¸é 11(binary)ÀÌ Ãâ·ÂµË´Ï´Ù. ÀÌ·¸µíÀÌ ÄÚµåȸ¦ ÇÏ°Ô µÇ¸é ½ÅÈ£
¶óÀÎÀ» Àý¾àÇÒ ¼ö ÀÖ°í ¿ì¸®°¡ ¾Ë¾Æº¸±â°¡ ½¬¿î °ªÀÌ µË´Ï´Ù. ´ç¿©È÷
½ÅÈ£ ó¸®¹× ÇÁ·Î±×·¥µµ ÆíÇØ Áö°ÚÁö¿ä.
___________
| |--
| |--
4 ==> | decoder |-- \ /
| |----- o 4¹ø ¼±¿¡ ºÒÀÌ µé¾î¿Â´Ù.
|___________|-- / \
___________
--| |
--| |
--| encoder | ==> 4(100b)°¡ Æ¢¾î ³ª¿Â´Ù.
4 ¹øÀ» ´·¶´Ù o --| |
--|___________|
´ëÃæ °¨Àº Àâ¾ÒÁö¿ä.( »ç°ú¸¦ ÀâÀ¸¸é ¾ÈµÊ )
CPU°¡ ·Ò, ·¥, I/O µî ĨÀ» ¼±ÅÃÇϴµ¥´Â ¾îµå·¹½º ½ÅÈ£¸¦ µðÄÚµùÇÏ´Â
¹æ¹ýÀÌ ÀϹÝÀûÀ¸·Î »ç¿ëµË´Ï´Ù. Ĩ ¼±ÅÃȸ·Î´Â CPU ¸¶´Ù ½ÅÈ£¼±ÀÌ
¾à°£¾¿ ´Ù¸£°í ¾ï¼¼½º ŸÀÓÀ̶ó´Â ÀÌ»óÇÑ ÆĶó¹ÌÅÍ°¡ ³¢¾î µé±â ¶§¹®¿¡
CPU ¸¶´Ù ´Ù¸¨´Ï´Ù. °°Àº CPU¶óµµ ¼Óµµ¿¡ µû¶ó¼µµ ´Þ¶óÁú ¼ö°¡ ÀÖÁö¿ä.
Ãʺ¸ÀÚ´Â °Å±â±îÁö´Â °ÆÁ¤ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. ÀÏ´Ü ±âºÐ ³ª»Ú´õ¶óµµ
³²ÀÌ ±×·ÁÁØ È¸·Îµµ¸¦ º¸°í ¸¸µå½Ê½Ã¿ä.( <-- " ÀÌÀÚ½ÄÀÌ ³» ÀÚÁ¸½É
°Çµå¸®³× " - Ãʺ¸ÀÚ ¿Ð)
ÀüÇüÀûÀΠĨ ¼±Åà ¹æ¹ýÀ» ´ëÃæ Á¤¸®Çϸé
1. /CS¸¦ Ç׽à enable ½ÃŲ´Ù.
2. /CS¿¡ address line Áß¿¡ Çϳª¸¦ ¹Ù·Î ¿¬°áÇÑ´Ù.
3. /CS¿¡ address line ¸î°³¸¦ Á¶ÇÕ( AND, OR, NOR ...)Çؼ ³Ö¾îÁØ´Ù.
4. Àü¿ë µðÄÚ´õ( HC138, HC139, HC154)¸¦ »ç¿ëÇÑ´Ù.
5. CLK ¶Ç´Â 3»óÅ ¹öÆÛ enable ÇÉ¿¡´Â address¿Í /RD, /WRµîÀÇ Á¦¾î
½ÅÈ£¸¦ Á¶ÇÕÇؼ ³Ö¾î ÁØ´Ù.
6. ºñ±³±â( HC688... )¸¦ »ç¿ëÇÑ´Ù.
7. PLD( PAL, GAL ... )¸¦ »ç¿ëÇÑ´Ù.
8. CPUÀÚü I/O ÇÉÀ» ¹Ù·Î ¿¬°áÇÑ´Ù.
ÀÌ Á¤µµ°¡ µÇ°Ú±º¿ä.( Ȥ½Ã ´õÀÖ³ª ? )
ÀÌÁß¿¡ HC138°ú HC139´Â °¡Àå Àß ¾Ë·ÁÁ® Àִ ĨÀ̶ó µû·Î ¼³¸íÀº
¾ÊÇÏ°Ú½À´Ï´Ù. ÇÑ°¡Áö Á¶¾ðÀ» ÇÏÀÚ¸é ¼±ÅÃÀÔ·Â( A,B,C,D )¿¡´Â ²À
address¸¦ ³Ö¾î¾ß ÇÏ°í enable( G1, /G2A, /G2B )¿¡´Â ²À VCC³ª GND¸¦
¿¬°áÇØ¾ß ÇÑ´Ù´Â °íÁ¤°ü³äÀº ¹ö¸®½Ê½Ã¿ä.
¿©±â±îÁö ÀÐ°í³ª¼ ¾î¶»°Ô º¸¸é ¾Ë°Íµµ °°°í, ¾î¶»°Ô º¸¸é ¸ð¸¦ °Íµµ
°°Àº ºÐÀº ±×³É ³Ñ¾î °¡¼¼¿ä. ºÎ´ã °®Áö ¸»°í.
Ãß½Å) ¾Æ´Â ºÐµµ ±×³É ³Ñ¾î°¡½Ã°í, ¸ð¸£´Â ºÐµµ ±×³É ³Ñ¾î °¡¼¼¿ä.
[13] ½Ã¸®¾ó Ĩ°ú ÆнºÄÜÀ» ´ÞÀÚ. 11/17 18:49 54 line
½Ã¸®¾ó °ú ÆнºÄÜ
½Ã¸®¾ó (RS-232C) µå¶óÀ̹ö, ¸®½Ã¹ö
´Ùµé ¾Æ½Ã´Ù½ÃÇÇ µðÁöÅ» ȸ·Î¿¡¼´Â ÀϹÝÀûÀ¸·Î high ¶Ç´Â logic 1Àº
5V·Î low ¶Ç´Â logic 0´Â 0V·Î ½ÇÇöÀ» ÇÕ´Ï´Ù.( ¿äÁòÀº high¸¦ 3.3V
·Îµµ ¸¹ÀÌ ½ÇÇöÇÏÁö¸¸ ¾ÆÁ÷Àº ¼Óµµ¿¡¼ ¹®Á¦°¡ ÀÖÁö¿ä. ) ÀÌ·¯ÇÑ ±ÔÄ¢Àº
µðÁöÅ» ĨÀÇ ÀԷ°ú Ãâ·Â¿¡ ¸ðµÎ Àû¿ëµË´Ï´Ù. ÇÏÁö¸¸ Åë½ÅÀ̶ó´Â Ư¼öÇÑ
¿ëµµ¿¡¼´Â 5V, 0V ±Ô°ÝÀ» »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ¿Ö³ÄÇÏ¸é ±×·±
±Ô°ÝÀ¸·Î´Â °í¼ÓÀ¸·Î ¸Õ °Å¸®( 1 m ÀÌ»ó)¸¦ °¡´Âµ¥ ¹®Á¦ Àֱ⠶§¹®
ÀÔ´Ï´Ù. ±×·¡¼ Á»´õ ¸Õ°Å¸®¸¦ ºü¸£°Ô º¸³¾ ¼ö ÀÖ´Â ¿©·¯°¡Áö Åë½Å
±Ô°ÝÀ» ¿©·¯ ¼±¹è´Ôµé( EIA )ÀÌ ±ÔÁ¤À» Çß½À´Ï´Ù. ±× Áß¿¡ È÷Æ®¸¦ Ä£
°ÍÀÌ ¿©·¯ºÐÀÇ ÄÄÇ»ÅÍ¿¡ ºÙ¾î ÀÖ´Â RS-232C¶ó´Â ±Ô°Ý ÀÔ´Ï´Ù. ¸¶¿ì½º³ª
¿ÜÀå ¸ðµ© ¿¬°áÇÏ´Â µ¥ ¸¹ÀÌ ¾²ÀÌ Àܾƿä. °³ÀÎÀûÀ¸·Î´Â Åë½Å °Å¸®°¡
º°·Î ¾ÈµÇ º°·Î ÁÁ¾ÆÇÏÁö ¾Ê½À´Ï´Ù¸¸, ¾î°µç Çϵå¿þ¾î¸¦ Çϱâ·Î
ÇÏ¼Ì´Ù¸é ¹Ýµå½Ã Á¤º¹ÇؾßÇÒ ³·Àº ¾ð´ö(?) ÀÔ´Ï´Ù. RS-232C ±Ô°Ý¿¡¼´Â
high, low³ª 1, 0 À̶ó´Â ¸» º¸´Ù´Â 'marking', 'spacing'¶ó´Â ¸»À»
¾¹´Ï´Ù. ¸¶Å·Àº -3V ~ -15V »çÀ̸¦ ½ºÆäÀ̽ÌÀº +3V ºÎÅÍ +15V ±îÁö¸¦
¸»ÇÕ´Ï´Ù.
80C31¿¡µµ ´Ù¸¥ CPU¿Í Åë½ÅÇÒ ¼ö ÀÖµµ·Ï ½Ã¸®¾ó ´ÜÀÚÀÎ RXD, TXD ÇÉÀ»
Á¦°øÇÕ´Ï´Ù. ÀÌ ÇɵéÀÇ ÀÔ,Ãâ·Âµµ ¿ª½Ã 1°ú 0ÀÌ µðÁöÅ» ĨÀÇ ÀϹß
±Ô°ÝÀÎ 5V¿Í 0V¸¦ µû¸¨´Ï´Ù. Àû¾îµµ Á¦°¡ ¾Æ´Â CPUµéÀº RS232C ±Ô°ÝÀ»
¹Ù·Î Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. ±×·¡¼ ¿ì¸®°¡ ±× ÀÛ¾÷À» ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù.
±×·± ÀÛ¾÷À» ÇÏ´Â ½Ã¸®¾ó Àü¿ë µå¶óÀ̹ö/¸®½Ã¹ö¿¡´Â ¿ì¸®¿¡°Ô Ä¿ÇÇ·Î
´õ Àß ¾Ë·ÁÁø ¸Æ½É(MAXIM) »çÀÇ MAX232¶ó´Â ĨÀÌ ¼±µÎ ÁÖÀÚ ÀÔ´Ï´Ù.(
Á¤¸» óÀ½ ³ª¿ÔÀ»¶§ ´ë´ÜÇß´Ù´Â Àü¼³ÀÌ ÀÖÀ½ ). Áö±ÝÀº ¸¹Àº ´Ù¸¥
ȸ»ç( ÇÁ¸² ¸¸µå´Â ȸ»ç, ¼³ÅÁ ¸¸µå´Â ȸ»ç µîµî )¿¡¼µµ »ý»ê ÇϹǷÎ
±¸Áö ¸Æ½ÉÀ» ÁÖÀåÇÏÁö´Â ¸¶½Ê½Ã¿ä. MAX232ÀÇ Æ¯Â¡Àº ´ÜÀÏ Àü¿ø 5V¸¦
»ç¿ëÇؼ ÀÔ·Â ½ÅÈ£(5V, 0V)¿¡ µû¶ó 10V¿Í -10V¸¦ ¸¸µé¾î ÁشٴÂ
°ÍÀÔ´Ï´Ù. ³»ºÎÀÇ ½ºÀ§Äª ȸ·Î¿Í ¿ÜºÎ¿¡ ºÎÂøÇÑ Äܵ§¼ 4°³ ( Àß
»ý°¢ÇÏ¸é ¿Ö 4°³ÀÎÁö ³ª¿ÃÅÙµ¥...)¸¦ »ç¿ëÇÏ¿© ¹èÀü¾Ð ȸ·Î¿¡¼ 10V¸¦
¸¸µé¾î ³»°í Àü¾Ð ¹ÝÀü ȸ·Î¿¡¼ -10V¸¦ ¸¸µé¾î ³À´Ï´Ù. ( ¸ô¶óµµ µÊ )
±×¸² 7°ú °°ÀÌ Á¦ÀÛ ÇÒ¶§ Äܵ§¼ÀÇ ¹æÇâÀ» ÁÖÀÇ ÇϽʽÿä.
ÆнºÄÜ
'ÆнºÄÜ'ÀÌ ¹¹³Ä±¸¿ä. ¿ø·¡ Á¤½Ä ¸íĪÀº bypass condencer·Î µðÁöÅ»
º¸µå¿¡¼´Â °¨ÃÊ °°Àº ±â´ÉÀ» ÇÏÁö¿ä. ±×¸² 5¸¦ º¸½Ã¸é ¿À¸¥ÂÊ¿¡ ¹«±Ø¼º
Äܵ§¼°¡ 7°³°¡ ÀÖÁö¿ä(" ¿¡°í,¿¡°í Çϳª ºü¶ß·È³× ĨÀÌ 8°µµ¥. ").
¿ë·®Àº 104 = 0.1uF ÀÌ°í¿ä. Äܵ§¼ÀÇ Á¦ÁúÀº »ó°ü ¾ø½À´Ï´Ù. Á¦À۽à °¢
DIP ĨÀÇ VCC´ÜÀÚ¿Í GND´ÜÀÚ¿¡ °¡´ÉÇÏ¸é °¡Àå °¡±îÀÌ ´Þ¾Æ Áֽʽÿä.
ÆнºÄÜÀ» ¾È´Þ¾ÆÁشٰí Çؼ º¸µåÀÇ µ¿ÀÛ¿¡ Áö´ëÇÑ ¿µÇâÀ» ÁÖÁö´Â
¾ÊÁö¸¸ º¸µå³»ÀÇ noise immunity( ÀâÀ½¿¡ °ßµð´Â ´É·Â )¸¦ Çâ»ó ½ÃÄÑ
ÁÝ´Ï´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº ´Ù¸¥ ±âÃÊ ¼ÀûÀ» Âü°í ÇϽʽÿä.
Æ÷Æ® Ä¿³ØÅÍ ÇØ´õ JP5, JP6´Â ÀÚ½ÅÀÌ ÁÁ¾ÆÇÏ´Â ½ºÅ¸ÀÏÀÇ ÇØ´õ¸¦
»ç¿ëÇÏ¿© Á¶¸³ÇϽʽÿä.
Q&A] Polling ±â¹ýÀÇ Å¸ÀÌ¸Ó »ç¿ë. 11/17 18:51 91 line
- OHMZ´Ô Áú¹®
¾È³çÇϽʴϱî? â¿ø´ë Àü±â°ú¿¡ ´Ù´Ï´Â ÇлýÀÔ´Ï´Ù.
À̹ø Çб⿡ 8051 ÇÁ·Î±×·¡¹ÖÀ» ¹è¿ì´Âµ¥
Àúµµ °ü½ÉÀÌ ¸¹¾Æ µÎ¹øÀ̳ª ¸¸´É±âÆÇ¿¡ ¸¸µé¾ú´Âµ¥ ½ÇÆÐÇؼ
°»ç´Ô ¼Ò°³·Î ¹Ï°í Å°Æ®¸¦ ÁÖ¹® Çß½À´Ï´Ù.
ÇÏÁö¸¸ ¸¸µç°Ô ³Ê¹« ¾Æ±î¿ö¼ ºÎÇ°µµ ±×·¸°í, ºÐ¸íÈ÷ ±×´ë·Î
¿¬°áÇߴµ¥... ´Ù¸¥ »ç¶÷µéÀº µ¹¾Æ°¡´Âµ¥ Á¤¸» ¹ÌÄ¡°Ú½À´Ï´Ù.
ÀÚ²Ù ¹°¾îº¸·¯ ´Ù´Ï´Â °Íµµ âÇÇÇÏ°í¿ä. ¾î¶»°Ô ÁÁÀº ¹æ¹ýÀÌ
¾ø´ÂÁö¿ä? ¹ö±× Àâ´Â È®½ÇÇÑ ¹æ¹ýÁ» °¡¸£ÄÑ ÁÖ¼¼¿ä.
µµÅë°Ë»ç´Â Ç߰ŵç¿ä.. ¿À½Ç·Î ½ºÄÚÇÁ·Î Çصµ Á¤È®ÇÑ ÆÄÇüÀ» ¸ð¸£´Ï.
´õ Áß¿äÇÑ Áú¹®ÀÌ ÀÖ½À´Ï´Ù. ´ÙÀ½°ÀÇ¿¡ ÀÖ´ÂÁö ¸ð¸£Áö¸¸.
¾îÁ¦ ŸÀ̸ӷΠLED ±¤°íµî Á¦¾î¸¦ Ç߰ŵç¿ä. ´Ù¸¥°Ç ±×·°Àú·°
ÀÌÇØ°¡ °¡´Âµ¥, Å©¸®½ºÅ» ÆÞ½º¸¦ ÀÌ¿ëÇÑ DELAY TIMEÀº Á¤¸»
ÇØ°¡ °¡Áö ¾Ê½À´Ï´Ù. 12¸Þ°¡ Å©¸®½ºÅ»À» »ç¿ëÇؼ Çϴµ¥
Á¤¸» ¸ð¸£°Ú½À´Ï´Ù. °ÀǶ§ µéÀ¸´Ï 13ºñÆ®¸¦ ÀÌ¿ëÇÑ ´Ù°í Çϴµ¥
¹«½¼ ¸»ÀÎÁö Á¤¸» ¸ð¸£°Ú½À´Ï´Ù.
Á¦¹ß ¾Æ·¡ ¸í·É¾î ¼³¸í Á» ºÎŹµå¸³´Ï´Ù.. Á¦¹ß...
- ´äº¯
Àúµµ ´ëÇб³ 1Çгට Z-80À» ¸¸´É ±âÆÇ¿¡ Á¦ÀÛÇÑ ÀûÀÌ ÀÖ¾ú´Âµ¥ ½ÇÆÐÇÑ
°æÇèÀÌ ÀÖ½À´Ï´Ù. ÀÌÀ¯´Â Ã¥¿¡´Â µ¥ÀÌŸ ¹ö½º ¹öÆÛ¿Í ¾îµå·¹½º ¹ö½º
¹öÆÛ°¡ ¸ðµÎ ÀÖ´Â »ó´çÈ÷ Å« ½Ã½ºÅÛ Àε¥ Ãʺ¸ÀÚ°¡ ¹«Åδë°í ¶«ÁúÀ¸
½ÃÀÛÇßÀ¸´Ï... Àü¼±µµ ±½Àº °ÍÀ» »ç¿ëÇÏ¿© ¸¸´É±âÆÇÀÌ Á¡Á¡ µÎ²¨¿ö
Áö´õ±º¿ä.
Á×Àº º¸µå¸¦ »ì¸®´Â ¹æ¹ýÀº Çϵå¿þ¾î °Á°¡ ³¡³ ÈÄ¿¡ ¿Ã¶ó °¡¾ßÇÒ
°Á¶ó ÀÏ´Ü °£´ÜÇÏ°Ô ¾Ë·Á µå¸®°Ú½À´Ï´Ù.
¸ÕÀú ¶« »óŸ¦ È®ÀÎ ÇϽʽÿä.
ÀÚÀÛÀÎ °æ¿ì´Â ȸ·Îµµ¿Í ´ëÁ¶ÇØ °¡¸é¼ ²Ä²ÄÈ÷ ¿¬°áÀ» È®ÀÎ ÇϽʽÿä.
ĨÀÇ VCC¸¦ ¸ðµÎ È®ÀÎ ÇϽʽÿä.
18,19 ¹ø¿¡ Ŭ·°À» È®ÀÎ ÇϽʽÿä.
9¹øÀÇ ¸®¼ÂÀ» È®ÀÎ ÇϽʽÿä. ÆÄ¿ö ¿Â ¸®¼ÂÀÌ °É·Á¾ß ÇÕ´Ï´Ù.
¸¸ÀÏ 80C31À̸é 31¹ø(/EA) ÇÉÀÌ Àý´ë·Î GND¿¡ ¹°·Á ÀÖ¾î¾ß ÇÕ´Ï´Ù.
80C31À̸é 29¹ø(PSEN) ÇÉ°ú 30¹ø(ALE) ÇÉÀº ROMÀÌ ÀÖ´ø ¾ø´ø°£¿¡ ¹«Á¶°Ç
±¸ÇüÆÄ°¡ ³ª¿Í¾ß ÇÕ´Ï´Ù.
Á¤ ¾ÈµÇ¸é, JS8051A¸¦ ±¸ÀÔÇÏ½Å´Ù´Ï ¸ÕÀú JS8051A·Î Çб³¿¡¼ ÇÏ´Â °øºÎ¸¦
¸ÕÀú µû¶ó °¡½Ê½Ã¿ä. ¾Æ·¡ ¿¹Á¦¸¦ º¸´Ï Port 1 ÀüºÎ¸¦ ¾²´õ±º¿ä. JS8051A
¿¡¼´Â P1.7 ºñÆ®´Â º¸µå°¡ »ç¿ëÇÕ´Ï´Ù. ±×·¡µµ ¾²½Ã°Ú´Ù¸é 16V8ÀÇ 9¹øÇÉ
¸¸À» ¾à°£ ¹ÛÀ¸·Î ¹ú·Á¼ ¼ÒÄÏ¿¡¼ »©½Ê½Ã¿ä. ±×¸®°í ·Ò¿¡ ÇÁ·Î±×·¥À» ±¸¿ö¼
µ¹·Á¾ß ÇÕ´Ï´Ù. ÀÌÀ¯´Â JS8051A º¸µå¿¡¼ P1.7ÀÇ ¿¬°áÀ» Â÷´ÜÇϸé RAMÀ»
·Òó·³ »ç¿ëÇÒ ¼ö°¡ ¾ø¾îÁö°Ô µË´Ï´Ù.
¾Æ·¡ ÇÁ·Î±×·¥¿¡ ÁÖ¼®À» ´Þ¾Æ µå¸®°Ú½À´Ï´Ù.
( Polling ±â¹ýÀ» »ç¿ëÇÑ Å¸À̸ӷΠ¾ÕÀ¸·Î ÁøÇàµÉ °Á¸¦ ¹Ì¸® °øºÎ
ÇϽô ±º¿ä.)
org 0h
jmp start
;
start:
; * use timer 0 mode 0 *
mov tmod, #00000001b ; TIMER 0, MODE 1 »ç¿ë
clr c ; carry = 0
mov a , #11111111b ; Acc = 1111 1111
loop:
rlc a ; carry °ªÀÎ 0À» Acc¸¦ °ÅÃÄ
mov p1, a ; ºñÆ®´ÜÀ§·Î ¼øȯ ½ÃÄÑ¸é¼ Port 1
mov r5, #250 ; À¸·Î ³»º¸³½´Ù.
call delay jmp loop
; * delay time= (R5)*4 ms *
delay :
setb tr0 ; TIMER 0¸¦ µ¿ÀÛ ½ÃÄѶó.
again: mov t10, #(8192-4000).mod.32 ;16 ºñÆ® ŸÀ̸ÓÀÇ ÇÏÀ§ ¹ÙÀÌÆ®¿¡
mov th0, #(8192-4000)/32 ; ³ª¸ÓÁö »óÀ§ ¹ÙÀÌÆ®¿¡ ¸ò
wait:
jbc tf0, timeout ; ŸÀÌ¸Ó ¿À¹ö ÇÃ·Î¿ì ºñÆ®ÀÎ
jmp wait ; TF0¸¦ °Ë»çÇÏ¿© ¿À¹ö Ç÷οì
; À̸é TF0¿¡ 0À» ³Ö°í Å»Ãâ.
timeout:
djnz r5, again ; À§ÀÇ °úÁ¤À» R5ÀÇ °ª ¸¸Å ¹Ýº¹Çضó.
; ´Ü 0¹øÀ» ¼³Á¤Çϸé 256¹ø µ¹¾Æ¹ö¸°´Ù.
clr tr0 ; TIMER 0 Á¤ÁöÇضó.
ret
end
"´©±¸´Â ³¯¶§ºÎÅÍ 80C31 ¾Ë°í ³ª¿È´Ï±î. ±îÁþ°Å ÇÏ¸é µÇÁö. "
" OHMZ ÈÀÌÆÃ "
JS8051-A º¸Ãæ ¼³¸í¼ ¹öÀü¾þ Çß½À´Ï´Ù. 11/18 15:22 9 line
¾È³çÇϽʴϱî. JS8051AÀÇ Á¦ÀÛÀÚ ÀÔ´Ï´Ù.
JS8051-A º¸Ãæ ¼³¸í¼°¡ ¹öÀü 1.1·Î ÁÁ¾ÆÁ³½À´Ï´Ù.
ÀÚ·á½Ç¿¡ ÀÖÀ¸´Ï Ver 1.0À» °®°í ÀÖ´Â ºÐÀº ´Ù¿î ¹ÞÀ¸½Ê½Ã¿ä.
¾ÕÀ¸·Îµµ ´õ¿í ÁÁÀº JS-¾²¸®Áî°¡ µÇµµ·Ï ³ë·ÂÇÏ°Ú½À´Ï´Ù.
-Á¤¿ë¿ø ¿Ã¸²
±è°æ±Ù (maroboss)
[14] ´Ü¼ø ¾îµå·¹½º µðÄÚµù (JS8051A) 11/24 16:13 112 line
JS8051-AÀÇ Çϵå¿þ¾î
JS8051AÀÇ ±âÃÊÀûÀÎ ºÎºÐÀº ¾Õ¿¡¼ ¼³¸íÇÑ JSTEST º¸µå¿Í ºñ½ÁÇϹǷÎ
³ª¸ÓÁö ´Ù¸¥ ºÎºÐÀ» Áß½ÉÀ¸·Î ¼³¸í ÇÏ°Ú½À´Ï´Ù.
Ãʺ¸ÀÚµéÀÌ JS8051A º¸µå¸¦ µ¹¸®°í È°¿ëÇϴµ¥´Â ¾î·ÆÁö ¾ÊÁö¸¸
Çϵå¿þ¾î¸¦ 100% ÀÌÇØÇϴµ¥´Â ¾ÆÁ÷ ¹«¸®°¡ ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ ÇÑ°¡Áö
ÇÑ°¡Áö ¿½ÉÈ÷ ¹è¿ö³ª°¡´Ù º¸¸é JS8051Aµµ ±×¸® ³ôÀº ¾ð´öÀº ¾Æ´Ï¶ó°í
´À³¥¶§°¡ ¿Ã°Ì´Ï´Ù.
¼ø ¾îµå·¹½º µðÄÚµù ( HC138 DECODE )
JS8051AÀÇ Ä¨ ¼±Åà ¼ÒÀڷδ HC138°ú GAL( 16V8, PALÀ» ½áµµµÊ)ÀÌ »ç¿ë
µÇ¾ú½À´Ï´Ù. ±×¸² 8À» ÂüÁ¶ ÇϽʽÿä. HC138Àº Àü¿ë µðÄÚ´õ ĨÀ¸·Î
´Ü¼øÈ÷ »óÀ§ ¾îµå·¹½º ¸¸À» µðÄÚµùÇϴµ¥ »ç¿ëÇÏ¿´½À´Ï´Ù. ÁÖÀÇ ÇϽÇ
Á¡Àº ÃÖ»óÀ§ ¾îµå·¹½º ¶óÀÎÀÎ A15°¡ HC138ÀÇ Àο¡À̺í ÀԷ¿¡ ¿¬°áµÈ Á¡
ÀÔ´Ï´Ù. ÀÌ ÇÉ¿¡ ¿¬°áµÈ A15°¡ 1À̸é Á¤»óÀûÀ¸·Î A14, A13, A12·Î
¼±ÅÃÇÑ Ãâ·ÂÇÉ¿¡ low °ªÀ» ³»º¸³»Áö¸¸ A15°¡ 0À̸é HC138 ÀÚü°¡ ¾î¶°ÇÑ
ÀÔ·ÂÀÌ µé¾î¿Íµµ µ¿ÀÛÀ» ÇÏÁö ¾Ê°í ¸ðµç Ãâ·Â ÇÉÀ» high·Î ¸¸µì´Ï´Ù.
¾îµå·¹½º °üÁ¡¿¡¼ º¸¸é ´ÙÀ½°ú °°½À´Ï´Ù.
A15,A14,A13,A12 A11 ~ A0
0, x, x, x x .. x = 0000H ~ 7FFFH (µ¿ÀÛ¾ÈÇÔ)
A15,A14,A13,A12 A11 ~ A0
1, 0, 0, 0 x .. x = 8000H ~ 8FFFH ( Y0°¡ ¼±ÅõÊ)
1, 0, 0, 1 x .. x = 9000H ~ 9FFFH ( Y1°¡ ¼±ÅõÊ)
1, 0, 1, 0 x .. x = A000H ~ AFFFH ( Y2°¡ ¼±ÅõÊ)
1, 0, 1, 1 x .. x = B000H ~ BFFFH ( Y3°¡ ¼±ÅõÊ)
1, 1, 0, 0 x .. x = C000H ~ CFFFH ( Y4°¡ ¼±ÅõÊ)
1, 1, 0, 1 x .. x = D000H ~ DFFFH ( Y5°¡ ¼±ÅõÊ)
1, 1, 1, 0 x .. x = E000H ~ EFFFH ( Y6°¡ ¼±ÅõÊ)
1, 1, 1, 1 x .. x = F000H ~ FFFFH ( Y7°¡ ¼±ÅõÊ)
( x´Â don't care state ¶ó°í ºÎ¸£¸ç 0À̵ç 1ÀÌµç °ÆÁ¤ÇÏÁö ¸»¶ó´Â¶æ )
(ÀÌÇÏ Æò¾î¸¦ »ç¿ëÇÔ)
ÀÌ·¸°Ô Çؼ µðÄÚµåµÈ Ãâ·Â ÇÉ¿¡ ¿¬°áµÈ Ĩ¿¡ ƯÁ¤ ¹øÁö¸¦ ÇÒ´çÇÏ°Ô
µÇ´Â °ÍÀÌ´Ù. À§¿¡¼¿Í °°ÀÌ 8000H ~ 8FFFH ¹øÁöÁß ¾Æ¹« ¹øÁö³ª
¾ï¼¼½ºÇϸé( Àаųª ¾²¸é ) Ãâ·Â ÇÉ Y0°¡ ¼±ÅÃµÇ°Ô µÈ´Ù. JS8051A¿¡¼´Â
Y0¿¡ EEPROMÀÎ 28C16ÀÇ Ä¨ ¼±ÅÃ(/CE)ÀÌ ¿¬°áµÇ¾î ÀÖÀ¸¹Ç·Î ÀÌ Ä¨ÀÌ
¼±ÅõȴÙ. ±×·¯³ª ĨÀÌ ¼±ÅõǾî ÀÖ´Ù°í Çصµ ¹«Á¶°Ç ±× ĨÀÌ µ¿ÀÛÇÏ´Â
°ÍÀº ¾Æ´Ï´Ù. /RD, /WR, /PSEN°ú °°Àº Á¦¾î¼±µµ °°ÀÌ È°¼ºÈµÇ¾ß ±×¿¡
ÇØ´çÇÏ´Â µ¿ÀÛÀ» ÇÑ´Ù. µû¶ó¼ Ĩ¿¡ ÇÊ¿äÇÑ Á¦¾î¼±À» ¿¬°áÇØ ÁÖ¾î¾ß
ÇÑ´Ù. 28C16¿¡¼´Â /RD, /WR ÇÉÀÌ ÇÔ²² »ç¿ëµÈ´Ù.
¿©±â¼ ÇÑ°¡Áö µûÁö°í ³Ñ¾î°¡¾ß ÇÒ ¹®Á¦°¡ ÀÖ´Ù. 80C31ÀÌ Ãâ·ÂÇÏ´Â
¾îµå·¹½º¿¡´Â µÎ°¡Áö Á¾·ù°¡ ÀÖ´Ù. Program Memory Space¸¦ À§ÇÑ, ½±°Ô
¸»ÇØ ·ÒÀ» ÀбâÀ§ÇÑ ¾îµå·¹½º¿Í Data Memory Space¸¦ À§ÇÑ Áï ·¥°ú
I/O¸¦ À§ÇÑ ¾îµå·¹½º°¡ ÀÖ´Ù. µû¶ó¼ À§¿Í°°Àº '´Ü¼ø ¾îµå·¹½º
µðÄÚµù'¿¡¼´Â ¾îµå·¹½º Á¾·ù¿¡ °ü°è¾øÀÌ ¹«Á¶°Ç µðÄÚµùÀ» Çϱ⠶§¹®¿¡
µðÄÚµùµÈ ¹øÁö°¡ Program Memory Space¿¡ ¼ÓÇÏ´ÂÁö Data Memory Space¿¡
¼ÓÇÏ´ÂÁö´Â °áÁ¤µÇÁö ¾Ê´Â´Ù. ¾Æ´Ï, ¾çÂÊ ¸Þ¸ð¸® °ø°£ÀÇ ¹øÁö ¸ðµÎ¸¦
µðÄÚµåÇÏ¿© Ãâ·ÂÇØ ¹ö¸°´Ù. µû¶ó¼ µðÄÚ´õÀÇ Ãâ·ÂÀÌ /RD, /WR¿Í °°ÀÌ
»ç¿ëµÇ°Å³ª µÑ Áß¿¡ Çϳª¿Í °°ÀÌ »ç¿ëµÈ´Ù¸é ±× ¼±ÅÃµÈ Ä¨Àº Data
Memory Space¿¡ À§Ä¡ÇÏ°Ô µÇ´Â °ÍÀÌ°í, /PSEN°ú °°ÀÌ »ç¿ëµÇ¸é Program
Memory Space¿¡ À§Ä¡ÇÏ°Ô µÇ´Â °ÍÀÌ´Ù.( Àü¹®¿ë¾î·Î ¸Þ¸ð¸® ¸ÊÇÎÀ̶ó
ÇÑ´Ù.)
_______ ________
| |
Y0 |--------------------| /CE
| |
| /RD --| /RD
| |
| /WR --| /WR
_______| |________
HC138 ÀÀ¿ë Ĩ
(ĨÀº 64K byteÀÇ Data Memory Space Áß¿¡ 8000H ~ 8FFFHÀ» ÇÒ´ç ¹Þ´Â´Ù.)
_______ ________
| |
Y0 |--------------------| /CE
| |
| |
| /PSEN --| /OE
| |
_______| |________
HC138 ÀÀ¿ë Ĩ
(ĨÀº 64K byteÀÇ Program Memory Space Áß¿¡ 8000H ~ 8FFFHÀ» ÇÒ´ç ¹Þ´Â´Ù.)
JS8051A¿¡¼´Â HC138ÀÇ Ãâ·Â 8°³ Áß¿¡ 2°³¸¦ º¸µå°¡ »ç¿ëÇÏ°í 6°³¸¦
»ç¿ëÀÚ¿ëÀ¸·Î Á¦°øÇÕ´Ï´Ù. ÇÉ À̸§Àº R&W_CS1 ~ R&W_CS6 ÀÔ´Ï´Ù.
±×·³, Áú¹®À» ¸î°¡Áö ÇÏ°Ú½À´Ï´Ù. À§´Â º¸Áö¸»°í ȸ·Îµµ¸¸ º¸°í
´äÇϽʽÿä.
1. 28C16Àº ¾î¶² ¸Þ¸ð¸® °ø°£¿¡ À§Ä¡ÇÏ¸ç ¾î¶²¹øÁö¸¦ °®½À´Ï±î?
2. A123H ¹øÁö¿¡ '3'À» ½á³Ö´Â´Ù¸é ¾î¶² ¼±Åà ÇÉÀÌ È°¼º¿Í µË´Ï±î?
3. 27C32( 4K byte )¸¦ Program Memory SpaceÁß¿¡ E000H ~ EFFFH ¹øÁö¿¡
ÇÒ´çµÇµµ·Ï Çغ¸½Ê½Ã¿ä.( ÁøÂ¥ ¿¬°áÇÏÁö´Â ¸¶½Ã¿À, Ãæµ¹ÇÔ )
½ÇÁ¦ JS8051AÀÇ Program Memory Space´Â ²Ë Â÷ÀÖ½À´Ï´Ù. µû¶ó¼
Ãʺ¸ÀÚµéÀº ´Ù¸¥ ¸Þ¸ð¸®³ª I/O¸¦ ±×°÷¿¡ ¹èÄ¡ÇÏ¸é ¾ÈµÊ´Ï´Ù. ¹°·Ð
80C31¿¡´Â ³¯°í, ±â´Â ºÐµéÀº ¹èÄ¡Çصµ µË´Ï´Ù. ¸»ÀÌ Á» ÀÌ»óÇÏ°Ô
µé¸®°ÚÁö¸¸ Ãʺ¸ºÐµéÀº À§ÀÇ HC138 Ãâ·ÂÀ» Data Memory Space¿¡¸¸
¹èÄ¡ÇÏ¿© »ç¿ëÇϼ¼¿ä.
JS8051AÀÇ °¡Àå Å« Ư¡Àº ¾öû³(?) È®À强 ÀÔ´Ï´Ù. À§¿¡¼ º¸½Å °ÍÀº
±×Áß¿¡ ÀϺÎÀÌ¸ç ¸¹Àº ¿ëµµÀÇ ½Ç¹«¿¡µµ ¹Ù·Î Àû¿ëÇÒ ¼ö ÀÖµµ·Ï ¿©·¯
Á¦¾îÇÉ°ú ¹Í½ºµÈ Ĩ ¼±Åà ½ÅÈ£¼±µîÀÌ Á¦°øµË´Ï´Ù.
[15] ·Ò ¿¬°á¿¡ ´ëÇÏ¿© (JS8051A) 11/24 16:14 95 line
·Ò ¿¬°á¿¡ ´ëÇÏ¿©
JS8051A¿¡¼µµ ·ÒÀº 27C256( 32K byte )¸¦ »ç¿ëÇÏÁö¸¸ JP4¸¦ ¹Ù²Ù¸é
Á¤»óÀûÀ¸·Î »ç¿ë°¡´ÉÇÑ Program Memory SpaceÀÇ ÃÖ´ë ¿ë·®À» Â÷ÁöÇÏ´Â
27C512( 64K byte )¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
27C256À» »ç¿ëÇÏ¸é ³ª¸ÓÁö 32K byteÀÇ ºñ»ç¿ë ¸Þ¸ð¸® °ø°£Àº ºñ¾î ÀÖ°Ô
µË´Ï´Ù. µû¶ó¼ ¾Õ¿¡¼ ¹è¿î °Íó·³ ROMÀÇ ¼±Åà ½ÅÈ£ÀÎ /CE¸¦ GND¿¡
¹Ù·Î ¿¬°áÇÏ¿© Ç×»ó ¼±ÅûóÅ·ΠÇسõ¾Æµµ µË´Ï´Ù. ±×·±µ¥ JS8051A¿¡¼´Â
RAMÀ» ROMó·³ ¾µ ¼ö ÀÖµµ·Ï Ưº°ÇÑ Çϵå¿þ¾î°¡ µé¾î ÀÖ½À´Ï´Ù.
JS8051A¿¡¼ »ç¿ëÇÑ ¹æ¹ý¿Ü¿¡ ÈξÀ °£´ÜÇÑ ¹æ¹ýÀ¸·Îµµ RAMÀ» ROMó·³ ¾µ
¼ö ÀÖÁö¸¸ ±×·± ¹æ¹ýµéÀº ¸î°¡Áö ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù. ±×·± ¸î°¡Áö
´Ù¸¥¹æ¹ýÀ» ¾Æ½Ã´Â ºÐµéÀº Á¦°¡ »ç¿ëÇÑ ¹æ¹ý°ú ¾î¶»°Ô ´Ù¸¥Áö
ºñ±³ÇÏ¸é¼ º¸½Ê½Ã¿ä.
80C31¿¡´Â PC(program counter) ¶ó´Â ·¹Áö½ºÅÍ°¡ ÀÖ´Ù°í Çß´Àµ¥ ÀÌ
·¹Áö½ºÅÍ´Â ´ë¿ÜÀûÀ¸·Î ³ªÅ¸³ª ÀÖÁö ¾Ê½À´Ï´Ù. ´Ù½Ã ¸»ÇÏ¸é ´Ù¸¥
·¹Áö½ºÅ͵é ó·³ ƯÁ¤ ³»ºÎ ¸Þ·Î¸® ¹øÁö°¡ ÇÒ´çµÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù.(
Àü¹® ¿ë¾î·ÎÇÏ¸é ¸Þ¸ð¸® ¸Êµå ·¹Áö½ºÅÍ°¡ ¾Æ´Õ´Ï´Ù.) µû¶ó¼ SFR¿¡
¼ÓÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ ·¹Áö½ºÅÍ´Â ¿ì¸®°¡ ¸¶À½µ¥·Î °ªÀ» Àаųª ¼³Á¤ÇÏÁö
¸øÇÕ´Ï´Ù. ÇÁ·Î±×·¥ÀÇ ½ÃÀÛ ºÎÅÍ ³¡³¯¶§±îÁö CPU ÀÚü°¡ °ü¸®¸¦ ÇÏÁö¿ä.
PCÀÇ ÁÖµÈ ¿ªÇÒÀº ´ÙÀ½¿¡ Àоî¿Ã ·Ò( ´õ¿í Á¤È®È÷ ÇÏÀÚ¸é Program
Memory Space )ÀÇ ¹øÁö¸¦ ¹¬¹¬È÷ °¡Áö°í ÀÖ½À´Ï´Ù.( ¾ê±â°¡ ´õ ÀÖÁö¸¸
ÀÌÁ¤µµ·Î ÁÙÀÌ°Ú½À´Ï´Ù. ) ¸®¼Â Á÷ÈÄ PCÀÇ °ªÀº 0000H¸¦ °¡Áö°Ô µË´Ï´Ù.
µû¶ó¼ CPU´Â ½ÃÀÛ°ú µ¿½Ã¿¡ ¹«Á¶°Ç ROMÀÇ 0000H ¹øÁö¸¦ Àоî
µéÀÌ·Á°íÇÕ´Ï´Ù. ±×·¯¹Ç·Î ½Ã½ºÅÛ ¼³°èÀÚ´Â CPU°¡ ÇÏ·Á´Âµ¥·Î ÇÒ ¼ö
ÀÖµµ·Ï ¿ÜºÎ ȸ·Î¸¦ ¼³°èÇØ¾ß ÇÕ´Ï´Ù.
(JS8051AÀÇ Ãʱ⠹öÀü¿¡´Â ·¥À» ·ÒÀ» ó·³ »ç¿ëÇÒ ¼ö ¾ø¾ú½À´Ï´Ù.)
Àú´Â ÀÌ·¸°Ô »ý°¢ Çß½À´Ï´Ù. " ROMÀÇ ¾îµå·¹½º °ø°£À» ¸ðµÎ ¾µ ¼ö
ÀÖÀ¸¸é¼ ÇÊ¿ä½Ã¿¡´Â RAMÀ» ROMó·³ ¾µ ¼ö ¾øÀ»±î?." ±×·¡¼ /RD, /WR,
/PSENÀ» ³õ°í »ý°¢À» Çß½À´Ï´Ù. ¸î°¡Áö ·ÎÁ÷ÀÌ ÀÖÀ¸¸é °¡´ÉÇÏ°Ú´õ±º¿ä.
±×¸®°í ÇÑ°¡Áö ´õ, ¸®¼Â Á÷ÈÄ È®Á¤µÈ °ª( 0 ÀÌ´øÁö 1 ÀÌ´øÁö ¹«°üÇÔ )
À» °¡Áö¸é¼ ³» Àǵµ´ë·Î ¹Ù²Ü¼ö ÀÖ´Â °ªÀÌ ÇÊ¿ä Çß½À´Ï´Ù. ·Ò¿¡¼
·¥À¸·Î ¶Ç´Â ·¥¿¡¼ ·ÒÀ¸·Î ¹Ù²Ü¶§ ÇÊ¿äÇÑ Á¦¾î¼± ¸»ÀÔ´Ï´Ù. ´Ù¸¥
¹æ½ÄÀ¸·Îµµ ¸¸µé ¼ö ÀÖÁö¸¸ 80C31 ÀÚüÀÇ I/O PortÀÎ P1Áß¿¡ Çϳª¸¦
¾²±â·Î Çß½À´Ï´Ù. ±×·¡¼ Á¦ÀÏ ÇÑ°¡Âð( »çÅõ¸® °°Àºµ¥ ! => ±¸¼®¿¡
¯¹ÚÈù ) P1.7 ºñÆ®¸¦ ¹ÝÀü½ÃÄѼ ·ÒÀÇ /CE ÇÉ¿¡ ¿¬°á Çß½À´Ï´Ù.
·ÒÀÇ /OE ÇÉÀº JSTEST º¸µå¿Í °°ÀÌ Á¤¼®À¸·Î /PSENÀ» ¿¬°áÇß½À´Ï´Ù.
ÀÌ·¸°Ô¸¸ ÇØÁÖ¸é RAMÀ» ROM ó·³ ¾µ ¼ö Àִ°ÍÀº ¾Æ´ÏÁö¿ä. ´ÜÁö ·ÒÀ»
¼±ÅÃÇϰųª ¼±ÅÃÇÏÁö ¾Ê°Å³ª ¸¸À» ÇÒ ¼ö ÀÖ½À´Ï´Ù.
À̹ø °Á´ ¿©±â°¡ ³¡ ÀÔ´Ï´Ù.
< ¸Ó¸® Á» ½ÄÈü½Ã´Ù >
¶óµð¿À¿¡¼ µéÀº ½ÇÈ ÀÔ´Ï´Ù.
¹ö½º¸¦ Ÿ°í µîÇϱ³ÇÏ´Â ¾î¶² ¿©Çлý(ÆíÁö¾´ »ç¶÷)ÀÌ ÀÖ¾ú´Ù. ±× ¹ö½º
´Â °°Àº ¹æÇâ¿¡ ¿©·¯ Áß,°íµîÇб³°¡ ÀÖ¾î¼ ¸¹Àº ³²,¿© ÇлýµéÀÌ
ÀÌ¿ëÇÏ´Â ¹ö½º ¿´´Ù. µî±³½Ã¿¡ ¾î¶² ³²ÇлýÀÌ ±× ¿©Çлý°ú ÀÚÁÖ
°°Àº ¹ö½º¸¦ Ÿ°ï Çß´Ù. ±× ³²ÇлýÀº ±× ¿©ÇлýÀÌ ¸¶À½¿¡ µé¾ú´Ù.
¾î´À³¯ ¾Æħ »ç¶÷µµ ±×¸® ¸¹Áö ¾Ê¾Ò°í, ¿©ÀüÈ÷ ±× ¿©ÇлýÀº µÞÀÚ¸®¿¡
ÀÚ½ÅÀÇ °¡¹æÀ» ¹«¸À§¿¡ ¾ñÀºÃ¼ ¹ÛÀ» º¸°í ÀÖ¾ú´Ù. ³²ÇлýÀº ±×
¿©Çлý¿¡°Ô ´Ù°¡°¡ ¾Õ¿¡ ¼¹´Ù. ¹«½¼ ¸»Àΰ¡¸¦ ÇØ¾ß Çß°í ±× ³²ÇлýÀº
¿ë±â¸¦ ³»¼ ¸»Çß´Ù.
"À̺¸½Ã¿À, ³¶ÀÚ, Á¦ °¡¹æ Á» ¹Þ¾ÆÁֽÿä"
±×³à´Â µ¹¾Æº¸¸ç À§,¾Æ·¡¸¦ ÈÇÅͺ¸´õ´Ï ¸»Çß´Ù.
"º¸¾ÆÇÏ´Ï ½Ö°Í °°Àºµ¥ ±×³É µé°í °¡½Ã¿À"
¿ÏÀüÇÑ ½ÇÆп´´Ù.
¸îÀÏÈÄ ±× ¿©ÇлýÀº ÀÏÂï Çб³¿¡¼ µ¹¾Æ ¿Ô´Ù. ±×·±µ¥ Çö°ü ÀÔ±¸¿¡
³²ÀÚµé ½Å¹ßÀÌ ¼³Ê ÄÓ·¹°¡ ´õ ÀÖ¾ú´Ù. ¿Àºü¹æÀÌ ½Ã²ô·¯¿î °ÍÀ¸·Î º¸¾Æ
¿À´Ãµµ ¿ÀºüÄ£±¸µéÀÌ ³î·¯ ¿Â°Í °°¾Ò´Ù. ±×¶§ ¸¶Ä§ ¾ö¸¶°¡ °úÀÏÀ» Á»
¿Àºü Ä£±¸µé¿¡°Ô °¡Á®´Ù ÁÖ¶ó°í Çϼ̴Ù. ±×·¡¼ ±× ¿©ÇлýÀº °úÀÏÀ»
¿Àºü¹æ¿¡ °¡Á®´Ù ÁÖ¾ú´Ù. ±×·±µ¥, ÀÌ·²¼ö°¡....
¿Àºü Ä£±¸µé Áß¿¡ ¸îÀÏÀü¿¡ º¸¾Ò´ø ±× ½Ö°ÍÀÌ....
16] ·Ò ¿¬°á¿¡ ´ëÇÏ¿© (JS8051A) 11/24 16:16 71 line
·¥ ¿¬°á¿¡ ´ëÇÏ¿©
JS8051A¿¡¼´Â ·¥Àº 300 mil Â¥¸® 62256( 32K byte )À» »ç¿ëÇÕ´Ï´Ù.
Âü°í·Î ½ÇÁ¦ KIT¿¡´Â 61256ÀÌ µé¾î ÀÖÀ» ¼ö Àִµ¥ ÀÌ°ÍÀº 62256ÀÇ °í¼Ó
ŸÀÙÀ¸·Î ±â´ÉÀº °°½À´Ï´Ù. 62256Àº 64K byte Data Memory Space Áß¿¡
ÇÏÀ§ Àý¹ÝÀ» Â÷ÁöÇÏ°í ÀÖ½À´Ï´Ù. »óÀ§ 32K byteÀÇ ÀϺδ EEPROMÀ»
Æ÷ÇÔÇÑ ¿Â º¸µå I/O·Î ¾²ÀÌ°í ´ëºÎºÐÀÇ °ø°£Àº »ç¿ëÀÚ¿ëÀ¸·Î
Á¦°øµË´Ï´Ù. ÀÌ Ã³·³ JS8051AÀÇ Data Memory Space¸¦ ¿©·¯ ĨÀÌ
³ª´©¾î »ç¿ëÇϱ⠶§¹®¿¡ ·¥ÀÇ ¼±Åà ½ÅÈ£ÀÎ /CS¸¦ GND¿¡ ¿¬°áÇÏ¿© Ç×»ó
µ¿ÀÛ °¡´É »óÅ·ΠÇÒ ¼ö ¾ø½À´Ï´Ù. ÇÏÀ§ 32K byteÀÎ 0000H ~ 7FFFH
±îÁöÀÇ ¾îµå·¹½º°¡ ¼±ÅÃµÇ¸é µ¿ÀÛÀÌ µÇ°í 8000H ~ FFFFH±îÁöÀÇ
¾îµå·¹½º°¡ ¼±ÅÃµÇ¸é µ¿ÀÛÀÌ ¾ÈµÇµµ·Ï ÇØÁÖ¾î¾ßÇÕ´Ï´Ù. ¾îµå·¹½º ¼±À»
º¸¸é ÇÏÀ§ 32K byte¿Í »óÀ§ 32K byte¸¦ ±¸ºÐÇÏ´Â ¼±ÀÌ A15 ÀÓÀ» ¾Ë ¼ö
ÀÖ½À´Ï´Ù.
A15, A14, A13, .... A0
0, x, x, .... x => 0000H ~ 7FFFH
A15, A14, A13, .... A0
1, x, x, .... x => 8000H ~ FFFFH
A15´Â ÇÏÀ§ 32K byte°¡ ¼±ÅõǸé "0"ÀÌ µÇ°í »óÀ§ 32K byte°¡ ¼±ÅõǸé
"1"ÀÌ µË´Ï´Ù. ±×·¯¹Ç·Î A15¸¦ ·¥ÀÇ ¼±Åà ½ÅÈ£ÀÎ /CS¿¡ ¹Ù·Î ¿¬°áÇÏ¿©
»ç¿ë ÇÏ¸é µË´Ï´Ù. ȸ·Îµµ¿¡¼ 'ÁÖ 4'¸¦ º¸¸é ·¥ÀÇ /CS¿¡ /RAMCS°¡
¿¬°áµÇ Àִµ¥ ±×¸² 10ÀÇ JP7À» º¸¸é A15°¡ /RAMCSÀÎ °ÍÀ» ¾Ë ¼ö
ÀÖ½À´Ï´Ù. JP7Àº ¿ÜºÎ ·¥ ¹é¾÷¿ë header·Î ÀÏ´Ü »ç¿ëÇÏÁö ¾Ê±â·Î
ÇÏ°Ú½À´Ï´Ù. ·¥ÀÇ /WE ÇÉÀº CPU°¡ Data Memory Space¸¦ ÀÐÀ»¶§ »ç¿ëÇÏ´Â
½ÅÈ£ ÇÉÀÎ /WE¸¦ ¹Ù·Î ¿¬°áÇÏ¸é µË´Ï´Ù. ¹®Á¦´Â RAMÀÇ /OE ÇÉÀ» ¾î¶»°Ô
ó¸® ÇØÁÖ´À³Ä ÇÏ´Â °ÍÀÔ´Ï´Ù. JSTEST º¸µå ó·³ RAMÀ» RAMÀ¸·Î¸¸
¾´´Ù¸é °£´ÜÇÏÁö¸¸ RAMÀ» ROMó·³ ¾µ ¼ö ÀÖ°Ô ÇؾßÇϱ⠶§¹®¿¡ ¹Ù·Î
CPUÀÇ /RD ÇÉ¿¡ ¿¬°áÇÒ ¼ö ¾ø½À´Ï´Ù.
JS8051A¿¡¼´Â P1.7 ÇÉÀÇ Ãâ·ÂÀÌ highÀ̸é ROMÀÌ ROMÀ¸·Î RAMÀÌ RAMÀ¸·Î
Á¤»ó µ¿ÀÛÇÏÁö¸¸ low°¡ µÇ¸é ROMÀº »ç¶óÁö°í RAMÀÌ ROM ±â´É°ú RAM ±â´É
¸ðµÎ¸¦ ÇÏ°Ô µË´Ï´Ù. ¹°·Ð ´Ù½Ã high°¡ µÇ¸é ¿ø»óº¹±ÍµË´Ï´Ù
CPU´Â ¿ÜºÎ ȸ·Î°¡ ¾î¶»µç°£¿¡ ÇÑ°á°°ÀÌ ROM( Á¤È®È÷ ¸»Çϸé Program Memory
Space )À» ÀÐÀ» ¶§´Â /PSEN ½ÅÈ£¸¦ »ç¿ëÇÕ´Ï´Ù. µû¶ó¼ P1.7ÀÌ low°¡ µÇ¸é
CPUÀÇ /PSEN°ú /RD ÇÉ ¸ðµÎ°¡ 62256À» Àд ½ÅÈ£°¡ µÇ°Ô ¸¸µé¾î ÁÖ¾î¾ß ÇÕ´Ï´Ù.
±×·¸°Ô ÇØÁÖ±â À§Çؼ´Â ·ÎÁ÷ ȸ·Î°¡ ÇÊ¿ä ÇÕ´Ï´Ù. JS8051A¿¡¼´Â ±× ±â´ÉÀ»
ÇÏ´Â ·ÎÁ÷ ȸ·Î°¡ 16V8¿¡ µé¾î°¡ ÀÖ½À´Ï´Ù.
JS8051A°¡ ROMÀ» »ç¶óÁö°Ô ÇÏÁöÀ§Çؼ´Â /PSENÀ» Á¦¾îÇÏÁö ¾Ê°í ROMÀÇ
¼±ÅýÅÈ£ÀÎ /CE¿¡ high¸¦ ¿¬°áÇÏ¿© Ç×»ó ROMÀÌ ¼±ÅõÇÁö ¾Ê°Ô ÇÕ´Ï´Ù.
±×¸®°í ROMÀ» ÀÐÀ¸·Á ÇÒ ¶§µµ RAMÀÌ ¼±Åõǵµ·Ï ÇØÁÖ¾ú°í /PSENÀº RAMÀÇ
/OE ÂÊÀ¸·Îµµ °¡°Ô ÇØÁÖ¾ú½À´Ï´Ù.
±âÃÊ°¡ ¾î´ÀÁ¤µµ ÀִºÐÀº ¾Æ·¡ ´äÀ» º¸±âÀü¿¡ À§ÀÇ ¼³¸íÀ» ¹ÙÅÁÀ¸·Î
·ÎÁ÷À» ÀÛ¼ºÇØ º¸½Ê½Ã¿ä. P1.7, /RD, /PSENÀ» »ç¿ëÇÏ¿© RAMÀÇ /CS¿¡
µé¾î°¥ ½ÅÈ£(/RAMRD)¸¦ ¸¸µé¾î º¸½Ê½Ã¿ä.
/ROMCS = NOT( P1.7 )
/RAMRD = (/RD AND P1.7) OR (/RD & /PSEN)
/RAMCS = A15
[17] I/O ¿¬°á¿¡ ´ëÇÏ¿© (JS8051A) 11/24 16:17 76 line
I/O ¿¬°á¿¡ ´ëÇÏ¿©
JS8051A º¸µå ³»ÀÇ I/O( ÀԷ°ú Ãâ·ÂÀ̶õ ¸» ÀÌ¿Ü¿¡ ±×·±±â´ÉÀ» ÇÏ´Â
ĨÀ» ÀÏÄ´ °æ¿ìµµ ¸¹´Ù )´Â Data Memory SpaceÀÇ »óÀ§ 32K byte¿¡
Á¸ÀçÇÑ´Ù. »óÀ§ 32K byte¿¡´Â 14°³ÀÇ I/O ¼±Åà ½ÅÈ£°¡ Á¦°øµÇ´Âµ¥
EEPROMÀ» Æ÷ÇÔÇؼ º¸µå ÀÚü°¡ 5°³ÀÇ Ä¨¼±Åà ¼±À» »ç¿ëÇÏ°í ³ª¸ÓÁö
9°³´Â »ç¿ëÀÚ È®Àå¿ëÀ¸·Î Á¦°øµÈ´Ù.
_______
|
| -- 2°³´Â º¸µå°¡ »ç¿ë
| |
HC138 | 8°³ Ãâ·Â ==> -|
| |
| -- 6°³´Â »ç¿ëÀÚ¿ë
_______|
( ´Ü¼ø ¾îµå·¹½º µðÄÚµù )
_______
|
| -- 3°³´Â º¸µå°¡ »ç¿ë
| |
16V8 | 6°³ Ãâ·Â ==> -|
| |
| -- 3°³´Â »ç¿ëÀÚ¿ë
_______|
( ¾îµå·¹½º¿Í Á¦¾î¼±ÀÇ Á¶ÇÕ½ÅÈ£ )
JS8051-A º¸µåÀÇ I/O ¼±ÅÃ
14°³ÀÇ ¼±Åà ½ÅÈ£¼±ÀÌ ¸ðµÎ °°Àº Á¾·ùÀÇ ½ÅÈ£¼±Àº ¾Æ´Õ´Ï´Ù. HC138ÀÇ
Ãâ·ÂÀº ¾Õ °Á¿¡¼ ¾Ë¾Æº» °Íó·³ ¼øÇÑ ¾îµå·¹½º µðÄÚµù ½ÅÈ£ÀÌÁö¸¸
16V8ÀÇ Ãâ·ÂµéÀº Á»´õ º¹ÀâÇϸç Á¦°¢±â ¼·Î ´Ù¸¥ ½ÅÈ£ÀÔ´Ï´Ù. HC541ÀÇ
Àο¡À̺í ÀÔ·ÂÀ¸·Î ¾²ÀÌ´Â 541_ENÀº /RD¿Í ƯÁ¤ ¾îµå·¹½º¿ÍÀÇ Á¶ÇÕÀ̸ç
HC574ÀÇ CLK ÀÔ·ÂÀ¸·Î ¾²ÀÌ´Â 574_ENÀº /WR¿Í ƯÁ¤ ¾îµå·¹½º¿ÍÀÇ
Á¶ÇÕÀ̸ç LCDÀÇ Àο¡ÀÌºí ½ÅÈ£·Î ¾²ÀÌ´Â LCD_ENÀº /RD, /WR, ƯÁ¤
¾îµå·¹½ºÀÇ Á¶ÇÕÀÔ´Ï´Ù.
541_en = !( (F000 ~ F1FF) x !(/RD) );
574_en = (F000 ~ F1FF) x !(/WR);
lcd_en = (F200 ~ F3FF) x (!(/RD) + !(/WR));
user_cs1 = (F400 ~ F5FF) x !(/WR);
user_cs2 = !( (F600 ~ F7FF) x !(/RD) );
user_cs3 = (F800 ~ F9FF) x !(/WR);
( ! => NOT , x => AND , + => OR )
À§ ½Ä¿¡¼ º¸µíÀÌ Á¶ÇÕÀº °¢°¢ ´Ù¸£°Ô µÇ¾îÀÖ½À´Ï´Ù. À§ Á¶ÇÕÀº Á¦°¡
HC541, HC574, LCD °¢°¢ÀÇ read, write ŸÀ̹ÖÀ» º¸°í ¸¸µç °ÍÀÔ´Ï´Ù.
´õ¿í ÀÚ¼¼È÷ ¾Ë°í ½ÍÀº ºÐÀº HC541, HC574, LCDÀÇ µ¥ÀÌŸ ºÏ°ú
80C31ÀÇ read, write ŸÀ̹ÖÀ» º¸°í ÇϳªÇϳª µûÁ® º¸½Ê½Ã¿ä. À§ ½Ä°ú
°°ÀÌ ÇÏÁö¾Ê°í ´Ù¸¥ Á¶ÇÕÀ» ½áµµ µË´Ï´Ù.
À§ ½Ä¿¡¼ º¸µíÀÌ Á¶ÇÕ¿¡ ¾²ÀÌ´Â ¾îµå·¹½º´Â ÇÑ ¹øÁö°¡ ¾Æ´Ï°í 512
byteÀÇ °ø°£À» °¡Áö°í ÀÖ½À´Ï´Ù. µû¶ó¼ ±× °ø°£ ³»ÀÇ ¾Æ¹« ¹øÁö³ª
¾ï¼¼½ºÇصµ ±× Ĩ ¼±Åà ½ÅÈ£°¡ ¹ß»ýÇÕ´Ï´Ù. ¿¹¸¦ µé¸é µð½ºÄÏ¿¡
Á¦°øµÇ´Â ¸ðµç ¿¹Á¦¿¡´Â HC574¿¡ °ªÀ» ¾²±â À§Çؼ´Â F000H¸¦
»ç¿ëÇÏ¿´Áö¸¸ ½ÇÁ¦´Â F001H¸¦ »ç¿ëÇϰųª F1FFH¸¦ »ç¿ëÇصµ °á°ú´Â
°°½À´Ï´Ù.
»ç¿ëÀÚ¿ëÀ¸·Î Á¦°øµÇ´Â user_cs1, user_cs3´Â 574_en°ú Á¶ÇÕÀÌ °°À¸¸ç
user_cs2´Â 541_en°ú Á¶ÇÕÀÌ °°½À´Ï´Ù. read ¶Ç´Â write Àü¿ëÀÇ I/O¸¦
Ãß°¡ÇÒ °æ¿ì »ç¿ëÇϽʽÿä.
16V8À̶ó´Â ĨÀº ·ÒÀ» ±ÁµíÀÌ ³»ºÎ¿¡ ³í¸® °ÔÀÌÆ®¸¦ ÇÁ·Î±×·¥Çؼ ³ÖÀ»
¼ö ÀÖ´Â IC ÀÔ´Ï´Ù. ¿©·¯¹ø Àü±âÀûÀ¸·Î Áö¿ü´Ù ´Ù½Ã ¾µ ¼ö°¡ ÀÖÀ¸¹Ç·Î
°æÇè ÀÖ´Â ºÐµéÀº Á¦°øµÇ´Â 16V8 ÇÁ·Î±×·¥ ½î½º¸¦ Âü°íÇÏ¿© ÀÚ½ÅÀÇ
¿ëµµ¿¡ ¸Â°Ô º¯°æÇÏ¿© ¾²¼Åµµ µË´Ï´Ù.
[18] Åë½Å ÄÉÀ̺í°ú ¾î¼Àºí·¯ (JS8051A) 11/24 16:18 271 line
º¸µå°¡ ¿Ï¼ºµÇ¾úÀ¸´Ï Åë½Å ÄÉÀ̺í°ú ¾î¼Àºí·¯°¡ ÀÖ¾î¾ß °Ú±º¿ä.
ÀÚ·á½Ç¿¡ ¸î°¡Áö 80C31 ASMÀ» ¹¾î¼ ¿Ã¸²´Ï´Ù.( JS51_ASM.ARJ ) ¸ðµÎ
Åë½ÅÀ¸·Î ¹ÞÀº °ÍµéÀε¥, °¡Áö°í ÀÖ´Â ºÐµéµµ ¸¹À»ÅÙµ¥ ±×·± ºÐµéÀº
°¡Áö°í ÀÖ´Â °ÍÀ» ¾²½Ê½Ã¿ä. Àú´Â °³ÀÎÀûÀ¸·Î Soft Mart. IncÀÇ
X8051.EXE V2.04¸¦ ¾²´Âµ¥ °¡Àå ¾ÈÁÁÀº ASMÀÔ´Ï´Ù.( ÇÏÁö¸¸ ¹ö¸©ÀÌ
µé¾î¼...)
¾Æ·¡ ³»¿ëÀº JS8051-A KIT Á¦°ø µð½ºÄÏ¿¡ ÀÖ´Â
'< JS8051-A º¸Ãæ ¼³¸í¼ Ver 1.1 >'ÀÇ Åë½Å ÄÉÀ̺í°ú ¾î¼Àºí·¯ °ü·Ã
³»¿ëÀÔ´Ï´Ù. µû·Î º¸Ãæ ¼³¸í¼¸¦ °¡Áö°í °è½ÅºÐÀº ÀÐÁö ¾ÊÀ¸¼Åµµ
´Ï´Ù. ´Ù¿î ¹Þ´Â »ç¶÷ÀÌ ¾îÁö·¯¿ï±îºÁ ÀÚ·á½Ç¿¡ ¿Ã¸° ASM¿¡´Â ¹èÄ¡
ÈÀÏÀ» ÀϺη¯ ³ÖÁö ¾Ê¾Ò½À´Ï´Ù. ¾Æ·¡ ³»¿ë¿¡ Æ÷ÇԵǾî ÀÖÀ¸´Ï ÀÚ½ÅÀÌ
»ç¿ëÇÒ ASMÀ» ¼±Á¤ÇÏ¿© ¹èÄ¡ÈÀÏÀ» Á÷Á¢ ¸¸µé¾î º¸½Ê½Ã¿ä.
=========================
: :
: 2. Åë½Å cable Á¦ÀÛ :
: :
=========================
JS8051-A¿ë Åë½Å ÄÉÀ̺íÀº RxD,TxD,GND 3¼±À» »ç¿ëÇÕ´Ï´Ù. PCÂÊÀº 25 pin,
9 pin ¾Æ¹«°Å³ª »ç¿ëÇصµ °ü°è¾ø½À´Ï´Ù. JS8051-AÂÊÀº 5045 3pin(JP2¿Í
¦ÀÌ µÇ´Â) Ä¿³ØÅ͸¦ »ç¿ëÇÕ´Ï´Ù. Àü¼±Àº 3¼± ½¯µå ÄÉÀ̺íÀ» ±ÇÀåÇÕ´Ï´Ù.
Á¦À۽à ¹øÈ£°¡ ¹Ù²îÁö ¾Êµµ·Ï ÁÖÀÇÇϽʽÿä. ( ÄÉÀÌºí º°µµ ÆǸŠ°¡°Ý :
2,000¿ø )
__
/ | _____
| | | |
| 2 | TXD____ ________ TXD | 3 |
| | \ / | |
| 3 | RXD____ / \ ________ RXD | 2 |
| | | |
| 7 | GND_________________ GND | 1 |
| | |_____|
\ __|
25 pin JS8051-A
__ _____
/ | | |
| 2 | RXD_________________ TXD | 3 |
| | | |
| 3 | TXD_________________ RXD | 2 |
| | | |
| 5 | GND_________________ GND | 1 |
\ __| |_____|
9 pin JS8051-A
(Ä¿³ØÅ͸¦ º¸¸é ¹øÈ£°¡ ½áÀÖ´Ù) ( JP2´Â º¸µåÀÇ ¿À¸¥ÂÊÀÌ 1¹ø,
Á¦°øµÇ´Â º¸µåÀÇ ½ÇÅ© Àμ⵵¸¦
º¸½Ã¸é 1¹ø ÇÉ¿¡´Â ¿ª»ï°¢ÇüÀÌ ÀÖÁö¿ä )
·Ò¶óÀÌÅͳª ·Ò¿¡¹Ä·¹ÀÌÅÍ°¡ ÀÖ´Â »ç¶÷µµ ²À SERIAL DOWN LOADINGÀ» Çѹø »ç¿ëÇØ
º¸½Ê½Ã¿ä. ÈξÀ ÆíÇÏ°í ºü¸¨´Ï´Ù. Ãʺ¸ÀÚ´Â ¹«Á¶°Ç »ç¿ëÇØ¾ß ÇÕ´Ï´Ù.
¼³°è ÇüŸ¦ ÀÚ¼¼È÷ º¸½Ã¸é 32K byte(27C256°ú °°Àº ȯ°æÀÌ µÇ¾î ¹øÁö¸¦ ¼öÁ¤ÇÒ
ÇÊ¿ä°¡ ¾ø½À´Ï´Ù) °ø°£ ¸ðµÎ¸¦ »ç¿ëÀÚ ¾µ ¼ö ÀÖµµ·Ï Á¦À۵Ǿî ÀÖ´Ù´Â °ÍÀ» ¾Ë
¼ö°¡ ÀÖÀ» °Ì´Ï´Ù.
======================================
: :
: 3. ASSEMBLER »ç¿ë¹ý ¹× ÁÖÀÇ»çÇ× :
: :
======================================
1) HEXBIN.EXE »ç¿ë¹ý
2) X8051.EXE (V2.04 Soft Mart,Inc)
3) X8051.EXE (V4.03C 2500 A,D, Software,Inc)
4) ASM51.EXE (V2.2 Intel Corporation )
5) A8051.EXE (V2.02/DOS IAR System)
8051 ¾î¼ÀºÒ·¯´Â Á¾·ùµµ ¸¹°í ´Ù¾çÇÏÁö¸¸ ´ëºÎºÐ »ç¿ë¹ýÀº °£´ÜÇÏ°í
ºñ½ÁÇÕ´Ï´Ù. Åë½ÅÇÏ´Â »ç¶÷Àº µðÁöÅ» µ¿È£È¸ÀÇ ÀÚ·á½Ç·Î µé¾î°¡¼ º¸¸é
¿©·¯ °¡Áö ¾î¼Àºí·¯¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù. ÇÏÀÌÅÚ,õ¸®¾È,³ª¿ìÄÞ µî¿¡¼
'GO DIG'ÇϽðí ÀÚ·á½Ç¶õ¿¡ µé¾î°¡¼ ã¾Æº¸½Ê½Ã¿ä. Á¦°¡ µé¾î °¡º¸Áö´Â
¾ÊÀº ´Ù¸¥ Åë½Å¸Á¿¡µµ ºÐ¸íÈ÷ ÀÖÀ» °Ì´Ï´Ù.
¸ÕÀú Ãʺ¸ÀÚ´Â JS51P1_0.ASM(¿¹Á¦)À» »ç¿ëÇÏ¿© ¾Æ·¡ ÇÁ·Î±×·¥ÀÇ »ç¿ë¹ýÀ»
ÀÍÈ÷¼¼¿ä.
¾Æ·¡ÀÇ ¾î¼Àºí·¯ ¼³¸íÀº Á¦°¡ °æÇèÀûÀ¸·Î(? Ä¡°í ¹Ú°í) ¾Ë¾Æ³½ °ÍÀÔ´Ï´Ù.
µû¶ó¼ ´õ¿í ÀÚ¼¼ÇÑ »ç¿ëÀ» ¿øÇϽŴٸé ÇØ´ç ÇÁ·Î±×·¥ÀÇ ¸Å´º¾óÀ» ±¸Çؼ
ÀÐÀ¸½Ê½Ã¿ä. »ç½Ç ÀÌ Á¤µµÀÇ »ç¿ë¹ý¸¸À¸·Îµµ »ç¿ë»ó ÁöÀåÀº ¾ø½À´Ï´Ù.
1) HEXBIN »ç¿ë¹ý
hex fileÀ» ÀÌ¿ëÇÏ¿© binary file·Î ¸¸µé¾îÁÝ´Ï´Ù.
hex fileÀº ¾î¼Àºí·¯³ª ÄÄÆÄÀÏ·¯°¡ »ý»êÇÏ´Â ÃÖÁ¾ ÈÀÏ ÀÔ´Ï´Ù. ÀϹÝ
¿¡µðÅ͸¦ »ç¿ëÇÏ¿© º¼ ¼ö°¡ ÀÖ½À´Ï´Ù. ÅëÀÏµÈ Çü½ÄÀº ¾ø°í °¢ ȸ»çº°·Î
ÀڽŵéÀÇ Çü½Ä(format)À» °¡Áö°í ÀÖ½À´Ï´Ù. ±×·¸±â ¶§¹®¿¡ Á¤½ÄÀ¸·Î´Â
ÀÎÅÚ ÇÙ»ç ÈÀÏ, ¸ðÅä·Ñ¶ó ÇÙ»ç ÈÀÏ, ÅÃÆ®·Î´Ð½º ÇÙ»ç ÈÀÏ µî ¾Õ¿¡ ȸ»ç
À̸§À» ºÙÃÄ ÁÖ¾î¾ß ÇÕ´Ï´Ù. JS8051-A º¸µåÀÇ CPU´Â ÀÎÅÚ Á¦Ç°À̹ǷΠ°¢Á¾
¾î¼Àºí·¯³ª ÄÄÆÄÀÏ·¯µéÀº ÀÎÅÚ ÇÙ»ç Çü½ÄÀ¸·Î ÈÀÏÀ» ¸¸µé¾î ÁÝ´Ï´Ù. ¿ø·¡
ÇÙ»ç ÈÀÏÀº ¹Ù·Î ·Ò¿¡ ±¸¿ï ¼ö ÀÖ´Â ÇüÅ°¡ ¾Æ´Õ´Ï´Ù. ÀÌÁø¼ö ÇüÅÂÀÎ
binary file·Î ¹Ù²Ù¾î ÁÖ¾î¾ß ÇÕ´Ï´Ù. Áö±ÝÀº ¸¹Àº ·Ò ¶óÀÌÅͳª ·Ò
¿¡¹Ä·¹ÀÌÅÍÀÇ ÇÁ·Î±×·¥ ÀÚü¿¡¼ º¯È¯À» Áö¿øÇÕ´Ï´Ù. ¹ÙÀ̳ʸ® ÈÀÏÀº
¾Æ¹«·± º¯È¯ ¾øÀÌ ¹Ù·Î ·Ò¿¡ ±¸¿ö ³ÖÀ» ¼ö ÀÖ´Â ÈÀÏ ÀÔ´Ï´Ù.
( ÇÙ»ç ÈÀÏÀ» ´Ù¿î ·ÎµùÇÏ¿© ½ÇÇà ½ÃÅ°´Â ¹æ¹ý¿¡¼´Â ´Ù¿î ·ÎµùÇÏ´Â
ÇÁ·Î±×·¥ÀÌ ¹ÙÀ̳ʸ® ÈÀÏ·Î º¯È¯ÇÏ¿© Àü¼ÛÇϰųª Ÿ°Ù º¸µå³×ÀÇ ¸ð´ÏÅÍ
ÇÁ·Î±×·¥ÀÌ º¯È¯ÇÏ¿© ·¥¿¡ ³Ö¾î ÁÖ´Â ¹æ¹ýÀ» »ç¿ëÇÕ´Ï´Ù. )
.Çü ½Ä : HEXBIN hex_file bin_file I 2
: Intel format, FF·Î ä¿ò( ROMÀÇ ÇÁ·Î±×·¥ÀÌ ¾ÈµÈ °ø°£À» 0À¸·Î
ä¿ìµç FF·Î ä¿ìµç ÀÚÀ¯´Ù. ÇÏÁö¸¸ ROMƯ¼º»ó FF·Î ÇØÁÖ¸é
ROMÀÇ °Ç°(?)¿¡µµ ÁÁ°í »¡¸® ±¸¿ï ¼ö ÀÖ´Ù. )
2) X8051.EXE (V2.04 Soft Mart,Inc)
Soft Mart,IncÀÇ X8051.EXE V2.04´Â ¸µÅ©°úÁ¤ÀÌ ¾øÀÌ ¹Ù·Î HEXÈÀÏÀ»
»ý¼ºÇÏ´Â °£´ÜÇÏ°í Æí¸®ÇÑ ¾î¼Àºí·¯Àε¥ ¹ö±×°¡ ÀÖ¾î¼ ¿©·¯ºÐÀÇ
½Ã½ºÅÛ¿¡¼ µ¹¾ÆÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù. ¿øÀÎÀº ¾Ë ¼ö ¾øÁö¸¸, ¸¸¾à
½ÇÇàÀÌ ¾ÈµÇ¸é CONFIG.SYSÀÇ EMM386.EXEÀÇ ¿É¼ÇÀ» RAM AUTO·Î ÇÏ°í ´Ù½Ã
ºÎÆÃÇÑµÚ Çغ¸½Ê½Ã¿ä.
C:\DOS\E
.EXE RAM AUTO
±×·¡µµ ¾ÈµÇ¸é ¶Ç ´Ù¸¥ ¿É¼ÇÀ» »ç¿ëÇØ º¸½Ã°Å³ª memory¿¡ °ü·ÃµÈ Ç׸ñÀ»
¹Ù²ãº¸¼¼¿ä. ¸¸¾à software ÇѱÛÀ» ¾²½Å´Ù¸é Áö¿ì°í ´Ù½Ã Çغ¸½Ê½Ã¿ä.
Ȥ½Ã ÇÁ·Î±×·¥ÀÌ ¾È µ¹¾Æ°¡µµ Àý´ë·Î ½Ç¸ÁÇÏÁö ¸»°í ´Ù¸¥ ¾î¼Àºí¸®¾î¸¦
¾²¼¼¿ä.
X8051»ç¿ë¹ýÀº ¸Å¿ì °£´ÜÇÕ´Ï´Ù.
¾Æ·¡ Çü½ÄÁß¿¡ ¸¶À½¿¡ µå´Â ¹æ½ÄÀ» »ç¿ëÇϽʽÿä.
.Çü ½Ä 1 : X8051 asm_file
: LIST FILEÀº ȸéÀ¸·Î HEXÈÀÏÀº ÇöÀç µð·ºÅ丮¿¡ »ý¼ºµÈ´Ù.
.Çü ½Ä 2 : X8051 asm_file > JS.LST
: LIST FILEÀº JS.LST·Î ÀÏ¹Ý ¿¡µðÅÍ(Q.EXE...)·Î º¼ ¼ö ÀÖ´Ù.
½î½º ÈÀÏÀÌ Å¬ ¶§´Â LIST FILEÀ» ·½µå¶óÀ̺꿡 »ý¼ºÇÏ¸é ´õ¿í
»¡¶óÁø´Ù. HEXÈÀÏÀº ÇöÀç µð·ºÅ丮¿¡ »ý¼ºµÈ´Ù. Error,
WarningÀº LIST FILE ³»¿¡ ³ªÅ¸³´Ù.
.Çü ½Ä 3 : X8051 asm_file > NUL
: LIST FILEÀº »ý¼ºµÇÁö ¾Ê´Â´Ù. HEXÈÀÏÀº ÇöÀç µð·ºÅ丮¿¡
»ý¼ºµÈ´Ù.
.Çü ½Ä 4 : X8051 asm_file | FIND "Error(s)"
: LIST FILEÀº ¾ø°í Error°¹¼ö¸¸ º¸¿© ÁØ´Ù. HEXÈÀÏ »ý¼º.
: FIND´Â DOS ¸í·ÉÀÌ´Ù.
ÁÖÀÇÇÒ Á¡( Ãʺ¸ÀÚ´Â ÀÌÇØ°¡ ¾È µÉ°Ì´Ï´Ù. Áö±Ý ´çÀåÀÇ »ç¿ë¿¡´Â ÁöÀåÀÌ
¾øÀ¸´Ï, ³ªÁß¿¡ ½Ç·ÂÀÌ Á» ºÙÀº ÈÄ¿¡ ´Ù½Ã Çѹø ´Ù½Ã º¸½Ê½Ã¿ä.)
PUSH R0
¶ó´Â ¾î¼Àºí·¯ ½î½º°¡ ´Ù¸¥ ¾î¼Àºí¸®¾î¿Í´Â ´Þ¸® ¿¡·¯ ¾øÀÌ ¾î¼ÀºíÀÌ
µË´Ï´Ù. ¸¸¾à¿¡ ·¹Áö½ºÅÍ ¹ðÅ©¸¦ ¹Ù²Ù¾ú´Ù¸é ¹Ù²Û ·¹Áö½ºÅÍ ¹ðÅ©ÀÇ R0°¡
½ºÅÿ¡ ÀúÀåµÇ¸®¶ó »ý°¢ÇÏ°ÚÁö¸¸ ±×·¸Áö ¾Ê°í ·¹Áö½ºÅÍ ¹ðÅ© 0ÀÇ R0°¡
ÀúÀåÀÌ µË´Ï´Ù. ÁÖÀÇ ÇϽʽÿä. ±×¸®°í DB(Define Byte)¸¦ »ç¿ëÇÒ ¶§µµ PC
»óÀÇ memory ¼³Á¤¿¡ µû¶ó DB·Î ¼³Á¤ÇÑ °ªÀÇ Ã¹ ¹ø° °ªÀÌ ´Þ¶óÁ® ¾î¼ÁºíµÉ
¶§°¡ ÀÖ½À´Ï´Ù. ¿¹Á¦ Áß¿¡ JS51_LCD.ASMÀ» ½ÇÇàÇßÀ»¶§ LCD¿¡ ù ±ÛÀÚ°¡
±úÁ®¼ ³ª¿Â´Ù¸é ±× °æ¿ì°¡ ±×·¸½À´Ï´Ù. EMM386.EXEÀÇ ¿É¼ÇÀ» RAM AUTO·Î
¹Ù²Ù°í ´Ù½Ã Çغ¸½Ê½Ã¿ä. ¿¹Á¦°¡ À߸øµÈ °ÍÀÌ ¾Æ´Ï´Ï ÁÖÀÇ ÇϽʽÿä. ´ë
ºÎºÐÀÇ ½Ã½ºÅÛ¿¡¼´Â Á¤»ó ÀÛµ¿ÇÕ´Ï´Ù.
DB 'JEONG' Á¤»óÀÏ ¶§ 4A454F4E47
ÀÌ»óÀÏ ¶§ 06454F4E47
Ãʺ¸ÀÚ´Â ´ÙÀ½À» µû¶óÇØ º¸¼¼¿ä.( JS51P1_0.ASMÀº ¿¹Á¦ ÈÀÏ ÀÔ´Ï´Ù.)
X8051 JS51P1_0.ASM
: ȸ鿡 ¸®½ºÆ® ÈÀÏÀÌ ³ª¿À°í JS51P1_0.HEX°¡ »ý¼ºµÇ¾î ÀÖ´Ù.
X8051 JS51P1_0.ASM > J
: J ¶ó´Â À̸§ÀÇ ¸®½ºÆ® ÈÀÏÀÌ »ý¼ºµÇ°í JS51P1_0.HEX°¡ »ý¼ºµÇ¾î ÀÖ´Ù.
: JÀÇ ³»¿ëÀ» ÀÏ¹Ý ¿¡µðÅÍ·Î È®ÀÎÇØ º¸ÀÚ.
HEXBIN JS51P1_0.HEX A.BIN I 2
: JS51P1_0.HEX¸¦ »ç¿ëÇÏ¿© A.BINÀ» ¸¸µé¾î ÁØ´Ù. A.BINÀÌ »ý¼ºµÇ¾î ÀÖ´Ù
: A.BINÀº ¹Ù·Î ·ÒÀ¸·Î ±¸¿ï ¼ö ÀÖ°í DOWN LOADINGÇÏ¿© ½ÇÇà½Ãų ¼ö ÀÖ´Â
ÃÖÁ¾ ÈÀÏÀÌ´Ù.
3) X8051.EXE (V4.03C 2500 A,D, Software,Inc)
Soft,Mart,IncÀÇ ¾î¼Àºí¸®¾î¿Í À̸§Àº °°Áö¸¸ ´Ù¸¥ ¹æ½ÄÀÇ ¾î¼Àºí¸®¾î
ÀÔ´Ï´Ù. OBJ(¿ÀºêÁ§Æ®)·Î ¸¸µé¾î LINK¸¦ ÇÒ ¼ö °¡ ÀÖ½À´Ï´Ù. ´ÙÀ½°ú °°Àº
¹èÄ¡ ÈÀÏÀ» ¸¸µé¾î »ç¿ëÇϼ¼¿ä.
x8051 %1.asm -D
link -c %1
hexbin %1.hex a.bin i 2
ÀÌ ¾î¼Àºí¸®¾î´Â
PUSH R0
¶ó´Â ¸í·ÉÀ» ¿¡·¯·Î °£ÁÖÇÕ´Ï´Ù. R0°¡ ¸î ¹ø° ¹ðÅ©ÀÇ R0Àΰ¡°¡
ºÒÈ®½ÇÇÏ´Ù´Â ÀÌÀ¯ ¶§¹® ÀÔ´Ï´Ù. ¹°·Ð R1 ~ R7 ¸ðµÎ¿¡ ´ëÇؼµµ
ÇØ´çµË´Ï´Ù. ÀÌ°ÍÀ» Á¦´ë·Î °íÄ¡·Á¸é R0³ª R2¿Í °°Àº ·¹Áö½ºÅÍ À̸§º¸´Ù´Â
·¹Áö½ºÅÍÀÇ ¹øÁö¸¦ ¹Ù·Î ½áÁÖ¸é µË´Ï´Ù. Á¦°ø µÇ´Â ¿¹Á¦¿¡¼´Â ·¹Áö½ºÅÍ
¹ðÅ©¸¦ ¹Ù²ÙÁö ¾Ê¾ÒÀ¸´Ï ´ÙÀ½°ú °°ÀÌ °íÄ¡¸é ÀÌ»óÀÌ ¾øÀÌ ¾î¼ÀºíÀÌ
µË´Ï´Ù.( Âü°í Register Bank 0ÀÇ R0ÀÇ ¹øÁö´Â 0H ÀÔ´Ï´Ù.)
PUSH R0 => PUSH 0H
POP R0 => POP 0H
4) ASM51 (V2.2 Intel Corporation )
¿©·¯ºÐÀÌ Àß ¾Æ½Ã´Â ÀÎÅÚ»çÀÇ ÀÛÇ°ÀÔ´Ï´Ù. »ç¿ëÀÌ °£´ÜÇÏÁö¿ä.
´ÙÀ½°ú °°ÀÌ ¹èÄ¡ÈÀÏÀ» ¸¸µé¾î »ç¿ëÇϼ¼¿ä.
asm51 %1.asm
rl51 %1.obj ( <= »ý·« °¡´É )
oh %1
hexbin %1.hex a.bin i 2
ÁÖÀÇÇÒ Á¡Àº ÀÌ ¾î¼Àºí¸®¾î ¿¡¼µµ ' PUSH R0 '(¶Ç´Â POP R0 )¸¦
¿¡·¯·Î ó¸® ÇÕ´Ï´Ù. À§ 3)¹ø¿¡¼¿Í °°ÀÌ ¹Ù²Ù½Ê½Ã¿ä. ÇÑ°¡Áö ´õ, ¿¹Á¦
Áß¿¡ 'DJNZ A,DELAY1' ÀÌ µé¾îÀÖ´Â ½î½º°¡ Àִµ¥ ¿¡·¯°¡ ³³´Ï´Ù.
¿øÀÎÀº A°¡ ¹øÁöÀÎÁö ACCUMULATORÀÎÁö È®½ÇÈ÷ ÇØ´Þ¶ó´Â ¿¹±âÁö¿ä. ´ÙÀ½°ú
°°ÀÌ °íÄ¡½Ê½Ã¿ä.
DJNZ A,DELAY1 => DJNZ ACC,DELAY1
5) A8051 (V2.02/DOS IAR System)
IAR SystemÀ» ¾Æ´Â ºÐÀÌ ÀÖÀ» °Ì´Ï´Ù. ±× À¯¸íÇÑ 8051,
6 C ¾ð¾î¸¦ Á¦°¡
¾Ë±â·Î´Â Àû¾îµµ ¿ì¸® ³ª¶ó¿¡ °¡Àå ¸¹ÀÌ °ø±ÞÇϴ ȸ»çÀÏ °Ì´Ï´Ù. ÀÌ
¾î¼Àºí·¯µµ »ç¿ëÀÌ °£´ÜÇÏÁö¿ä. ´ÙÀ½°ú °°ÀÌ ¹èÄ¡ ÈÀÏÀ» ¸¸µé¾î
»ç¿ëÇϼ¼¿ä.
a8051 %1 %1.lst
xlink -c8051 %1 ( -c8051 ¿¡¼ c´Â ¹Ýµå½Ã ¼Ò¹®ÀÚ )
hexbin aout.a03 a.bin i 2
ÁÖÀÇÇÒ Á¡ÀÌ ÀÖ½À´Ï´Ù. ½î½º ÈÀÏÀÇ µðÆúÆ® È®ÀåÀÚ°¡ ASMÀÌ ¾Æ´Ï°í
S03À¸·Î ÇØ¾ß ÇÕ´Ï´Ù. IAR System¿¡¼ µðÆúÆ® È®ÀåÀÚ¸¦ ±×·¸°Ô ¸¸µç
°ÅÁö¿ä. ´Ù¸¥ »çÇ×Àº ´Ù¸¥ ¾î¼Àºí·¯¿Í ºñ½ÁÇÕ´Ï´Ù. ´ÙÀ½°ú °°ÀÌ ½î½º¸¦
¹Ù²Û ÈÄ¿¡ ´Ù½Ã ¾î¼ÀºíÀ» Çϼ¼¿ä.
PUSH A => PUSH ACC
POP A => POP ACC
PUSH R0 => PUSH 0
DJNZ A,DELAY1 => DJNZ A,DELAY1
Ȥ½Ã ºñÆ®ÀÇ À̸§(8051¿¡¼´Â ºñÆ®º°·Îµµ À̸§À» °®°í ÀÖ´Â °ÍÀÌ ÀÖÀ¸¸ç,
ºñÆ® º°·Î µû·Î ¹øÁöµµ °¡Áö°í ÀÖ½À´Ï´Ù.)¿¡¼ ¿¡·¯°¡ ¹ß»ýÇÏ¸é ºñÆ®ÀÇ
À̸§À» ¹øÁö·Î ´ëÄ¡ÇØ Áֽʽÿä.
[19] °íÀå³ º¸µå´Â ¹ö¸³½Ã´Ù. 12/02 11:34 126 line
°íÀå³ º¸µå´Â ¹ö¸³½Ã´Ù.( º¸µå ¼ö¸®¹ý )
´ëºÎºÐÀÇ Ãʺ¸ÀÚµéÀÌ ÀÚÀÛÇÑ º¸µå´Â Çѹø¿¡ ±ú²ýÇÏ°Ô µ¹¾Æ°¡Áö
¾Ê½À´Ï´Ù. °¡²ûÀº ºÎÇ°°ú ±âÆÇÀÌ ¸ðµÎ Á¦°øµÇ´Â KIT Á¦Ç°¿¡¼µµ º¸µå°¡
µ¹¾Æ°¡Áö ¾Ê´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±×·± °æ¿ì ÀÚÀÛ ¶Ç´Â Á¶¸³ÇÑ »ç¶÷Àº
Å©°Ô ½Ç¸ÁÇÏ°í, ´ä´äÇÏ°í, ½Å°æÁúÀÌ ³ª°Ô µË´Ï´Ù.
ÀÌ·± ºÒ·® º¸µå°¡ ¹ß»ýÇÏ´Â µ¥´Â ¿©·¯°¡Áö ¿øÀÎÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.
±×Áß °¡Àå Å« ¿øÀÎÀº ³³¶« ºÒ·® ÀÔ´Ï´Ù. ÀÚÀÛ º¸µåÀÎ °æ¿ì´Â ÆÛ¼¾Æ¼Áö°¡
¾à°£ ´Ù¸¦ ¼ö ÀÖÀ¸³ª KIT Á¦Ç°ÀÎ °æ¿ì °íÀå º¸µåÀÇ 90% ÀÌ»óÀº ³³¶«
ÀεΠÇϳª¸¸ ÀÖÀ¸¸é ¼ö¸®°¡ °¡´É ÇÕ´Ï´Ù. ³³¶«À» Àß ÇÏ´Â ºÐÀ̶ó¸é
ȸ·Îµµ ¾øÀ̵µ( ȸ·Îµµ¸¦ º¸Áö ¾Ê°íµµ ), ½ÉÁö¾î ±× º¸µå°¡ ¹«½¼
º¸µåÀÎÁöµµ ¸ð¸£°íµµ ³³¶«¸é(solder side)¸¸ º¸°í °íÄ¥ ¼ö ÀÖ½À´Ï´Ù.
°Ñº¸±â¿¡´Â ÀßµÈ ³³¶«ÀÌÁö¸¸ ½ÇÁ¦·Î´Â Á¢ÃËÀÌ ¾ÈµÇ¾î Àְųª µÉ¶§ ÀÖ°í
¾ÈµÉ¶§ ÀÖ´Â ºÒ·®¶«µéÀÌ ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ¶«À» '³Ã¶«'À̶ó°í Çϴµ¥
Ãʺ¸Àڵ鿡°Ô ²Ï ¸¹ÀÌ ¹ß»ýÇÕ´Ï´Ù. PCB( Printed Circuit Board :
(µ¿ÆÇ¿¡) ȸ·Î¸¦ ÀμâÇÑ ÆÇ´ë±â)¿¡ ´ëÇؼ Àß ¾Æ½Ã´Â ºÐÀº ¾Ë°í °Ô½Å
ºÐµéµµ ÀÖ°ÚÁö¸¸ JS8051A º¸µå´Â ÀÌ·¯ÇÑ ³Ã¶«À» »çÀü¿¡ ¸·±âÀ§ÇØ ¸¹Àº
¹è·Á°¡ µÇÀÖ½À´Ï´Ù. Çѹø¿¡ ¹Ù·Î ¿Ï¼ºµÈ »ùÇà º¸µå°¡ ¾Æ´Ï¶ó ¿©·¯¹ø
¹öÀü¾þÇÑ º¸µåÀÔ´Ï´Ù. ÁøÂ¥ ³³¶« Ãʺ¸µéÀº º¸µå Á¶¸³Àü¿¡ ¸¸´É ±âÆÇ°ú
Àü¼±( ·¦ÇÎ ¿ÍÀ̾î )À» »ç¿ëÇÏ¿© ¸¹Àº ¿¬½ÀÀ» ÇØ¾ß ÇÕ´Ï´Ù. JS8051A
º¸µå¸¦ Àý´ë·Î ³³¶« ¿¬½À º¸µå·Î »ç¿ëÇÏÁö ¸¶½Ê½Ã¿ä. ±×°ÍÀÌ Àú( º¸µå
Á¦ÀÛÀÚ )¿¡ ´ëÇÑ ÃʼÒÇÑÀÇ ¿¹ÀÇ ÀÔ´Ï´Ù.
±×´ÙÀ½ °íÀå ¿øÀÎÀ¸·Î´Â ÀÚÀÛ º¸µåÀÎ °æ¿ì´Â À߸øµÈ ¿¬°áÀÌ°í KIT¿¡¼´Â
¿À»ð( À߸øµÈ »ðÀÔ )ÀÔ´Ï´Ù. µÑ´Ù º»ÀÎÀÇ ºÎÁÖÀÇ·Î ¹ß»ýÇÏ´Â °ÍÀ¸·Î
ÀÚÀÛ º¸µåÀÎ °æ¿ì´Â ´Ù ¸¸µç ´ÙÀ½Àº ã±â°¡ ½±Áö ¾Ê°í ´«ÀÌ ¾ÆÇÄ´Ï´Ù.
KIT¿¡¼´Â ´ç¿¬È÷ À߸øµÈ ¿¬°áÀº ¾ø°ÚÁö¸¸ ¹æÇâÀ̳ª ±Ø¼ºÀ» °®´Â ºÎÇ°À»
À߸ø ²È°í ¸¸µå´Â °æ¿ì°¡ Á¾Á¾ ÀÖ½À´Ï´Ù. Á¶¸³ ¼³¸í¼¿Í ȸ·Îµµ¸¦
º¸¸é¼ Á»´õ Á¤¼º ½º·´°Ô ¸¸µå½Ê½Ã¿ä.
Á¶¸³À» ´ÙÇÏ¼Ì´Ù¸é ¾Æ·¡ ¹æ¹ý´ë·Î Á¡°ËÇØ º¸½Ê½Ã¿ä. ¸ÕÀú ¸»¾¸ µå¸®´Âµ¥
¾Æ·¡ ¹æ¹ý°ú ¼ø¼´Â Á¦°¡ ¿©·¯ºÐ²² ÃßõÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù. µû¶ó¼
°Ë»çÀåºñ¿¡ µû¶ó¼, º¸µå¸¦ °Ë»çÇÏ´Â »ç¶÷ÀÇ ¼öÁØ¿¡ µû¶ó¼ ¼ø¼°¡
¹Ù²î°Å³ª ´Ù¸¥ ¹æ¹ýÀÌ »ç¿ëµÉ ¼öµµ ÀÖ½À´Ï´Ù.
1. ¸ðµç ºÎÇ°ÀÌ Á¦´ë·Î ²ÈÇôÁ® ÀÖ´ÂÁö È®ÀÎÇÑ´Ù.
2. ³³¶«¸é¿¡ »©¸ÔÀº °÷ÀÌ ÀÖ³ª È®ÀÎÇÏ°í Àǽɰ¡´Â ¶«ÀÌ ÀÖÀ¸¸é Çѹø´õ
¶«À» ÇØÁØ´Ù.
3. Àü¿øÀ» ³ÖÁö ¾ÊÀº »óÅ¿¡¼ Àü¿ø ½ºÀ§Ä¡¸¦ ¿Ã¸®°í Å×½ºÅ͸¦
»ç¿ëÇÏ¿© Àü¿ø ´ÜÀÚ¸¦ Âï¾î º»´Ù. ¼ø¹æÇâ 190 ohm Á¤µµ°¡ ³ª¿À¸é
Á¤»óÀÌ´Ù.
5 ohmÀÌ ³ª¿Â´Ù°í ³î¶ó´Â Ãʺ¸ÀÚµéÀÌ Àִµ¥ ±× °ªµµ Á¤»ó ÀÔ´Ï´Ù.
¾Æ³¯·Î±× Å×½ºÅÍ¿¡ ´ëÇؼµµ ÇÒ¸»ÀÌ ²Ï ¸¹Áö¸¸ ¿©±â¼ ÇÊ¿äÇÑ
ÇÑ°¡Áö¸¸ ¸»¾¸ µå¸®°Ú½À´Ï´Ù. Å×½ºÅÍ¿¡´Â ÀüÁö°¡ µé¾î°¡´Âµ¥ ÀÌ
ÀüÁö´Â ÀúÇ× ÃøÁ¤½Ã¿¡¸¸ »ç¿ëµË´Ï´Ù. Àü·ù³ª Àü¾Ð ÃøÁ¤¿¡´Â Àü·ù³ª
Àü¾Ð ÀÚü°¡ POWERÀ̱⠶§¹®¿¡ ÀüÁö°¡ ´Ù ´Þ°Å³ª ¾øÀ̵µ ÃøÁ¤ÀÌ
°¡´ÉÇÕ´Ï´Ù. ¾î°ư ÀúÇ×Àº Àü·ù·Î ÃøÁ¤À» ÇÕ´Ï´Ù. ±× Àü·ù´Â
Å×½ºÅÍ ÀÚü¿¡¼ ³ª°¡´Âµ¥ °ËÀº»ö ºÀÀ¸·Î (+)°¡, »¡°£»ö ºÀÀ¸·Î
(-)°¡ ³ª°¨´Ï´Ù. »ö±ò°ú ¹Ý´ë ÀÌ´Ï ÁÖÀÇ ÇϽʽÿä. µû¶ó¼
Ãʺ¸ÀÚµéÀÌ ¾Ë°í ÀÖ´Â 'ÀúÇ×Àº ¹æÇâÀÌ ¾ø´Ù'¶ó´Â ¸»Àº Á¤È®È÷
¸»ÇÏ¸é ¹«ÁöÇÏ°Ô Æ²¸° »ó½ÄÀÔ´Ï´Ù. ±×·¯¹Ç·Î º¸µåÀÇ ÀúÇ×°ªÀ»
ÃøÁ¤Çϱâ À§Çؼ´Â º¸µå Àü¿øÀÇ (+)¿¡´Â °ËÀº»õ ºÀÀ» (-)¿¡´Â
Àû»öºÀÀ» ´ë¼ ÃøÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ÀÌ·¸°Ô ÃøÁ¤À» ÇÏ¸é ¾à 190 OhmÀÌ
³ª¿À´Âµ¥ ÀÌ°ªÀÌ ³ª¿Â´Ù°í Çؼ º¸µå°¡ Á¤»óÀ̶ó°í ´ÜÁ¤ÇÒ ¼ö´Â
¾ø½À´Ï´Ù. ±×¸®°í Àü¿øÀÌ 5V ÀÌ°í º¸µå ¼ø¹æÇâ ÀúÇ×°ªÀÌ 190 ohm
ÀÌ´Ï±î º¸µåÀÇ ÃÑ Àü·ù´Â V = I * R ¿¡¼ 263 mA ÀÌ´Ù ¶ó°í´Â ¸» ÇÒ
¼ö ¾ø½À´Ï´Ù. ÀÏ´Ü ±×·¸°Ô¸¸ ¾Ë¾Æ µÎ½Ê½Ã¿ä. ±×¸®°í ¹Ý´ë·Î º¸µå
ÀúÇ×À» ÃøÁ¤Çϸé 5 ohmÀÌ ³ª¿À´Âµ¥ ÀÌ ¿øÀÎÀº º¸µåÀÚü°¡ ÀúÇ×°°Àº
passive device »Ó¸¸ ¾Æ´Ï¶ó active device·Îµµ ±¸¼ºÀÌ µÇÀÖ¾î¼
±×·¸½À´Ï´Ù.
¸¸¾à¿¡ 0 ohmÀÌ ³ª¿À¸é( ´Ü¿¬È÷ ¾ç¹æÇâ ¸ðµÎ ) º¸µåÀÇ ¶« »óŸ¦
´Ù½Ã °Ë»çÇϽʽÿä. ÀÌ·± °æ¿ì¸¦ short( ´Ü¶ô : (+), (-)°¡ ºÙÀ½.
¹Ý´ñ¸»Àº longÀÌ ¾Æ´Ï¶ó open ÀÔ´Ï´Ù.)¶ó°í Çϴµ¥ ¸Å¿ì
À§ÇèÇÕ´Ï´Ù.
FLUKE µðÁöÅ» Å×½ºÅÍ(DMM : Digital Multi Meter)·Î ÃøÁ¤À» Çϸé
¾ç¹æÇâ ¸ðµÎ 17 Kohm Á¤µµ°¡ ³ª¿À°í Tektronix DMMÀ¸·Î ÃøÁ¤À» Çϸé
¾ç¹æÇâ ¸ðµÎ 18.1 Kohm Á¤µµ°¡ ³ª¿É´Ï´Ù.
¼÷·ÃµÈ ¶«ÀïÀ̵éÀº Å×½ºÅ͸¦ »ç¿ëÇÑ °Ë»ç¸¦ ¾ÈÇصµ µË´Ï´Ù. ´Ü PCÀÇ
½½·Ô¿¡ ²È´Â º¸µå°Å³ª PCÀÇ POWER¸¦ »ç¿ëÇÏ´Â º¸µå´Â Àý´ë·Î ÀÌ
°Ë»ç¸¦ ÇØ¾ß ÇÕ´Ï´Ù. ÇѹøÀÇ ½Ç¼ö°¡ Àß µ¹¾Æ°¡´Â PC¸¦ ¾÷±×·¹À̵å
ÇؾßÇÏ´Â Çà¿î(?)À» ¾È°Ü ÁÙ ¼öµµ ÀÖ½À´Ï´Ù.
Ãʺ¸Àڵ鿡°Ô´Â ¹÷Âù ³»¿ëÀÌÁö¸¸ °£´ÜÈ÷ ¸»ÇØ short°¡ ¾Æ´Ï¸é ±×³É
³Ñ¾î °¡¶ó´Â ¿¹±â ÀÔ´Ï´Ù.
4. Àü¿øÀ» ³ÖÀº ÈÄ ÆÄ¿ö ½ºÀ§Ä¡¸¦ ¿Ã¸®¸é LED¿¡ ºÒÀÌ µé¾î¿Í¾ß ÇÕ´Ï´Ù.
¾Èµé¾î ¿Â´Ù¸é, Àü¿øÀÇ ¹æÇ⠶Ǵ LEDÀÇ ¹æÇâÀÌ Àß ¸øµÈ °ÍÀÔ´Ï´Ù.
5. CPUÀÇ 18¹ø(X2) ÇÉ°ú 19¹ø(X1) ÇÉ¿¡ 11.0592 MHzÀÇ sin wave°¡
³ª¿Í¾ß ÇÕ´Ï´Ù.(Á¤È®ÇÑ sinÀº ¾Æ´Ô) ¾È³ª¿À¸é C1, C2, Y1À» »ìÆì
º¸½Ê½Ã¿ä.
6. CPUÀÇ 9¹ø(RESET) ÇÉÀ» Å×½ºÅͳª ¿À½Ç·Î½ºÄÚÇÁ·Î ÂïÀº ÈÄ ¸®¼ÂÅ°¸¦
´©¸£¸é high°¡ µÇ¾ß ÇÏ°í, ³õÀ¸¸é low°¡ µÇ¾ß ÇÑ´Ù. ±×·¸°Ô µÇÁö
¾Ê´Â´Ù¸é '±×¸² 2'ÀÇ ¸®¼Â ºÎºÐÀÇ È¸·Î¸¦ Á¡°ËÇÑ´Ù.
7. CPUÀÇ 31¹ø(/EA) ÇÉÀÌ 80C31ÀÌ¸é ¹Ýµå½Ã low À̾î¾ß ÇÕ´Ï´Ù. Á¶¸³
¼ø¼µµ ´ë·Î ¸¸µé¾ú´Ù¸é ´ç¿¬È÷ low ÀÏ °ÍÀÔ´Ï´Ù.
8. 80C31À̸é 29¹ø(PSEN) ÇÉ°ú 30¹ø(ALE) ÇÉÀº ROMÀÇ À¯¹«¿¡ °ü°è¾øÀÌ
±¸ÇüÆÄ°¡ ³ª¿Í¾ß ÇÑ´Ù. PSEN°ú ALE´Â Á¤È®ÇÏ°Ô µ¿±â µÇ¾î ÀÖÀ¸¸ç
11.0592 MHz º¸µå¿¡¼´Â ¾à 1.84 MHzÀÇ ÁÖÆļö¸¦ °®´Â´Ù ( ¿ÏÀüÈ÷
ÁÖ±âÀûÀº ¾Æ´Ô). PSENÀÇ positive duty cycleÀº ¾à 50 % ÀÌ°í ALEÀÇ
positive duty cycleÀº ¾à 33.3 % ÀÌ´Ù. ÀÌ·¯ÇÑ ½ÅÈ£°¡ ³ª¿ÀÁö
¾Ê´Â´Ù¸é CPUÀÇ /EA ÇÉÀ» È®ÀÎÇØ º¸½Ê½Ã¿ä.
9. ¿¹Á¦·Î Á¦°øµÇ´Â ÇÁ·Î±×·¥ÀÎ JS51P1_0.ASMÀ» ·ÒÀ¸·Î ±Á´øÁö
´Ù¿î·ÎµùÀ» ÇÏ¿© ½ÇÇà ½ÃÅ°½Ê½Ã¿ä. ±×¸®°í CPUÀÇ 1¹ø(P1.0) ÇÉÀ»
¿À½Ç·Î½ºÄÚÇÁ·Î Âï¾îº¸¸é ÁÖÆļö 230.4KHz, positive duty cycle
25 %ÀÎ ±¸ÇüÆÄ°¡ ¹ß»ýÇÕ´Ï´Ù. ÆÄÇüÀÌ ³ª¿ÀÁö ¾ÊÀ¸¸é ÇÁ·Î±×·¥ÀÌ
½ÇÇàµÇÁö ¾Ê´Â °ÍÀÔ´Ï´Ù. ÀüüÀûÀ¸·Î ¶«À» ´Ù½Ã ÇϽʽÿä.
±×·¡µµ ¾ÈµÇ¸é ÁÖº¯¿¡ ÀÖ´Â ¼±¹è³ª Àü¹®°¡¿¡°Ô º¸ÀÌ ½Ê½Ã¿ä. ´Ù½ÃÇѹø
°Á¶ÇÏÁö¸¸ Ãʱ⠺¸µå °íÀåÀÇ ¿øÀÎÀº ³³¶« ºÒ·®ÀÌ ´ëºÎºÐ ÀÔ´Ï´Ù. Á¦¹ß
º¸µå¸¦ ¾ÖÀΰ°ÀÌ ´Ù·ç¾î Áֽʽÿä( ´Ü, ħ ¹·È÷Áö ¸»°Í )
- Á» ¾ßÇÑ °¨ÀÌ ÀÖ±º¿ä.
³³¶«À» °³¹ß»õ¹ß·Î Çسõ°í ¾ÈµÈ´Ù°í ÇÏ´Â ºÐµéÀÌ Àִµ¥ ±×·± ºÐµéÀº
ÀçÆÇ¿¡ ȸºÎ½ÃÄÑ Á¾½ÅÇüÀ» ¶§·Á ¹ö¸®´Â ¼ö°¡ ÀÖÀ¸´Ï ÁÖÀÇ ÇϽʽÿä.
(´Ü, °¨¹æÀº ³ëÅÂ¿ì ¿·¹æ ¶Ç´Â ÀüµÎȯÀÌ °Ç³Ó¹æÁß ÅÃÀÏ. »ç½ÄÀº ¾ÈµÊ)
¾Æ¹«¸® Çصµ ¾ÈµÇ´Â º¸µå´Â ¸¶ÀÌÅ©·Î·Î °¡Á®¿À½Ã°í Àú¿¡°Ô ¸ÞÀÏÀ»
Áֽʽÿä. ¸¸¾à Á¦°¡ ³³¶«ÀεΠ¿Ü¿¡ Àü¼±À» »ç¿ëÇؼ °íÄ¡°Å³ª ºÎÇ°À»
°¥¾Æ¼ °íÃÆ´Ù¸é( ´Ü, °úÀü¾Ð ¹× ¿ªÀü¾Ð ¿¡ ÀÇÇØ ¸Á°¡Áø ºÎÇ°Àº Á¦¿Ü)
¹«·á·Î Çص帮°Ú½À´Ï´Ù. ´Ü, Á¦°¡ ³³¶«ÀεΠÇϳª¸¸ »ç¿ëÇؼ °íÃÆ´Ù¸é
°íÄ£ ºñ¿ëÀ» ¹Ýµå½Ã ÁÖ¼Å¾ß ÇÕ´Ï´Ù. ( ±×°Íµµ ±ªÀåÈ÷ ¸¹ÀÌ )
Q&A] LCD & PC KEYBOARD INTERFACE 12/02 11:38 110 line
(SYSBEACK´Ô Áú¹® 1)
" JS51_LCD.ASM ÀÇ ÇÁ·Î±×·¥ ù¹ø° ºÎºÐ¿¡ÀÖ´Â ³»¿ëÁß
±Ã±ÝÇÑ ³»¿ëÀÌ ÀÖ¾î¼ Áú¹®ÇÕ´Ï´Ù.
LCDCW1 EQU 0F200H
LCDCR1 EQU 0F201H
LCDDW1 EQU 0F202H
LCDDR1 EQU 0F203H
·Î ¼³Á¤ÇÑ Æ¯º°ÇÑ ¸ñÀûÀÌ ÀÖ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù. "
(´äº¯)
´ëºÎºÐÀÇ 1 LINE OR 2 LINE CHARACTER LCD´Â 3°³ÀÇ Á¦¾î¼±À¸·Î Á¦¾î¸¦
ÇÕ´Ï´Ù. R/W( Read/Write ), RS( Register Select ), E( Enable ) ÇÉÀÌ
±×°Í ÀÔ´Ï´Ù.
R/W : READ/WRITE ¼±Åÿ¡ ¾²ÀÓ´Ï´Ù. highÀ̸é READ, lowÀ̸é WRITE
RS : Á¦¾î¸í·É ¶Ç´Â ¾îµå·¹½º¸¦ ¼ö¼öÇÒ ¶§´Â low, µ¥ÀÌŸ ·¥ ¶Ç´À
ij¸¯ÅÍ Á¦³Ê·¹ÀÌÅÍ ·¥À» ¼ö¼öÇÒ ¶§´Â high
E : active high enable
LCD ½ºÆåÀ» º¸½Ã¸é ÀÐ°í ¾²±â ŸÀֵ̹µ°¡ ³ª¿Í Àִµ¥ Âü°í ÇϽʽÿä.
( Á˼ÛÇÕ´Ï´Ù Á¦°¡ ¿äÁò »ó´çÈ÷ ¹Ù»Ú±º¿ä ) ÀÌ 3 °³ÀÇ Á¦¾î¼±À»
Á¦¾îÇϴµ¥ ¸¹Àº »ç¶÷µéÀÌ ÀÏ¹Ý Æ÷Æ®ÇÉÀ» »ç¿ëÇÏ¿© ŸÀ̹ÖÀ» ¸¸µé¾î
Áִµ¥ ±×·¸°Ô ÇÏ°Ô µÇ¸é LCD µ¥ÀÌŸ ¹ö½º¸¦ À§Çؼµµ ÇϳªÀÇ ÀÔÃâ·Â
Æ÷Æ®¸¦ »ç¿ëÇØ¾ß ÇÏ´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù. ¹°·Ð Æ÷Æ®°¡ ³²¾Æµµ´Â
»óȲ¿¡¼´Â ÁÁÀº ¹æ¹ýÀÔ´Ï´Ù.
JS8051A°¡ »ç¿ëÇÑ ¹æ¹ýÀº LCD¸¦ ÇϳªÀÇ I/O·Î º¸°í ¾îµå·¹½º ¹ö½º¿Í
µ¥ÀÌŸ ¹ö½º¸¦ »ç¿ëÇÏ¿© ¾ï¼¼½º ÇÕ´Ï´Ù. À̶§ R/W¿Í RS´Â °¢°¢ ¾îµå·¹½º
A0,A1¿¡ ¿¬°áÇÏ¿© ¹øÁö¸¦ ¹Ù²ÞÀ¸·Î¼ Á¦¾î¸¦ ÇÏ°Ô µÇ´Â °ÍÀÔ´Ï´Ù.
±×¸®°í LCDÀÇ °¡Àå ´õ·¯¿î Ư¡Áß¿¡ Çϳª°¡ active high ÀÎ E( Enable )
½ÅÈ£ Àε¥ ÀÌ°ÍÀ» Á¦¾îÇϱâ À§Çؼ´Â ¾à°£ÀÇ ·ÎÁ÷ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÀÌ°ÍÀº
16V8¾È¿¡ µé¾î ÀÖ½À´Ï´Ù. Á¦°øµÇ´Â 16V8ÀÇ EquationsÀ» º¸½Ã¸é ¾î·ÆÁö
¾ÊÀ» °Ì´Ï´Ù.
LCDCW1 EQU 0F200H
=> LCD Control Write 1 : A0 = R/W = 0, A1 = RS = 0
LCDCR1 EQU 0F201H
=> LCD Control Read 1 : A0 = R/W = 1, A1 = RS = 0
LCDDW1 EQU 0F202H
=> LCD Data Write 1 : A0 = R/W = 0, A1 = RS = 1
LCDDR1 EQU 0F203H
=> LCD Data Read 1 : A0 = R/W = 1, A1 = RS = 1
E( Enable ) ½ÅÈ£´Â ÇØ´ç ¹øÁö¸¦ Àаųª ¾²¸é 16V8¿¡¼ ÀÚµ¿À¸·Î
»ý¼ºµË´Ï´Ù. Á¦¾î½Ã Write·Î À̸§ ºÙÀÎ ¹øÁö´Â ¾²±â Àü¿ëÀÌ°í Read·Î
À̸§ ºÙÀÎ ¹øÁö´Â Àбâ Àü¿ë ÀÔ´Ï´Ù. ±×¸®°í ¸Ç ³¡¿¡ 1ÀÌ ºÙ¾î Àִµ¥
ÀÌ°ÍÀº º¯°æ½ÃÅ°Áö ¸¶½Ê½Ã¿ä. ¿Ö³Ä¸é 4 ¶óÀÎ LCD¸¦ ±¸µ¿ÇÏ½Ã°Ô µÇ¸é
LCDCW2, LCDCR2, LCDDW2, LCDDR2°¡ ´õ ÇÊ¿äÇÏ°Ô µË´Ï´Ù.
±âȸ°¡(½Ã°£ÀÌ) ÀÖÀ¸¸é Á»´õ ±íÀÌ ´Ù·ç°Ú½À´Ï´Ù.
(SYSBEACK´Ô Áú¹® 1)
" JS8051-A ¿¡ ÀÖ´Â PORT¿¡ IBM-PC¿ë KEY BOARD¸¦ ¿¬°áÇؼ
»ç¿ëÇÒ¼ö ÀÖ´ÂÁöµµ ±Ã±ÝÇÕ´Ï´Ù.
¿¬°áÇÒ¼ö ÀÖ´Ù¸é ¹æ¹ýÀ» ¾Ë·ÁÁֽøé ÈÄ»ç(???) ÇÏ°Ú½À´Ï´Ù.
Ãʺ¸ÀÚµéÀ» À§Çؼ °ÀÇ°¡ °è¼Ó ÁøÇàµÇ±â¸¦ ±â¿øÇÕ´Ï´Ù. "
(´äº¯)
¸ÕÀú Àú´Â Å°º¸µå¿Í ¸¶ÀÌÄÄÀ» ¿¬°áÇÑ °æÇèÀÌ ¾ø½À´Ï´Ù. ÇÏÁö¸¸ ¾î·Á¿ï
°Í°°Áö´Â ¾Ê±º¿ä. ±âº»ÀûÀ¸·Î KEY BOARD´Â JS8051A »Ó¸¸ ¾Æ´Ï¶ó
´ëºÎºÐÀÇ ¸¶ÀÌÄÄ°ú ¿©°áÀÌ °¡´ÉÇÕ´Ï´Ù.
¸ÕÀú SYSBEACK´ÔÀÌ KEY BOARD¿Í ¿¬°áÀ» ÇÏ·Á°í ÇÏ½Å´Ù´Ï Å°º¸µåÀÇ
±âº»Á¦¾î ´É·ÂÀº ÀÖÀ¸½Ã°Ú±º¿ä. SCAN CODE, ASCII CODE, EXTENDED CODE,
KEY BOARD INTERRUPT, RING BUFFER, MAKE CODE, BREAK CODE µîµî¿¡ ´ëÇÑ
°³³äÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù.
XT¿ë Å°º¸µå¿Í AT À̻󿡼 »ç¿ëµÇ´Â Å°º¸µå´Â Àü¼Û Æ÷¸ËÀÌ ´Ù¸§´Ï´Ù.
Å°º¸µå µÚ¿¡ µö ½ºÀ§Ä¡°¡ ÀÖ¾î¼ ¼±ÅÃÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¾³¯ XT¿¡¼´Â
8088ÀÌ Á÷Á¢ Å°º¸µå¿ÍÀÇ Åë½ÅÀ» °ü¸® ÇßÁö¸¸ ATÀ̻󿡼´Â 8042 CPU°¡
±×ÂÊÀÏÀ» ´ã´ç ÇÕ´Ï´Ù. µû¶ó¼ PCÀÇ Å°º¸µå Åë½ÅÀº PCÀÇ 8042°ú Å°º¸µå
³»¿¡ ÀÖ´Â 8048ÀÌ ½ÅÈ£¸¦ ÁÖ°í ¹Þ´Â °ÍÀÔ´Ï´Ù. ¾ç¹æÇâ µ¥ÀÌŸÀÇ Àü¼ÛÀº
µÎ°³ÀÇ ÇÉÀ» ÀÌ¿ëÇÏ¿© Çϴµ¥ Çϳª´Â CLOCKÀÌ°í Çϳª´Â DATA ÀÔ´Ï´Ù.
µû¶ó¼ °¡Àå °£´ÜÇÏ°Ô´Â 2°³ÀÇ Æ÷Æ® ÇÉÀ¸·Î ÇÒ ¼ö ÀÖ½À´Ï´Ù.
º¸´Ù ÀÚ¼¼ÇÑ ³»¿ëÀº XT TECHANICAL REFERANCE, AT TECHANICAL REFERANCE
, ±âŸ IBM PC Á¦¾î ¼ÀûÀ» º¸½Ã¸é ȸ·Îµµ¿Í Àü¼Û µ¥ÀÌŸ Æ÷¸Ë,
ÇÁ·ÎÅäÄÝ, ±âŸ È帧 Á¦¾î µî¿¡ ´ëÇÏ¿© ¸¹ÀÌ ³ª¿Í ÀÖ½À´Ï´Ù.
´õ¿í ÀÚ¼¼È÷ ¾Ë·Á µå¸®Áö ¸øÇØ Á˼ÛÇÕ´Ï´Ù. ³ªÁß¿¡ Ȥ½Ã ±âȸ°¡ ÀÖÀ»
Áöµµ ¸ð¸£°Ú±º¿ä.
SYSBEACK´ÔÀÌ 'ÈÄ»ç(???)'¶ó°í Çϼ̴µ¥ ´ÙÀ½ºÎÅÍ´Â ÈÄ»ç ³»¿ëÀ» ´õ¿í
ÀÚ¼¼ÇÏ°Ô ¹àÇô Áֽʽÿä. ¿¹¸¦ µé¸é 'ÈÄ»ç(100¸¸¿øÀ» µå¸²)',
'ÈÄ»ç(¸ÆÁÖ¿Í ¾ÈÁÖ¿Í (?) Á¦°ø)', 'ÈÄ»ç(¸·°É¸®¿Í ÆÄÀü)',
'ÈÄ»ç(Æ÷Å×ÀÌÅäĨ°ú ÀÚÀ¯½Ã°£ 2°³¾¿ Á¦°ø)', 'ÈÄ»ç(Áï¼® º¹±Ç 3Àå)'....
[Q&A] 87C51( ¶Ç´Â 89C51 ) »ç¿ë¹ý 12/02 11:41 65 line
JS8051A ¿¡¼ 87C51(89C51)À» »ç¿ëÇÏ·Á Çϴµ¥¿ä.
< NYC´Ô Áú¹® >
" ¾È³çÇϽʴϱî
Àú´Â JS8051 BOARD ¸¦ ±¸ÀÔÇÏ¿© °øºÎÇÏ°íÀִ ȸ»ç¿øÀÔ´Ï´Ù.
ÀÌ BOARD ¸¦ Ưº°È÷ ¾îµð¿¡ »ç¿ëÇÏ°Ú´Ù´Â °èȹÀº ¾ø´Âµ¥ °øºÎ°¡ ÀߵǸé
MOUSE ³ª±âŸÀÇ ¸ñÀûÀ¸·Î »ç¿ëÇÒ°èȹÀÔ´Ï´Ù.
±×·±µ¥ ¾ó¸¶Àü 8751 CHIP À» »çµÐ°Ô Àִµ¥ ÀÌ°ÍÀ» »ç¿ëÇÏ·Á°í ÇÕ´Ï´Ù.
8751 CHIP Àº 4K BYT ÀÇ ROM ÀÌ ³»ÀåµÇ¾î ÀÖ´õ±º¿ä ±×¸®°í JP3 ÀÇ 2¹ø3¹øÀÇ
JUMP µµÀ߾˰ڽÀ´Ï´Ù.
±×·±µ¥ ÇöÀçÁ¦°¡ Åë½Å PORT ¸¦ »ç¿ëÇÏ¿© DOWN LOAD ¸¦ ¼ö½Ã·Î ÇÏ¸é¼ ÇÁ·Î±×·¥
À» °øºÎÇÏ°í ÀÖ½À´Ï´Ù.
±×·±µ¥ BOADR ³»ÀÇ Åë½Å PROGRAM 27256 ROM ¿¡ ÀÖÁö ¾Ê´Â°¡ »ý°¢µË´Ï´Ù.
±×·¡¼ ÀÌ ÇÁ·Î±×·¥ À» ±×µ¥·Î 8751 ROM ¿¡ COPY Çصµ Åë½ÅÇϴµ¥´Â ¹®Á¦°¡
¾ø´ÂÁö ±Ã±ÀÇÕ´Ï´Ù. ¶Ç ±×·¸°Ô Çؼ 8751 CHIP À» »ç¿ëÇÑ´Ù¸é 27256 ADDRESS
°¡ ±âÁ¸ 0¹øÁö°¡ 4096 ¹øÁö·Î ¹Ù²î¾î ¿¢¼¼½ºµÇ´ÂÁö ¾Æ´Ï¸é Ĩ ¼¿·ºÅ͸¦ ȸ·Î»ó
º¯°æÇØ ÁÖ¾î¾ß ÇÏ´ÂÁö ¾Æ´Ï¸é 27256 ÀÇ 4K °¡ ÁßøµÇ´ÂÁö ¶Ç º¸µåÀÇ Åë½Å
ÇÁ·Î±×·¥ÀÇ ÀϺθ¦ ¼öÁ¤Çؼ Ä«ÇÇÇØ¾ß ÇÏ´ÂÁöµµ±Ã±ÝÇÕ´Ï´Ù.
¹ø°Å·Î¿ì½Ã °ÚÁö¸¸ ÁÁÀº ´äº¯ºÎŹµå¸³´Ï´Ù.
±×¸®°í ´Ù¸¥ Á¾·ùµµ Ãë±ÞÇϽŴٸé Ç°¸íµµ ¾Ë·ÁÁֽʴϿä. "
< ´äº¯ >
¸ÕÀú Á¦ º¸µå¸¦ »ç¿ëÇØ Áּż °¨»çÇÕ´Ï´Ù. ±×¸®°í MOUSE¸¦ ÇϽ÷Á
ÇÑ´Ù´Ï Àúµµ ½½½½ ¼ÕÀÌ ±ÙÁú±ÙÁú Çϱº¿ä. JS8051À» »ç¿ëÇÑ ¸¶¿ì½ºÀÇ
ȸ·Îµµ´Â ÀÌ¹Ì È¯¼ºµÇ ÀÖ°í Çϵå¿þ¾îµµ ÀϺΠ¿Ï¼ºµÇ ÀÖ½À´Ï´Ù. ¿Ã¸®°í´Â
½ÍÁö¸¸... ¸¶À½¿¡ µé°Ô ±¼·¯ °¡¸é ¿Ã¸®°Ú½À´Ï´Ù. Âü°í·Î ¿ë»ê¿¡ ÀÖ´Â
¸¶ÀÌÅ©·Î¸¶¿ì½º »óÁ¡¿¡´Â °ÅÀÇ ¸ðµç ¸¶¿ì½º Àç·á°¡ ±¸ºñµÇ¾î ÀÖ½À´Ï´Ù.
±×¸®°í ¸¶¿ì½º ±â±¸¹° Áß ÀϺδ Á¦°¡ ¼³°èÇÑ °ÍÀÔ´Ï´Ù. ȸ»ç¿ø À̸é¼
¸¶¿ì½º¸¦ ÇϽô ºÐÀ̶ó´Ï ±¦È÷ ¹Ý°©±º¿ä. Á¦»ý°¢À¸·Î ¸¶¿ì½º¶ó´Â
»ç¾÷(?)ÀÌ Àåºñ ¸éÀ̳ª °æÁ¦ÀûÀÎ ¸éÀº ¹Î°£ÀÎ ¾Æ´Ï »çȸÀÎ( À̸»µµ Á»
ÀÌ»ó Çϱº )µéÀÌ ³µÁö¸¸ ¾Æ¹«·¡µµ ½Ã°£¸é¿¡¼´Â ÇлýµéÀÌ ³µ°ÚÁö¿ä.
8751À» »ç¿ëÇϽŠ´Ù±¸¿ä. JS8051A Á¦°ø µð½ºÄÏÀ» º¸½Ã¸é ¸ð´ÏÅÍ ·Ò
½î½º¿Í binary ÈÀÏÀÎ ROM.BINÀÌ Àִµ¥ ÀÌ°ÍÀ» ¹Ù·Î 87C51¿¡ ½É¾î¼
¾²½Ã¸é µË´Ï´Ù. ÀüÇô ¼öÁ¤ÇÏÁö ¾Ê¾Æµµ µË´Ï´Ù. ±×¸®°í ¿ÜºÎ·ÒÀº ¾Ë°í
°Ô½Å´ë·Î 4096(1000H) ¹øÁöºÎÅÍ ½ÃÀÛµÇ¾ß ÇÕ´Ï´Ù. À̶§ ¿ÜºÎ ·ÒÀÇ 0
ºÎÅÍ 4095 ¹øÁö¸¦ ÀÐÀ¸·Á°í ÇÏ¸é ³»ºÎ ·ÒÀÌ ÀÐÇô Áý´Ï´Ù. µû¶ó¼
ÀϹÝÀûÀ¸·Î´Â »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù. ±×·±´ë ¿Ö ¿ÜºÎ·ÒÀ» ¾²¸é¼ °ªºñ½Ñ
87C51À» ¾²·Á°í ÇÏ´ÂÁö¿ä?
( <= " ¿Âµµ¶û security ¶§¹®¿¡ ±×·±´Ù ¿Ö, ¶³ºÎ³Ä? " )
¾ÆÆ®¸á(ATMEL)¿¡¼´Â 89C51À̶ó°í 87C51°ú °°À¸¸é¼ ³»ºÎ ·ÒÀÌ
EEPROMÀ¸·Î µÈ°ÍÀÌ Àִµ¥ °ªµµ ½Î°í »ç¿ëÇϱâ´Â ´õ ÆíÇÔ´Ï´Ù. ±×·±µ¥
6°³¸¦ »ç¿Í¼ Çغ¸´Ï±î 2°³¸¸ Á¦´ë·Î ÀÛµ¿µÇ´õ±º¿ä. Àú´Â ·Ò¶óÀÌÅÍ´Â
ALL-03A¸¦ ¾²´Âµ¥ ±¸¹öÀü ÇÁ·Î±×·¥¿¡¼´Â ¾Æ¿¹ ¾ÈµÇ°í ½Å¹öÀü V9.05
¿¡¼µµ ¹®Á¦°¡ ÀÖ´Â°Í °°¾Æ¿ä. ¾Æ´Ï¸é ALL-03A ³»ºÎ Çϵå¿þ¾î ¼ÂÆÃÀÌ
Á¦´ë·Î ¾ÊµÇ¾ú´ÂÁöµµ ¸ð¸£°í, ±×°Íµµ ¾Æ´Ï¸é ¾ÆÆ®¸á QC( Qulity Check,
Á¦Ç° °Ë»ç )¿¡ ¹®Á¦°¡ .... ¾î°µç ¾îµò°¡ ¹®Á¦°¡ ÀÖ½À´Ï´Ù. 87C51Àº
¾ÆÁÖ ¸ÂÀÖ°Ô Àß ±¸¿ö Áö´Âµ¥...
¾ÆÁ÷ ´Ù¸¥ Á¦Ç°ÀÇ JS ¾²¸®Áî´Â ³ª¿ÍÀÖÁö ¾Ê½À´Ï´Ù. ¹°·Ð °èȹÀº
ÀÖ½À´Ï´Ù. ¾ÕÀ¸·ÎÀÇ Á¦Ç°µµ ¿ª½Ã È®½ÇÇÑ technical support¸¦ º¸ÀåÇÏ°Ú
½À´Ï´Ù.
Ȥ½Ã JS8051A¸¦ »ç¿ëÇÏ¿© ¸¶¿ì½º¸¦ °èȹÇϽðųª ¸¸µå½Ã´Â ºÐµé
¿¬¶ôÀ̳ª ÇÏ°í Áö³À½Ã´Ù. ±×¸®°í ´Ù¸¸µé¾úÀ¸¸é ²À º¸¿© ÁÖ¼¼¿ä. Á¦°ÍÀº
Æ´³ª´Â´ë·Î ¸¸µé´Ùº¸´Ï ¾ÕÀ¸·Îµµ ²Ï °É¸±°Í °°±º¿ä. Á¦°Íµµ ´Ù ¸¸µé¸é
º¸¿©µå¸®°í ±¦Âù°Ô ±¼·¯°¡¸é ¿ÏÀüÈ÷ °ø°³ ÇÏ°Ú½À´Ï´Ù. .
- Á¤¿ë¿ø ¿Ã¸²
[21] ASMÀÇ ¼¼°è·Î ¿À½Å°ÍÀ» ¿Ï¿µÇÕ´Ï´Ù.( 12/11 19:05 126 line
ASMÀÇ ¼¼°è·Î ¿À½Å°ÍÀ» ȯ¿µÇÕ´Ï´Ù.(¿ë¾îÁ¤¸®)
( ASM = ASSEMBLER LANGUAGE )
80C31 Ãʺ¸ÀÚ¶ó°íÇصµ ÀÌ¹Ì MASM À̳ª TASM¿¡¼´Â ³¯°í ±â´Â ºÐµéÀÌ
ÀÖÀ» °Å°í Z80 ASMÀ» Çغðųª ´Ù¸¥ ASMÀ» Çغ» »ç¶÷, C ¸¸ Çغ»»ç¶÷
¾Æ´Ï¸é ±î¸·´«(?)µµ ÀÖÀ»ÅÙµ¥ ¸ðµÎ ¿©±â¿¡ ¿À½Å°ÍÀ» ȯ¿µÇÕ´Ï´Ù.
¸ÕÀú ASM¿¡ µé¾î°¡±â Àü¿¡ ¸î°¡Áö ¿ë¾îÀÇ °³³äÀ» Àâ°Ú½À´Ï´Ù.
Áö±Ý ´çÀåÀº ¿ë¾î¸¦ ¸ðµÎ ÀÌÇØÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ¾ÕÀ¸·Î °Á°¡
ÁøÇàµÇ¸é¼ ÇØ´ç ¿ë¾î°¡ ³ª¿À¸é Çѹø¾¿ ºÁ Áֽʽÿä.
¿ÀÆÛ·¡ÀÌÅÍ(operator)
¿ÀÆÛ·¡ÀÌÅÍ(operator)¶ó´Â ¸»À» µéÀ¸¸é ¹«¾ùÀÌ »ý°¢³³´Ï±î? ÄÄÇ»ÅÍ ¾Õ¿¡
¾É¾ÆÀÖ´Â ¾Æ¸®µû¿î ¾Æ°¡¾¾¸¦ »ý°¢ÇϽóª¿ä. ±×·¯³ª ASM¿¡¼´Â
¼öÇп¡¼¿Í °°ÀÌ +,-,x,/...µî°ú °°Àº °ÍÀ» ÀÏÄ´ ¿¬»êÀÚ¶ó´Â ¸»·Î
¾²ÀÔ´Ï´Ù. ƯÈ÷ ±âÈ£ º¸´Ù´Â ADD, SUB, MUL, DIV ... µî ¿µ¾î ¾àÀÚ·Î
¾²¸é¼ operation code¶ó°í ºÎ¸£¸ç ÁÙ¿©¼ OP CODE(¿ÀÇÇÄÚµå) ¶ó´Â ¸»À»
¾¹´Ï´Ù.
¶óº§(label)
¶óº§Àº ¿ÊÀ̳ª ¹°°Ç¿¡ ºÙÀº »óÇ¥ µüÁö¸¦ ¸»ÇÏ´Â °ÍÀÌ ¾Æ´Ï°í bookmark
( Ã¥À» º¸´Ù°¡ À߶§ Ã¥°¥ÇÇ¿¡ ²È¾Æ ³õ´Â Á¶±×¸¸ Ã¥¹Þħ(?) )¿Í ºñ½ÁÇÑ
±â´ÉÀ» ÇÏ´Â °ÍÀ¸·Î ¶óº§Àº ±× ¶óº§ÀÌ ÀÖ´Â À§Ä¡ÀÇ ¹øÁö¸¦ ´ëÇ¥ÇÕ´Ï´Ù.
¶óº§Àº ÇÁ·Î±×·¡¸Ó°¡ ÇÊ¿äÇÑ °÷¿¡ Á÷Á¢ ºÙÀÌ´Â °ÍÀÔ´Ï´Ù.
Ä¿¸ÇÆ®(comment)
³Ã³ÇÑ Áú¹®À» ¹Þ¾ÒÀ»¶§ ´ë´äÇÏ´Â 'No comment'¿¡¼ÀÇ comment¿Í ¶æÀÌ
°°½À´Ï´Ù. 'ÇÒ¸» ¾øÀ½'ÀÇ 'ÇÒ¸»'ÀÌ ¼ø¼öÇÑ ¿ì¸®¸»ÀÌ°í ¼³¸í, ÁÖ¼®À»
¸»ÇÕ´Ï´Ù. ASM¿¡¼ ºÎ¿¬ ¼³¸íÀ» ÇÒ¶© ¼¼¹ÌÄÝ·Ð(;) µÚ¿¡ ¾²¸é µË´Ï´Ù.
°¡Â¥ ¸í·É(pseudo instruction)
pseudo¿¡¼ pÀÚ°¡ ¹¬À½À̶ó '½´µµ¿ì'·Î ÀнÀ´Ï´Ù. °ÅÁþ ¸í·É, ÀÇ»ç ¸í·É
À̶ó°íµµ Çϴµ¥ ASM ½î½º¿¡¼´Â CPU¿¡°Ô ¸í·ÉÇÏ´Â OP code ¿Ü¿¡
¾î¼Àºí·¯ ÇÁ·Î±×·¥ ÀÚü¿¡ ´ëÇÏ¿© ¸í·ÉÀ̳ª Á¤º¸¸¦ ÁÙ¼ö°¡ Àִµ¥ ÀÌ·±
¸í·ÉÀ̳ª Á¤º¸¸¦ ¸»ÇÏ´Â °ÍÀÔ´Ï´Ù. OP code¿Í °°ÀÌ Á÷Á¢ ±â°è¾î ÄÚµå·Î
¹ø¿ªµÇÁö ¾È´Â´Ù´Â Àǹ̿¡¼ °¡Â¥ ¸í·ÉÀ̶ó°í ºÎ¸§´Ï´Ù. ÀÌ °¡Â¥
¸í·ÉµéÀº ASM ÇÁ·Î±×·¥À» ¸¸µç ȸ»ç¸¶´Ù ¾à°£¾¿ ´Ù¸¨´Ï´Ù.
·çƾ(routine)
'ÀÏ»óÀûÀÎ', 'Ʋ¿¡ ¹ÚÈù' À̶ó´Â ¶æÀÌ ¾Æ´Õ´Ï´Ù. ÀϹÝÀûÀ¸·Î ASM¿¡¼´Â
Àüü ÇÁ·Î±×·¥ Áß¿¡ ¾î¶² ƯÁ¤ ±â´ÉÀ» ÇÏ´Â ÀÛÀº ÇÁ·Î±×·¥À» ÀÏÄ¿¸¦¶§
·çƾ ¶Ç´Â ½áºê·çƾÀ̶ó°í ÇÕ´Ï´Ù.
Àç¹èÄ¡(relocation)
°³³äÀûÀ¸·Î ¾à°£ ¾î·Á¿îµ¥, ¿©·¯°³ÀÇ ÇÁ·Î±×·¥À» ÇÕÄ¥¶§ ·çƾµéÀÌ ¼·Î
¶¶»§µÇÁö(°ãÃÄÁöÁö) ¾Ê°Ô ¹øÁö¸¦ ÇÒ´çÇØ ÁÖ´Â ÀÏÀ» ¸»ÇÕ´Ï´Ù. ¿ì¸®°¡
Çϴ°ÍÀÌ ¾Æ´Ï°í linker¶ó´Â ¶È¶ÈÇÑ ÇÁ·Î±×·¥ÀÌ ¾Ë¾Æ¼ ÇØÁÝ´Ï´Ù.
±×¸®°í 'Àç¹èÄ¡ °¡´ÉÇÑ(relocatable) ÇÁ·Î±×·¥' À̶ó´Â ¸»µµ ÀÚÁÖ
»ç¿ëÇϴµ¥ ÀÌ°ÍÀº ÇÁ·Î±×·¥ ÀÚü¿¡ Àý´ë ¹øÁö°¡ ¾ø°í »ó´ë ¹øÁö(offset
address)·Î µÇ¾îÀÖ´Â ÇÁ·Î±×·¥À» ¸»Çϴµ¥ ÀÌ·± ·çƾÀº (¸µÄ¿°¡) ÀÓÀÇÀÇ
¹øÁö¿¡ ¹Ú¾î ³Öµµ ¹®Á¦°¡ ¾ø½À´Ï´Ù. ÀÌ·± ±â´ÉÀº CPU ¼³°è¿¡¼ºÎÅÍ
°í·ÁµÇ¾îÁø ±â´ÉÀ¸·Î °í±Þ¾ð¾î·Î ¿Ã¶ó °¥¼ö·Ï ´õ¿í Áß¿äÇØ Áý´Ï´Ù.
¿ÀºêÁ§Æ® ÈÀÏ(object file)
'¸ñÀû ÈÀÏ' À̶ó°í Á÷¿ªÇÏ´Â ºÐµéÀÌ Àִµ¥, º°·Î ±× ¶æÀÌ ¿Í´æÁö
¾È´Â±º¿ä. Á¦°¡ ¹ø¿ªÇÑ´Ù¸é 'Áß°£ ÈÀÏ'À̶ó°í ÇÏ°Ú½À´Ï´Ù. ±×·¡µµ ½â
¾î¿ï¸®Áö´Â ¾Ê±º¿ä. ¿ÀºêÁ§Æ® ÈÀÏÀº ½î½º ÈÀÏ°ú ½ÇÇà°¡´É ÈÀÏÀÇ
Áß°£¿¡ ¸¸µé¾îÁö´Â °úµµ±âÀû ÈÀÏ ÀÔ´Ï´Ù. ½î½º ÈÀÏ ¾È¿¡ ¿ÜºÎ ÇÔ¼ö
ÂüÁ¶°¡ ÀÖÀ»¶§ ¾î¼Àºí·¯³ª ÄÄÆÄÀÏ·¯´Â ½î½º ¾È¿¡´Â ±× ÇÔ¼ö¿¡ ´ëÇÑ
ÀÚ·á°¡ ¾ø±â¶§¹®¿¡ ±× °÷Àº ºñ¿öµÎ°í ³ª¸ÓÁö¸¦ ¹ø¿ªÇÏ°Ô µË´Ï´Ù. ÀÌ·±
¸ñÀû ÈÀÏÀº ¸µÄ¿¿¡ ÀÇÇؼ ¿ÏÀüÇÑ ÈÀÏ·Î µË´Ï´Ù. ¿ÜºÎ ÂüÁ¶°¡ ¾ø´Ù°í
Çصµ ¿ÀºêÁ§Æ® ÈÀÏÀ» °ÅÄ¡´Â °úÁ¤ ¾øÀÌ ¹Ù·Î ½ÇÇà°¡´É ÈÀÏÀÌ µÇÁö´Â
¾Ê½À´Ï´Ù. ±×·¯³ª ÀϺΠASM ÇÁ·Î±×·¥Àº ÀÌ·¯ÇÑ Áß°£ ÈÀÏÀ» ¸¸µéÁö ¾Ê°í
¸µÅ© ±â´É ¾øÀÌ ¹Ù·Î ½ÇÇà ÈÀÏÀ» ¸¸µì´Ï´Ù. ÀÌ·± ASM ÇÁ·Î±×·¥Àº
¿©·¯°³ÀÇ Áß°£ ÈÀÏÀ̳ª ¶óÀ̺귯¸® ÈÀÏÀ» Çϳª·Î ¹¬¾î ½ÇÇà°¡´É
ÈÀÏÀ» »ý¼ºÇÏ´Â ´É·ÂÀÌ ¾ø½À´Ï´Ù. ±×·¸´Ù°í ÀÌ·± ·ùÀÇ ASM ÇÁ·Î±×·¥ÀÌ
³ª»Ú´Ù°í ´ÜÁ¤ÀûÀ¸·Î ¸»ÇÒ ¼ö´Â ¾ø½À´Ï´Ù.
¸µÅ©(link)
'¿¬°á' À̶ó´Â ¸»º¸´Ù´Â ±×³É '¸µÅ©'¶ó°í ºÎ¸£´Â °ÍÀÌ ÀÚ¿¬ ½º·´±º¿ä.
¿©·¯°³ÀÇ ¿ÀºêÁ§Æ® ÈÀÏ( ¶óÀ̺귯¸® ÈÀÏ Æ÷ÇÔ )À» ¹¶Ãļ ½ÇÇà°¡´É
ÇÁ·Î±×·¥À» ¸¸µå´Â °ÍÀ» ¸»ÇÕ´Ï´Ù. linker¶ó´Â ÇÁ·Î±×·¥ÀÌ ¼öÇàÀ»
Çϴµ¥ linker´Â ¿ÀºêÁ§Æ® ÈÀϵéÀ» ÅëÂ¥¹Ù¸®·Î ÇÕÄ¡Áö´Â ¾Ê½À´Ï´Ù.
ÁÖ°¡µÇ´Â(main) ÇÁ·Î±×·¥¿¡¼ ÇÊ¿äÇÑ °Í¸¸À» Á¶ÇÕÇؼ ½ÇÇà°¡´ÉÇÑ
ÈÀÏÀ» ¸¸µì´Ï´Ù. ÀÌ °úÁ¤¿¡¼ relocatableÀ̶ó´Â °³³äÀÌ ÇÊ¿äÇÏ°Ô µÇ´Â
°ÍÀÔ´Ï´Ù.
±â°è¾î(machine language)
¿©±â¼ ±â°è´Â CPU¸¦ ¸»ÇÕ´Ï´Ù. Á¦ »ý°¢Àε¥ ¾Æ¸¶ ¿¾³¯ º£ÁöÁö°¡ ¸¸µç
ÄÄÇ»ÅÍ°¡ ±â°è·Î µÇÀÖ¾î¼ ±×·¸°Ô ºÎ¸£Áö ¾ÊÀ»±î ÇÕ´Ï´Ù. ±â°è¾î´Â
CPU¸¦ ¼³°èÇÑ »ç¶÷ÀÌ ±× CPU¿¡°Ô ºÎ¿©ÇÑ ¸í·É ÄÚµå(machine code)·Î
µÇ¾îÀÖ´Â ¾ð¾î·Î CPU ¸¶´Ù ¼·Î ´Ù¸§´Ï´Ù. ¾î¼Àºí·¯¿Í´Â ÀÏ´ëÀÏ
´ëÀÀ°ü°è°¡ ÀÖ½À´Ï´Ù. binary ÇüÅ·ΠµÇÀÖ½À´Ï´Ù.
ÀÌÁø ÈÀÏ(binary file)
ÀÌÁø ÈÀÏÀº CPU°¡ ¾Ë¾Æµí´Â machine code·Î µÇÀÖ´Â ÈÀÏ·Î ·Ò¿¡
±¸¿ö³ÖÀ» ¼ö ÀÖ´Â À¯ÀÏÇÑ ÈÀÏÀ» ¸»ÇÕ´Ï´Ù. Ȥ½Ã hex fileÀ» ·Ò¿¡
±¸¿ö³ÖÀ» ¼ö ÀÖ´Â ÈÀÏ·Î ¾Ë°í ÀÖ´Â ºÐµéÀÌ Àִµ¥ À߸ø ¾Ë°í ÀÖ´Â
°ÍÀÔ´Ï´Ù. hex fileÀº ·Ò¶óÀÌÅͳª ·Ò¿¡¹Â·¹ÀÌÅÍ ÇÁ·Î±×·¥¿¡¼ º¯È¯À»
½ÃÅ°°Å³ª Ÿ°Ù º¸µå¿¡ ¹ÚÇôÀÖ´Â ¸ð´ÏÅÍ ÇÁ·Î±×·¥ÀÌ º¯È¯À» ½ÃÄѼ
·ÒÀ̳ª ·Ò ±â´ÉÀ» ÇÏ´Â ·¥¿¡ ³Ö´Â °ÍÀÔ´Ï´Ù. ÀϹÝÀûÀ¸·Î binary fileÀº
hex file º¸´Ù ÈξÀ ÀûÁö¸¸ Ưº°ÇÑ °æ¿ì¿¡´Â ±×·¸Áö ¾Ê½À´Ï´Ù. binary¸¦
4 ºñÆ®¾¿ Àß¶ó¼ ¾²°Å³ª ÀÐÀ¸¸é hexdecimalÀÌ µÇ´Âµ¥ ¾î¶»°Ô binary ¿Í
hex¸¦ µû·Î º¼¼ö Àִ°¡? ¸Â½À´Ï´Ù. ¿ì¸®°¡ hex·Î Ç¥ÇöÇÏÁö¸¸ ½ÇÁ¦ ÀüÀÚ
ȸ·Î¿¡¼´Â ÇÑ ¶óÀÎÀ» ÅëÇØ ÇѺñÆ®°¡ ¿Ô´Ù °¬´Ù ÇÏ°í ¸Ó½® Äڵ带 ·Ò¿¡
±¸¿ï¶§¿Í ·Ò¿¡¼ °ªÀ» ÀÐÀ»¶§ 8 ºñÆ® ´ÜÀ§·Î ¾ï¼¼½º µË´Ï´Ù. µû¶ó¼
ÀüÀÚȸ·Î¿Í ³í¸®È¸·Î »ó¿¡¼´Â binary·Î ºÁµµ octal·Î ºÁµµ hex·Î ºÁµµ
°ü°è°¡ ¾ø½À´Ï´Ù. ÇÏÁö¸¸ binary file, hex file ó·³ µÚ¿¡ fileÀ̶ó´Â
¸»ÀÌ ºÙÀ¸¸é ASM ¼¼°è¿¡¼´Â ±× Àǹ̰¡ ´Þ¶óÁü´Ï´Ù. binary fileÀº ±×
Àǹ̰¡ ¿ì¸®°¡ ¾Ë°í ÀÖ´Â °Í ¼ø¼öÇÑ ¸Ó½® ÄÚµåÀÇ ÁýÇÕÀ̶ó¼ PC»óÀÇ
EXE³ª COM file ó·³ ÀÏ¹Ý ¿¡µðÅͷδ °ªÀ» º¼ ¼ö°¡ ¾ø½À´Ï´Ù. ±×·¯³ª
hex fileÀº CPU¸¦ »ý»êÇϴ ȸ»ç¸¶´Ù ¼·Î ´Ù¸¥ ¾î¶°ÇÑ Æ÷¸ËÀ» °¡Áö°í
ÀÖ½À´Ï´Ù. ¿ì¸®°¡ ÀÐÀ» ¼ö ÀÖ´Â ÅýºÆ®·Î µÇ¾î ÀÖÀ¸¸ç ¹øÁö¹× ±âŸ ´Ù¸¥
Á¤º¸¸¦ ÇÔ²² °¡Áö°í ÀÖ½À´Ï´Ù.
[22] ASM ±¸Á¶ 12/11 19:07 91 line
ASM ±¸Á¶
¿µ¾î·Î´Â ¸í·ÉÀ» ³»¸±¶§ µ¿»ç¸¦ ¾Õ¿¡ ¾¹´Ï´Ù. ±×·¡¼ ASM¿¡¼µµ µ¿»ç Áï
¸í·ÉÀÌ ¸ÕÀú ¿À°í µÚ¿¡ ¸ñÀû(´ë»ó)ÀÌ ¿É´Ï´Ù.
ADD A,B => 'A,B¸¦ ´õÇضó. ( °á°ú´Â A¿¡ ³Ö¾î¶ó )'
| |
¸í·É ¸ñÀû
| | |
OP ÄÚµå | |__ Á¦ 2 ¿ÀÆÛ·£µå : source
|____ Á¦ 1 ¿ÀÆÛ·£µå : destenation
ASMÀ̶õ binary ·¹º§ÀÇ ±â°è¾î¸¦ 1 : 1 ·Î ¿ì¸®°¡ ¾Ë±â ½¬¿î ¸»·Î ¸¸µé¾î
³õÀº °ÍÀÔ´Ï´Ù. ÇÏÁö¸¸ ¸î°¡Áö ÁÖÀÇÇÒ Á¡µéÀÌ ÀÖ½À´Ï´Ù. ¸ÕÀú 1 : 1
´ëÀÀÀ̶õ ¸»Àº 'ADD A,B'¸¦ ¿¹·Î µé¸é 'ADD'´Â 01H·Î 'A'´Â 02H·Î
'B'´Â 03H·Î ´ëÀÀµÇµíÀÌ OP ÄÚµå¿Í ¿ÀÆÛ·£µå°¡ ÇØ´çÇÏ´Â ÄÚµå·Î Çϳª¾¿
´ëÀÀµÈ´Ù´Â ¸»Àº ¾Æ´Õ´Ï´Ù. ¾Æ·¡ ¾î¼Àºí·¯ ¸®½ºÆ®¿¡¼ º¸µíÀÌ 'ADD A,B'°¡
Åëü·Î 25F0·Î ¹ø¿ªµÈ´Ù°í ºÁ¾ß ÇÕ´Ï´Ù. ´õ¿í ÀÚ¼¼È÷ ¶â¾îº¸¸é 25F0 ¶ó´Â ¸Ó½®
ÄÚµå( machine code = ±â°è¾î ÄÚµå = ÀÌÁø ÄÚµå)ÀÇ ±¸¼º¿¡µµ ¾à°£ÀÇ ±ÔÄ¢ÀÌ
ÀÖÁö¸¸ Á¾ÇÕÀûÀ¸·Î º¸¸é 'ADD A,B' Àüü°¡ 25F0·Î ¹ø¿ª(assemble)µÈ °ÍÀ¸·Î
ºÁ¾ßÇÕ´Ï´Ù.
¹øÁö ±â°è¾î ÄÚµå ASM ½î½º
| | _____|______
| | / \
1 0000 25F0 ADD A,B
2 0002 2403 ADD A,#3
3 0004 28 ADD A,R0
4 0005 26 ADD A,@R0
( ¿À¸¥ÂÊÀÇ ASM ½î½º°¡ ¹ø¿ªµÈ °ÍÀÌ ¿ÞÂÊÀÇ ±â°è¾î ÄÚµå ÀÔ´Ï´Ù. )
±×¸®°í 'B ·¹Áö½ºÅÍÀÇ ³»¿ëÀ» A ·¹Áö½ºÅÍ¿¡ ´õÇØ ³Ö¾î¶ó'¶ó´Â ¶æÀÇ
'ADD A,B'¿Í 'R0 ·¹Áö½ºÅÍÀÇ ³»¿ëÀ» A ·¹Áö½ºÅÍ¿¡ ´õÇØ ³Ö¾î¶ó'¶ó´Â
¶æÀÇ 'ADD A,R0'´Â ¿ì¸®°¡ º¸±â¿¡´Â ºñ½ÁÇÏ°Ô º¸ÀÌ°í ¹ø¿ªµÈ Äڵ嵵
ºñ½ÁÇϰųª ¿¬°ü¼ºÀÌ ÀÖ´Ù°í »ý°¢Çϱ⠽¬¿îµ¥ ±â°è¾î Äڵ带 º¸¸é ¾Ë ¼ö
ÀÖµíÀÌ ¼·Î°£¿¡ º°·Î ¿¬°ü¼ºÀÌ ¾ø½À´Ï´Ù.
'ADD A,B' => 25F0 ( 2 byte )
'ADD A,R0' => 28 ( 1 byte )
µÎ ASM ½î½ºÀÇ ¾î¼ÀºíµÈ ±â°è¾î ÄÚµå´Â ±× ±æÀÌ¿¡¼ºÎÅÍ ¼·Î ´Ù¸§´Ï´Ù.
´ç¿¬ÇÑ ¸»ÀÌÁö¸¸ ¾î¼Àºí·¯°¡ ±×·¸°Ô ¹ø¿ªÀ» Çϴ°ÍÀº MCS-51 ¸í·É¾î
ÄÚµå ÀÚü°¡ ±×·¸°Ô µÇ¾îÀֱ⠶§¹®ÀÌ°í ¸í·É¾î ÄÚµå ÀÚü°¡ ¿ì¸®°¡
º¸±â¿¡ ¿¬°ü¼ºÀÌ ¾ø¾î º¸ÀÌ´Â ÀÌÀ¯´Â CPU¸¦ óÀ½¿¡ ±×·¸°Ô ¼³°èÇß±â
¶§¹®ÀÔ´Ï´Ù. CPU¸¦ ±×·¸°Ô ¼³°èÇÑ ÀÌÀ¯´Â ¿³Àå»ç ¸¶À½µ¥·Î°¡ ¾Æ´Ï°í
È¿À²¼º¿¡ ¶§¹®ÀÔ´Ï´Ù. MCS-51 ¸í·É¾î Áß¿¡´Â ÀϹÝÀûÀ¸·Î Àß ¾²ÀÌ´Â
¸í·É°ú ´ú ¾²ÀÌ´Â ¸í·ÉµéÀÌ Àִµ¥ ºñ±³Àû Àß¾²ÀÌ´Â ¸í·ÉÀº ±×·¸Áö ¾ÊÀº
¸í·É¾îº¸´Ù ÄÚµåÀÇ ±æÀÌ°¡ ªÀº Äڵ带 ¹èÁ¤ÇØ ³õ¾Ò½À´Ï´Ù. ¿ªÀ¸·Î
¸»Çϸé CPU¸¦ ¸¸µé¶§ºÎÅÍ ¸î°¡Áö ·¹Áö½ºÅÍ¿¡ ´ëÇؼ´Â ¸¹Àº ÇýÅÃÀ»
ºÎ¿©ÇÑ °ÍÀÔ´Ï´Ù. ASMÀ» Á÷Á¢ ÇϽôٺ¸¸é ´«Ä¡¸¦ ü°ÚÁö¸¸ MCS-51
°è¿ÀÇ CPU¿¡¼´Â A, R0, R1 ·¹Áö½ºÅ͸¦ »ç¿ëÇÏ´Â ¸í·É¿¡ ¸¹Àº ±â´É°ú
ÄÚµå¸é¿¡¼ »ó´ëÀûÀ¸·Î ¸¹Àº ÇýÅÃÀ» ºÎ¿©ÇØ ³õ¾Ò½À´Ï´Ù. °£´ÜÇÑ ¿¹·Î
A ·¹Áö½ºÅÍ¿¡ ¹Ù·Î 3À» ´õÇÒ ¼ö´Â À־ B ·¹Áö½ºÅÍ¿¡´Â ±×·¸°Ô ÇÒ ¼ö
¾ø½À´Ï´Ù. °£Á¢ ¾îµå·¹½ºÀÇ °ªÀ» ´õÇÒ¶§ R0, R1Àº °¡´ÉÇÏÁö¸¸ R2,R3..
µîÀº ºÒ°¡´É ÇÕ´Ï´Ù.
ADD A,#3 => 2403
ADD B,#3 => ERROR : ÇØ´ç ¸Ó½® Äڵ尡 Á¸ÀçÇÏÁö ¾Ê´Â´Ù.
ADD A,@R0 => 26
ADD A,@R1 => 27
ADD A,@R2 => ERROR : ÇØ´ç ¸Ó½® Äڵ尡 Á¸ÀçÇÏÁö ¾Ê´Â´Ù.
±×·¸´Ù¸é ¸Ó½® Äڵ尡 ªÀ¸¸é ¾î¶² ÀÌÁ¡ÀÌ ÀÖÀ»±î¿ä? °¡Àå ½±°Ô´Â
¿Í´Ý´Â ÀÌÁ¡Àº binary Äڵ尡 ª¾Æ Áø´Ù´Â °ÍÀÔ´Ï´Ù. ¾ÆÁÖ Àç¼ö ¾ø´Â
°æ¿ì°ÚÁö¸¸ ¸î½Ê ¹ÙÀÌÆ®, ¸î ¹ÙÀÌÆ® ¶§¹®¿¡ 87C51( ¶Ç´Â 80C51 ³»ºÎ·Ò 4K
)À» ¸ø¾²°í 87C52( ¶Ç´Â 80C52 ³»ºÎ·Ò 8K )¸¦ ½á¾ßÇÒ °æ¿ìµµ »ó»óÇÒ ¼ö
ÀÖ½À´Ï´Ù. ÇÑ,µÎ´ëÀÇ Á¦Ç°Àº Å©°Ô ¹®Á¦°¡ ¾ÈµÇÁö¸¸ »ý»ê·®ÀÌ ¸¹À»¶§´Â
ÄÚµåÀÇ ±æÀ̱îÁö °è»êÇØ °¡¸é¼ ÁÙ¿©¾ß ÇÒ°Ì´Ï´Ù. ±×¸®°í ¶Ç´Ù¸¥ ÀÌÁ¡Àº
¼Óµµ¿¡¼ Â÷ÀÌ°¡ ³³´Ï´Ù. ÀϹÝÀûÀ¸·Î ¸Ó½® Äڵ尡 1 ¹ÙÀÌƮ¥¸®¶ó¸é
CPU´Â ·ÒÀ» Çѹø ÀÐ¾î¼ Ã³¸®¸¦ ÇÕ´Ï´Ù. ±×·¯³ª 1 ¹ÙÀÌÆ® ÀÌ»ó¾Æ¸é
CPU´Â ÇÑ ¸í·ÉÀÇ ¼öÇàÀ» À§Çؼ ¿©·¯¹ø ·ÒÀ» Àоî¾ß ÇÏ°í ±×¸¸Å ¼Óµµ´Â
´À·ÁÁú ¼ö ÀÖ½À´Ï´Ù. MCS-51Àº Ưº°ÇÏ°Ô 1 ½ÎÀÌŬ³»¿¡ 2¹øÀÇ ·ÒÀ» ÀÐÀ»
¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ½À´Ï´Ù. ¸í·É ½ÇÇàÀÇ ÃÖ¼Ò ´ÜÀ§°¡ 1 ½ÎÀÌŬ À̹ǷÎ
80C31Àº 2 ¹ÙÀÌÆ®ÀÇ ¸Ó½® Äڵ嵵 1¹ÙÀÌÆ® ¸Ó½® ÄÚµå¿Í °°ÀÌ 1 ½ÎÀÌŬ¿¡
¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ¾ÆÁÖ Æ¯º°ÇÑ °æ¿ì·Î °ö¼À( MUL AB )¿Í ³ª´°¼À(
DIV AB )Àº ¸Ó½® ÄÚµå´Â 1 ¹ÙÀÌÆ®ÀÌÁö¸¸ ³»ºÎ ¼öÇà°úÁ¤ÀÌ º¹ÀâÇÏ°í
½Ã°£ÀÌ ¿À·¡ °É·Á ½ÇÇà ½Ã°£Àº ¸í·É¾îÁß °¡Àå´ÊÀº 4 ½ÎÀÌŬÀ̳ª µË´Ï´Ù.
¸¶Áö¸·À¸·Î ÇÑ°¡Áö ±â»Û ¼Ò½ÄÀ» ¾Ë·Á µå¸®°Ú½À´Ï´Ù. ASMÀ» Á» ¾Æ´Â
ºÐµéÀº ´ëÃæ ÀÌÇظ¦ ÇÏ°ÚÁö¸¸ ASMÀ» Àß ¸ð¸£½Ã´Â ºÐµéÀº ¹«½¼ ¼Ò¸®ÀÎÁö
°¨À» ¸øÀâÀ» ¼öµµ ÀÖ°Ú±º¿ä. ÇÏÁö¸¸ ´ëºÎºÐÀÇ °æ¿ì¿¡ ÄÚµåÀÇ ±æÀÌ¿Í
¼öÇà ¼Óµµ´Â Å« Á߿伺ÀÌ ¾ø½À´Ï´Ù. À§ ³»¿ëÀº ASMÀ» ÀÍÈ÷´Ù º¸¸é
ÀÚ¿¬È÷ ¾Ë°Ô µË´Ï´Ù.
[23] ½ÇÁ¦ ¾î¼Àºí¸µÀ» Çغ¸ÀÚ. 12/11 19:08 74 line
½ÇÁ¦ ¾î¼Àºí¸µÀ» Çغ¸ÀÚ.
¿©±â¼´Â °£´ÜÇÑ ¾î¼Àºí·¯ ½î½º¸¦ ÀÛ¼ºÇÏ¿© binary ÈÀϱîÁö ¸¸µé¾îº¸°í
±× °ªÀ» È®ÀÎÇØ º¸°Ú½À´Ï´Ù.
´ÙÀ½ ¿¹Á¦ ÈÀÏ EX_1.ASMÀ» ÄÚµù( Å°º¸µå·Î Ãijִ٠)ÇÏ¿© ¾î¼ÀºíÀ» ½ÃÄÑ
º¸½Ê´Ù.
;=================================================================
;
; EX1.ASM
NOP
END
;=================================================================
¾î¼Àºí·¯ ÈÀÏÀÇ ÀÛ¼ºÀº ÀÏ¹Ý ÅýºÆ® ¿¡µðÅÍ¸é ¾Æ¹«°Å³ª »ó°ü ¾ø½À´Ï´Ù.
edit, ne, brief, tc³ª bcÀÇ ÅëÇÕ È¯°æ¿¡µðÅÍ µîÀ» »ç¿ëÇϼŵµ µÇÁö¸¸
¼¼°èÀûÀ¸·Î ÇÁ·Î±×·¡¸ÓµéÀÌ °¡Àå ¸¹ÀÌ »ç¿ëÇÏ´Â Q ¿¡µðÅ͸¦ ÃßõÇÕ´Ï´Ù.
±×¸®°í ÇÑ°¡Áö´õ TEXT ¿¡µðÅÍ ¿Ü¿¡ binary ¿¡µðÅ͵µ ÀÖ¾î¾ß ÇÕ´Ï´Ù. Àú
°³ÀÎÀûÀ¸·Î´Â LS.EXE¿Í °°ÀÌ °ø±ÞµÇ´Â TBE.EXE¸¦ »ç¿ëÇÕ´Ï´Ù.
PCTOOL¿¡µµ µé¾î ÀÖ°í, ¾Æ·¡¾Æ Çѱۿ¡ µé¾î ÀÖ´Â HV.EXE·Îµµ °ªÀ» º¼ ¼ö
ÀÖ½À´Ï´Ù. ·Ò¿¡¹Ä·¹ÀÌÅͳª ·Ò¶óÀÌÅÍ ±¸µ¿ ÇÁ·Î±×·¥ ³»¿¡µµ binary
¿¡µðÆà ±â´ÉÀÌ ÀÖ½À´Ï´Ù. C ¾ð¾î¸¦ ÇϽô ºÐÁß¿¡´Â ÀÚ½ÅÀÌ ¸¸µé¾î ¾²´Â
ºÐµéµµ ¸¹ÀÌ ÀÖÀ» °Ì´Ï´Ù. ´Ü¼øÈ÷ binary ÈÀÏÀ» º¸´Â ÇÁ·Î±×·¥Àº ¸î
ÁÙÀÌ¸é µÇ°í, ±â±³¸¦ ºÎ¸®Áö ¾Ê´Â´Ù¸é ¿¡µðÆà ±â´ÉÀ» ³Ö´õ¶óµµ 2~3
ÆäÀÌÁö¸é µË´Ï´Ù. ¿Ö³ÄÇϸé binary ¿¡µðÅÍ¿¡´Â °ªÀ» µµÁß¿¡ ³¢¿ö
³Ö°Å³ª(insert) Áö¿ì´Â( delete) ±â´ÉÀÌ ¾ø¾î¾ß Çϱ⠶§¹® ÀÔ´Ï´Ù.
½î½º¸¦ ÄÚµùÇÒ¶§ ÁÂÃø 10Ä Á¤µµ´Â ¶ç¿ì°í ÇϽʽÿä. ¶óº§ÀÌ µé¾î°¥
ÀÚ¸®ÀÔ´Ï´Ù.
EX1.ASMÀº ½ÇÇàÀ» À§ÇØ ¸¸µç ½î½º°¡ ¾Æ´Õ´Ï´Ù. ½ÇÇàÀÌ ¾ÈµÇÁö´Â ¾ÊÁö¸¸
Àǹ̰¡ ¾ø½À´Ï´Ù. ¸ÕÀú NOP´Â No OPerationÀÇ ¾àÀÚ·Î CPU¿¡°Ô 1 ½ÎÀÌŬ
µ¿¾È ¾Æ¹«Àϵµ ÇÏÁö ¸»¶ó´Â ¸í·ÉÀÔ´Ï´Ù. ¸Ó½® ÄÚµå´Â 00 ÀÔ´Ï´Ù. ¾Æ·¡´Â
Soft Mart. IncÀÇ X8051.EXE¸¦ »ç¿ëÇÏ¿© ¾î¼ÀºíÇÑ ¸®½ºÆ® ÀÔ´Ï´Ù.
12- 2-95 8051 Assembler Page 1
File EX1.ASM
1 ;========================================================
2 ;
3 ; EX1.ASM
4
5 0000 00 NOP
6
7 0001 END
8
9 ;========================================================
0 Error(s) Detected
¸Ç ÁÂÃø¿ÀÇ 1, 2, 3 ... 9´Â ÁÙ ¹øÈ£ ÀÔ´Ï´Ù. 5¹ø ÁÙÀÇ 0000Àº
(·Ò)¹øÁö ÀÌ°í 00Àº ¹ø¿ªÇÑ ¸Ó½® ÄÚµå ÀÔ´Ï´Ù. 7¹øÁÙÀº ¹øÁö¸¸ ÀÖ°í
¸Ó½® ÄÚµå´Â ¾ø´Âµ¥ ÀÌÀ¯´Â END°¡ °¡Â¥¸í·É(pseudo instruction)À̱â
¶§¹® ÀÔ´Ï´Ù. END´Â ¹ø¿ªÀ» ¸¶Ä¡¶ó´Â ¸í·ÉÀ¸·Î ¾î¼Àºí·¯ ÀÚü¿¡°Ô
¾Ë·ÁÁÖ´Â °ÍÀ¸·Î Soft Mart, IncÀÇ X8051 ¾î¼Àºí·¯¸¦ ¾µ¶§´Â ¾ø¾îµµ
¹«¹æÇÕ´Ï´Ù.
¾î¼ÀºíÈÄ ¸¸µé¾îÁø EX1.HEX ÈÀÏÀ» HEXBINÀ» »ç¿ëÇÏ¿© EX1.BINÀ¸·Î
¸¸µå½Ê½Ã¿ä. EX1.BINÀÇ ÈÀÏ Å©±â¸¦ º¸¸é 1 ¹ÙÀÌÆ® ÀÔ´Ï´Ù. ±×°ªÀº
´ç¿¬È÷ NOP ¸í·ÉÀ» ¹ø¿ªÇÑ 00 ÀÔ´Ï´Ù. binary ¿¡µðÅÍ·Î È®ÀÎÇØ
º¸½Ê½Ã¿ä.
ÀÌ·¸°Ô binary ÈÀÏÀº ¼ø¼øÇÑ ¸Ó½® ÄÚµå¿Í µ¥ÀÌŸ ¸¸À» °¡Áö°í ÀÖÀ¸¸ç
·Ò¿¡ ¹Ù·Î ±¸¿ï ¼ö ÀÖ°í, ´Ù¿î ·ÎµùÇÏ¿© ½ÇÇà ½Ãų ¼ö ÀÖ´Â ½ÇÇà ÈÀÏ
ÀÔ´Ï´Ù.( EX1.BINÀº ½ÇÇà½ÃÅ°Áö ¸¶½Ê½Ã¿ä. )
¾î¼Àºí·¯ »ç¿ë¹ýÀº ¾Õ °Á¸¦ Âü°í ÇϽʽÿä.
[24] ½ÇÁ¦ º¸µå¸¦ µ¹·Áº¸ÀÚ. 12/11 19:09 254 line
½ÇÁ¦ º¸µå¸¦ µ¹·Áº¸ÀÚ.
ÀÌÁ¦ºÎÅÍ´Â Á¤½ÄÀ¸·Î º¸µå¿¡¼ µ¹¾Æ°¡´Â ASMÀ» ÀÛ¼ºÇØ º¸°Ú½À´Ï´Ù.
ÀÚÀÛÇÑ º¸µåÀÎ JSTEST º¸µå¿¡¼´À ·ÒÀ» ±¸¿ö ³Ö°Å³ª ·Ò¿¡¹Ä·¹ÀÌÅ͸¦
»ç¿ëÇϽðí JS8051A º¸µå¿¡¼´Â ½Ã¸®¾ó ´Ù¿î ·ÎµùÇÏ¿© µ¿ÀÛÀ» È®ÀÎ
ÇϽʽÿä.
´ÙÀ½ ÇÁ·Î±×·¥(JS51P1_0.ASM)Àº Æ÷Æ® 1ÀÇ Ã¹¹ø° ºñÆ®, Áï CPUÀÇ 1¹ø
ÇÉÀ» ON, OFFÇÏ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù.( JS8051A Á¦°ø µð½ºÄÏ ÂüÁ¶ )
; JUST ON/OFF P1.0 PIN
ORG 0000H
JMP START
ORG 0033H
START:
REP: SETB P1.0
CLR P1.0
JMP REP
END
Ä¿¸ÇÆ®´Â ¼¼¹ÌÄÝ·Ð(;) µÚ¿¡ ¾²¸é µË´Ï´Ù.
"ORG 0000H"¿¡¼ ORG´Â ORiGin(¿øÁ¡)ÀÇ ¾àÀÚ·Î °ÅÁþ ¸í·É ÀÔ´Ï´Ù.
´ÙÀ½ ÁÙºÎÅÍ ¹ø¿ªÇÏ´Â ÄÚµå´Â 0000H¹øÁö¿¡ À§Ä¡ ½ÃÅ°¶ó´Â ¶æÀ» °¡Áö°í
ÀÖ½À´Ï´Ù. µû¶ó¼ "ORG 0033H"´Â ±× ´ÙÀ½ÁÙ ºÎÅÍÀÇ OP CODE¸¦
¹ø¿ªÇÏ¿© 0033H¹øÁö ºÎÅÍ ³ÖÀ¸¶ó´Â ¸í·ÉÀÔ´Ï´Ù. ¾Æ·¡ ¾î¼Àºí·¯ ¸®½ºÆ®¸¦
º¸½Ã¸é Äڵ尡 ³õÀÎ ¹øÁö¸¦ È®ÀÎ ÇÒ ¼ö ÀÖ½À´Ï´Ù.
"JMP START"´Â START ¶óº§ÀÇ À§Ä¡·Î Á¡ÇÁÇ϶ó´Â ¸í·É ÀÔ´Ï´Ù.
"START:"´Â ¶óº§·Î ÀÚ½ÅÀÌ ÀÖ´Â À§Ä¡( Àý´ë ¹øÁö )¸¦ ´ëÇ¥ÇÕ´Ï´Ù. µÚ¿¡
ºÙÀº ÄÝ·Ð(:)Àº ÀϺΠ¾î¼Àºí·¯¿¡¼´Â ¾ø¾îµµ µË´Ï´Ù. ±×¸®°í ¶óº§Àº
8ÀÚ ÀÌ»óÀ» ½áµµµÇÁö¸¸ 8ÀÚ ±îÁö¸¸ ÀνÄÇÕ´Ï´Ù. µû¶ó¼ ¾î¼Àºí·¯´Â
'START123:'¿Í 'START12345:'´Â °°Àº°ÍÀ¸·Î º¾´Ï´Ù. ¶óº§Àº
"START:"¿¡¼¿Í °°ÀÌ ÇÑÁÙ ¸ðµÎ¸¦ µ¶¸³ÀûÀ¸·Î Â÷ÁöÇصµ µÇ°í "REP:
SET P1.0" ¿¡¼¿Í °°ÀÌ ´Ù¸¥ OP CODE ¾Õ¿¡ ¿Íµµ µË´Ï´Ù. À§ÀÇ
¿¹¿¡¼´Â START¿Í REP°¡ °°Àº ¹øÁö(À§Ä¡)¸¦ ³ªÅ¸³»°í Àִµ¥, ÀÌ¿Í°°ÀÌ
°°Àº À§Ä¡¿¡ Áߺ¹µÇ°Ô Á¤ÀÇ Çصµ µË´Ï´Ù.
"SETB P1.0"Àº P1.0 ºñÆ®¸¦ 1( high )·Î ¸¸µì´Ï´Ù.
"CLR P1.0"Àº P1.0 ºñÆ®¸¦ 0( low )·Î ¸¸µì´Ï´Ù.
"JMP REP"´Â REP ¶óº§ÀÇ À§Ä¡·Î Á¡ÇÁÇ϶ó´Â ¸í·É ÀÔ´Ï´Ù.
¾Æ·¡´Â JS51P1_0.ASMÀÇ ¾î¼Àºí·¯ ¸®½ºÆ® ÀÔ´Ï´Ù. °¢ÀÚ ½º½º·Î ¾î¼ÀºíÀ»
ÇÑµÚ BIN ÈÀÏÀ» º¸µå¿¡ ½É¾î¼ ¼öÇàÇØ º¸½Ê½Ã¿ä.
File JS51P1_0.ASM
1
2 ; JUST ON/OFF P1.0 PIN
3
4 0000 ORG 0000H
5 0000 020033 JMP START
6
7 0033 ORG 0033H
8 0033 START
9 0033 D290 REP SETB P1.0
10 0035 C290 CLR P1.0
11 0037 80FA JMP REP
12
13 0039 END
0 Error(s) Detected
¾î¼Àºí·¯ ¸®½ºÆ®¸¦ º¸½Ã¸é 0000H¿¡ Á¡ÇÁ ¸í·ÉÀÌ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº ¸Å¿ì
Áß¿äÇÑ Àǹ̰¡ ÀÖ½À´Ï´Ù. 80C31Àº 0000H¿¡´Â µ¥ÀÌŸ °ªÀ̳ª OP ÄÚµåÀÇ
µÎ¹ø° ¶Ç´Â ¼¼¹ø° ¹ÙÀÌÆ®°¡ ¾Æ´Ñ ù¹ø° ¸í·É Äڵ尡 Àִ°ÍÀ¸·Î º¸°í
±×°ªÀ» Àоî¿Í Àоî¿Â ÄÚµåÀÇ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù. 0000H ¹øÁöÀÇ ¸í·ÉÀÌ
1 ¹ÙÀÌÆ® Â¥¸®¸é ¸í·ÉÀ» ¹Ù·Î ½ÇÇàÀ»ÇÏ°í ±×´ÙÀ½ 0001H ¹øÁöÀÇ °ªµµ
¸í·ÉÀ¸·Î °£ÁÖ¸¦ ÇÏ°í Àоî¿Í ¼öÇàÀ» ÇÕ´Ï´Ù. ¸¸¾à¿¡ 0000H ¹øÁöÀÇ
Äڵ尡 2 ¹ÙÀÌÆ® ÀÌ»ó °ªÀÌ ÇÊ¿äÇÑ ¸í·ÉÀ̸é 0001H¿¡´Â ¸í·ÉÀÌ ¾Æ´Ñ
ÄÚµåÀÇ ³ª¸ÓÁö ºÎºÐÀ̳ª ÇÊ¿äÇÑ µ¥ÀÌŸ °ªÀÌ µé¾î ÀְԵǰí CPU´Â
±×°ÍÀ» Àоî¿Í µ¥ÀÌŸ·Î 󸮸¦ ÇÕ´Ï´Ù. ´Ù½Ã ¸»ÇÏ¸é ¶È¶ÈÇÑ CPU´Â
0000H ¹øÁöÀÇ °ªÀ» ¸í·ÉÀ¸·Î ÀνÄÀ» ÇÏ°í ±× Äڵ尡 1 ¹ÙÀÌÆ® Â¥¸®¸é
0001H ¹øÁö¿¡ ´ÙÀ½ ¸í·ÉÀÌ ½ÃÀ۵ȴٴ °ÍÀ» ¾Ð´Ï´Ù. ¹°·Ð 2 ¹ÙÀÌÆ®
Â¥¸®¸é ´ÙÀ½ ¸í·ÉÀÌ 0002H ¹øÁö¿¡ ÀÖ´Ù´Â °ÍÀ» ¾Ð´Ï´Ù. ±×·±½ÄÀ¸·Î
CPU´Â ·ÒÀÇ Äڵ带 ¼øÂ÷ÀûÀ¸·Î Çؼ®ÇÏ°í ¼öÇàÇØ ³ª°©´Ï´Ù.
±×·¸´Ù¸é ¹®Á¦¸¦ Çϳª ³»°Ú½À´Ï´Ù. ·ÒÀÇ 5100H ¹øÁö¿¡¼ºÎÅÍ 20,00,33,
D2,90... À̶ó´Â °ªÀÌ µé¾î ÀÖ´Ù°í ÇϸéÀº ÀÌ Äڵ常À» º¸°í ÇÁ·Î±×·¥
Áß¿¡ ¹«½¼ ÀÏÀ» ÇÏ´Â ºÎºÐÀÎÁö ¾Ë ¼ö ÀÖ½À´Ï±î? ÀϹÝÀûÀ¸·Î´Â ¾Ë ¼ö
¾ø´Ù°¡ Á¤´ä ÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ·ÒÀÇ ÀϺΠ°ª¸¸À» º¸°í´Â ±× °ªÀÌ ¸í·É
ÄÚµåÀÎÁö ¸í·É ÄÚµå¶ó¸é ¸í·ÉÀÇ ¸î ¹ø° ¹ÙÀÌÆ®ÀÇ ÄÚµåÀÎÁö ¶Ç´Â »ó¼ö
µ¥ÀÌŸ °ªÀÎÁö ±×°Íµµ ¾Æ´Ï¸é ¾È¾²ÀÌ´Â °ø°£¿¡ ÀÖ´Â ¾²·¹±â ÄÚµå(
garbage code )ÀÎÁö ¾Ë ¼ö°¡ ¾ø½À´Ï´Ù. ±×°ÍÀ» ¾Ë±â À§Çؼ´Â 0000H
¹øÁöºÎÅÍ ´ÜÃ߸¦ ³¢¿öºÁ¾ß ÇÕ´Ï´Ù. ´õ±º´Ù³ª ³»Àå·Ò ŸÀÔÀÇ 8051, 8751,
89C51 µîÀÇ CPU¸¦ »ç¿ëÇÏ¿´°í ÀÎÀ§ÀûÀ¸·Î garbage code¸¦ ¸¸µé¾î
³õ¾Ò´Ù¸é ºÐ¼®Àº ºÒ°¡´ÉÇÕ´Ï´Ù. ÀÌ·¸°Ô ·ÒÀÇ °ªÀ» º¸°í ¸í·É ÄÚµåÀÎÁö
µ¥ÀÌŸ °ªÀÎÁö¸¦ ±¸ºÐÀ» ¸øÇÏ´Â ÀÌÀ¯´Â ¸í·É ÄÚµåÀÇ ÇÑ ¹ÙÀÌÆ®°¡ 0 ~ FF
±îÁöÀÇ °ªÀ» °®°í, µ¥ÀÌŸÀÇ ÇÑ ¹ÙÀÌÆ®µµ 0 ~ FF ±îÁöÀÇ °ªÀ» °®±â
¶§¹®ÀÔ´Ï´Ù.
Z80À̳ª 8088 °è¿À» ÇϽźеéÀº Á» ÀÌ»óÇÑ Á¡À» ´À³¢½Ç °Ì´Ï´Ù. ±×·±
ºÐµéÀº À§ Äڵ忡 °ªÀ» I/O Æ÷Æ®·Î ³»º¸³»´Â ¸í·ÉÀÌ ¾ø´Ù°í ÀÌ»óÇÏ°Ô
»ý°¢ÇÏ°ÚÁö¸¸ 80C31¿¡¼´Â ³»ºÎ Æ÷Æ® ·¹Áö½ºÅÍÀÇ °ªÀ» ¹Ù²Ù¸é ±× ¹Ù²Û
°ªÀÌ ¹Ù·Î ¿ÜºÎÀÇ Æ÷Æ® ÇÉ¿¡ ³ªÅ¸³ª°Ô µË´Ï´Ù. µû¶ó¼ "SETB P1.0"Àº
³»ºÎ SFR¿¡ ÀÖ´Â Æ÷Æ® ·¹Áö½ºÅÍ P0ÀÇ ÃÖÇÏÀ§ ºñÆ®(LSB)¸¦ 1·Î ¸¸µé°í ±×
·¹Áö½ºÅÍÀÇ Ãâ·ÂÀº ¿ÜºÎ·Î ÇÉÀÌ ³ª¿ÍÀÖ¾î ¹Ù·Î Ãâ·ÂÀÌ µÇ´Â °ÍÀÔ´Ï´Ù.
ÇÑ°¡Áö ´õ, Ȥ½Ã "JMP"¸¦ MCS-51 ¸í·É¾î ¼¼Æ®¿¡¼ ã¾Æ º¸½Å ºÐµéÀÌ
ÀÖÀ»Áö ¸ð¸£°Ú±º¿ä. »ç½Ç "JMP"´Â MCS-51 ¸í·É¾î ¼¼Æ®¿¡ ¾ø½À´Ï´Ù. ½ÇÁ¦
ÄÚµå´Â SJMP, AJMP, LJMP¿¡ ÇØ´çÇÏ´Â Äڵ常ÀÌ Á¸ÀçÇÕ´Ï´Ù. JMP¶ó°í
¾²¸é ¾î¼Àºí·¯°¡ ¹ø¿ªÇÒ ¶§ ¾Ë¾Æ¼ ¼¼°Ô Áß¿¡ Àû´çÇÑ ÄÚµå·Î ¹Ù²ã
ÁÝ´Ï´Ù. SJMP¿Í AJMP´Â µÑ ´Ù 2 byte 2 cycle ¸í·ÉÀÌÁö¸¸ ³»ºÎ ½ÇÇà¿¡´Â
¸¹Àº Â÷ÀÌ°¡ ÀÖ½À´Ï´Ù. ÀÌ µÎ°³ÀÇ ¸í·ÉÀº relocatable code »ý¼º¿¡
°ü°è°¡ ÀÖ½À´Ï´Ù. LJMP´Â Àý´ë ¾îµå·¡½º Á¡ÇÁ·Î 64K Program Memory
Space ÀüüÀÇ ±¸°£ Áß ¾Æ¹«´ë³ª °¥ ¼ö ÀÖ½À´Ï´Ù. À§ÀÇ ¿¹
JS51P1_0.ASM¿¡¼´Â JMP¸¦ SJMP, AJMP, LJMP Áß ¾Æ¹« °ÍÀ¸·Î³ª ¹Ù²ãµµ
¹«¹æÇÕ´Ï´Ù. À§ÀÇ ¸®½ºÆ®¸¦ »ìÆì º¸¸é ¾î¼Àºí·¯°¡ ù ¹ø° JMP´Â
LJMP·Î ¹Ù²Ù°í µÎ¹ø° JMP´Â SJMP
²Û°ÍÀ» º¼ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼
°°Àº ASM ½î½º¸¦ °¡Áö°í ´Ù¸¥ ¾î¼Àºí·¯·Î binary ÈÀÏÀ» ¸¸µé¾ú´Ù¸é
JMP¿¡ ÇØ´çÇÏ´Â ºÎºÐÀÇ ÄÚµå´Â ¼·Î ´Ù¸¦ ¼ö ÀÖ½À´Ï´Ù. ¹°·Ð ½ÇÇà¿¡´Â
¹®Á¦°¡ ¾ø½À´Ï´Ù. È®½ÇÈ÷ ÄÚµå ±æÀ̸¦ ¼³Á¤ÇØ¾ß ÇÒ¶§´Â SJMP, AJMP,
LJMP¸¦ Á÷Á¢ ¾²½Ã¸é µË´Ï´Ù.
JS51P1_0.ASMÀº P1.0À» ºü¸¥ ¼Óµµ·Î ON, OFF ÇÕ´Ï´Ù. µû¶ó¼ Á¤È®È÷
º¸·Á¸é ¿À½Ç·Î½ºÄÚÇÁ¸¦ »ç¿ëÇÏ¼Å¾ß ÇÕ´Ï´Ù.´ÙÀ½ JS51P1_1.ASMÀº ON, OFF
»çÀÌ¿¡ Áö¿¬( delay )¸¦ ³ÖÀº °ÍÀ¸·Î TESTER³ª LED¸¦ »ç¿ëÇÏ¿© È®ÀÎÇÒ
¼ö ÀÖ½À´Ï´Ù. Á÷Á¢ Çغ¸½Ê½Ã¿ä. ´Ü ¿©±â¼´Â P1.1À» ON, OFF ÇÕ´Ï´Ù. (
JS8051A Á¦°ø µð½ºÄÏ ÂüÁ¶ )
; JUST ON/OFF P1.1 PIN
ORG 0000H
JMP START
ORG 0033H
START: NOP ;
NOP ; DON'T REMOVE
REP: SETB P1.1
CALL D_1S
CLR P1.1
CALL D_1S
JMP REP
;==================================================================
;
; < DELAY >
;
; CLK = 11.0592 MHz
;
;==================================================================
;;;;;;;;;;;;;;;;;;;;< 10 uS >;;;;;;;;;;;;;;;;;;;;
D_10US: ; 9*12/CLK
NOP ; = 10 uS
RET
;;;;;;;;;;;;;;;;;;;;< 100 uS >;;;;;;;;;;;;;;;;;;;;
D_100US: ; (13 + N * 2 )*12/CLK
PUSH PSW ; = 100 uS
PUSH R0
CLR RS1
CLR RS0
MOV R0,#36 ; N = 40
DJNZ R0,$
POP R0
POP PSW
RET
;;;;;;;;;;;;;;;;;;;;< 1 mS >;;;;;;;;;;;;;;;;;;;;
D_1MS:
PUSH PSW
PUSH R0
PUSH R1
CLR RS1
CLR RS0
MOV R0,#12
D_1MS_1:
MOV R1,#36
DJNZ R1,$
DJNZ R0,D_1MS_1
POP R1
POP R0
POP PSW
RET
;;;;;;;;;;;;;;;;;;;;< 10 mS >;;;;;;;;;;;;;;;;;;;;
D_10MS:
PUSH PSW
PUSH R0
PUSH R1
CLR RS1
CLR RS0
MOV R0,#70
D_10MS_1:
MOV R1,#63
DJNZ R1,$
DJNZ R0,D_10MS_1
POP R1
POP R0
POP PSW
RET
;;;;;;;;;;;;;;;;;;;;< 100 mS >;;;;;;;;;;;;;;;;;;;;
D_100MS:
PUSH PSW
PUSH R0
PUSH R1
CLR RS1
CLR RS0
MOV R0,#200
D_100MS_1:
MOV R1,#228
DJNZ R1,$
DJNZ R0,D_100MS_1
POP R1
POP R0
POP PSW
RET
;;;;;;;;;;;;;;;;;;;;< 1 S >;;;;;;;;;;;;;;;;;;;;
D_1S:
PUSH PSW
PUSH R0
CLR RS1
CLR RS0
MOV R0,#10
D_1S_1:
CALL D_100MS
DJNZ R0,D_1S_1
POP R0
POP PSW
RET
;==================================================================
END
8051A º¸µå ÆǸÅó 12/11 19:10 19 line
JS8051-A º¸µå ÆǸÅó
¸¶ÀÌÅ©·Î·Îº¸Æ®( <= »óÁ¡ À̸§ ) : 718-3182 ~ 3
¿ë»ê ¼±ÀÎÇÁ¶óÀÚ 21µ¿ 1Ãþ 86È£ :
½Å¿ë»ê ¿ª¿¡¼ °¡ÀÚ¸é ÀüÀÚ »ó°¡ ÂÊÀ¸·Î ¿ë»ê ÁöÇϵµ µû¶ó °¡´Ù°¡
ÁöÇϵµ °ÅÀÇ ³ª°¥¶§ Âë ¿ìȸÀüÇؼ °è´ÜÀ» ¿Ã¶ó°¡¼ ¾à 20 m ÀüÁø ÈÄ
¹Ù·Î ¿ÞÂÊ !?!?
Áö¹æºÐµéÀº Åë½ÅÆǸŵµ µÈ´Ù°í ÇÏ´Ï ¸ÕÀú Àüȸ¦...
Ãß½Å) Å×Å©´ÏÄà Áú¹®Àº ±×ÂÊÀ¸·Î ÇÏÁö ¸¶½Ê½Ã¿ä. ¿©±â¿¡ ¿Ã¸®°Å³ª
õ¸®¾È, ÇÏÀÌÅÚ °øÈ÷ maroboss·Î ¸ÞÀÏÀ» Áֽʽÿä.
¼¼¹Ì³ª Âü¼® ÈÄ 12/19 23:19 43 line
Intel 8051/251 °³¹ß ȯ°æ ¼¼¹Ì³ª
¸ÕÀú ¾Æ·¡ ±ÛÀº ÀüÀûÀ¸·Î Á¦ ´À³¦ ¹× »ý°¢, ÀÇ°ß ÀÓÀ» ¹àÇô µÓ´Ï´Ù.
ÀüüÀûÀ¸·Î ¼¼¹Ì³ª´Â ´Ù¸¥ ¼¼¹Ì³ª º¸´Ù ¿ö³« °í°¡ÀÇ Âü°¡ºñ( 3¸¸¿ø )
¸¦ ¹Þ¾Æ¼ ±×·±Áö °»çÁøÀº Á» ÁÁ¾Ò½À´Ï´Ù. ±âº»ÀûÀ¸·Î 8051¿¡ ´ëÇؼ´Â
´Ù ¾Æ´Â ºÐµéÀÌ ¸ð¿´´Ù°í º¸°í ÁøÇàµÈ ¾î´À Á¤µµ ¼öÁØÀÖ´Â ³»¿ëµé
À̾ú½À´Ï´Ù. »ó´ëÀûÀ¸·Î ¸¶ÀÌÅ©·Î ºñÁ¯¿¡¼ Çß´ø ¼¼¹Ì³ª´Â °ªÀº ½ÎÁö¸¸
°»ç ¼öÁØÀÌ ³·°í ³Ê¹« ±âÃÊ ¼öÁظ¸ ´Ù·ç´Â °æÇâÀÌ ÀÖ¾ú½À´Ï´Ù. ¹°·Ð
µè´Â »ç¶÷ÀÇ ¼öÁØ¿¡ µû¶ó °ÁÂÀÇ ÆòÀº ´Þ¶óÁú ¼ö ÀÖÁö¸¸...
Á¦°¡ °Á¿¡ Âü¼®ÇÑ ¸ñÀûÀº ¿ª½Ã 80C251¿¡ ´ëÇÑ Á¤º¸¸¦ ¾ò±â À§ÇÑ
°ÍÀ̾ú½À´Ï´Ù. 251¿¡ ´ëÇÑ ÀÚ·á´Â 95³â ÀÎÅÚ µ¥ÀÌŸ ºÏ¿¡µµ 3Àå ¹Û¿¡
¾È³ª¿Í ÀÖ½À´Ï´Ù. ¾Õ¿¡¼µµ °£´ÜÈ÷ ¼Ò°³¸¦ ÇÑ °Íó·³ 80251Àº 8051
°¡¹®¿¡¼ ºÐ°¡ÇÑ ¾ÆµéÀÔ´Ï´Ù. MCS51ÀÇ °¡Á·¿¡ ³¢Áö ¸øÇÏ´Â ÀÌÀ¯´Â
¾öû³ª°Ô Áøº¸µÇ°í °³¼±µÈ ³»ºÎ ±¸Á¶ ¶§¹®ÀÔ´Ï´Ù. 8ºñÆ® ÀÌÁö¸¸ V40À̳ª
8097 º¸´Ù´Â ¿ù¾À ºü¸¦ °Ì´Ï´Ù. ¹°·Ð ¸î ¸Þ°¡Â¥¸® Ŭ·°À» ¾²´À³Ä¿¡ µû¶ó
´Þ¶ó Áö°ÚÁö¸¸ 80C196KC-20º¸´Ùµµ ºü¸¥ ¼ÓµµÀÇ °¡Á·µµ ÀÖ½À´Ï´Ù.(
´ç¿¬È÷ Àüü ÆÛÆ÷¸Õ½º¸¦ µûÁú¶§ ºü¸£´Ù´Â ¿¹±âÀÓ ) °°Àº Ŭ·°À»
»ç¿ëÇÏ´Â 8051º¸µå¿¡ ²ÈÀ¸¸é 5¹èÀÇ ¼Óµµ Çâ»óÀÌ ÀÖ°í, Àü¿ë ¸í·ÉÀ»
»ç¿ëÇϸé 15¹èÀÇ ¼Óµµ Çâ»óÀÌ µË´Ï´Ù. 40 MHz Á¦Ç°µµ ¼±À» º¸ÀδٴÏ
±â´ë°¡ µÇ´Â ±º¿ä. ¾îµå·¹½º °ø°£Àº ÆäÀÌ¡ ±â¹ýÀ» »ç¿ëÇÏ¿© °ÅÇ°³¯
Á¤µµ·Î Áõ´ë ½ÃÄ×½À´Ï´Ù. ¼Óµµ Áõ°¡ ±â¼úÀº ¿©·¯°¡Áö°¡ »ç¿ë µÇ¾ú°ÚÁö¸¸
ÀÏ´Ü ÇÑ ½ÎÀÌŬ ³»ÀÇ ¸Ó½® ½ÎÀÌŬÀ» ÁÙÀÎ °Íº¸´Ù´Â ÆÄÀÌÇÁ ¶óÀÎ ±¸Á¶¸¦
»ç¿ëÇÑ °ÍÀÌ °¡Àå ÇÙ½ÉÀÔ´Ï´Ù. 80C251Àº ¿ÃÇØ Ã³À½ ź»ýÇß°í ¸î°¡Áö
Á¦Ç°¸¸ÀÌ ÇöÀç Ãâ½ÃµÇ ÀÖ½À´Ï´Ù. 12¿ù¿¡µµ ÇϳªÀÇ »õ Á¦Ç°ÀÌ Ãâ½Ã
¿¹Á¤ÀÌ°í, ³»³â, Èij⠰è¼ÓÇؼ 251ÀÇ °¡Á·µéÀÌ Ãâ½Ã µË´Ï´Ù.( ¿©·¯ºÐÀÌ
¿øÇϽô 40 pin DIP ŸÀÙÀº ¾ÆÁ÷ ¾È³ª¿Ô½À´Ï´Ù.) MDS Àåºñµµ ¾ÆÁ÷Àº
ÀϺΠȸ»ç¿¡¼¸¸ ³ª¿À°í C ÄÄÆÄÀÏ·¯µµ KEIL¿¡¼¸¸ ³ª¿À°í IAR¿¡¼´Â
¾ÆÁ÷ ¾È³ª¿Ô´Ù°í µé¾ú½À´Ï´Ù. ±×¸®°í Á¦°¡ º¼¶§ ±¹³»¿¡¼ 251À» Á¦´ë·Î
µ¹¸®´Â »ç¶÷Àº °ÅÀÇ ¾ø´Â°Í °°½À´Ï´Ù. ¾î¼¸é ¾ÆÁ÷ ÇÑ¸íµµ ¾øÀ»Áö ¸ð¸¨´Ï´Ù.
¾ÆÁ÷ Ç°Á¾¸éÀ̳ª ¼ÒÇÁÆ®¿þ¾î¸é, Áö¿ø Çϵå¿þ¾î¸é, Á¤º¸¸é¿¡¼ ȯ°æÀÌ
¿¾àÇÕ´Ï´Ù. ÇÏÁö¸¸ ÀÎÅÚ¿¡¼ ¾ß½ÉÂ÷°Ô ¹Ð°í ÀÖÀ¸¸ç ±× ¶Ù¾î³ ¼º´É°ú MCS51
binary ȣȯÀ̶ó´Â ¾öû³ ¸Þ¸®Æ®¸¦ µî¿¡ ¾÷°í ¸¹Àº À̵éÀÇ °ü½ÉÀ» ²ø °ÍÀº
È®½ÇÇÏ°í, Á¦°¡ º¼¶§´Â Èijâ(1997³â) Á¤µµ ºÎÅÍ´Â ¼¼È÷ ºÎ»óÇؼ Èij⠸»
°æ¿¡´Â ÁßÀú°¡(°Ý)ÀÇ Á¦¾î¿ë ÇÁ·Î¼¼¼ÀÇ ½ÃÀåÀ» ¼®±ÇÇϸ®¶ó º¾´Ï´Ù.
±×·¸´Ù°í ÇâÈÄ 2~3³â ÈÄ¿¡ MCS51ÀÇ ½ÃÀåÀÌ ½±°Ô »ç¶óÁú °ÍÀ̶ó°í´Â º¸Áö
¾Ê½À´Ï´Ù. ±×·¸°Ô º¸´Â ÀÌÀ¯¿¡´Â ¿©·¯°¡Áö°¡ ÀÖÁö¸¸ °¡Àå Å« ÀÌÀ¯´Â °¡°Ý
ÀÔ´Ï´Ù.
Port 1 ÀÔÃâ·Â
¾Õ °Á¿¡¼´Â Port 1ÀÇ °¢°¢ÀÇ ÇÑ ºñÆ®¸¦ ON, OFF ½ÃÅ°´Â °ÍÀ»
¹è¿ü½À´Ï´Ù. À̹ø¿¡´Â Port 1¿¡ 1 ¹ÙÀÌÆ® °ªÀ» Ãâ·Â½ÃÄÑ´Â °ÍÀ» ¾Ë¾Æ
º¸°Ú½À´Ï´Ù. ¸Å¿ì °£´ÜÇÕ´Ï´Ù.( JS8051A ³»Àå µð½ºÄÏ ÂüÁ¶ JS51P1.ASM )
; JUST ON/OFF P1.0 ~ P1.6 ( DON,T CHANGE P1.7)
; THIS PROGRAM IS FOR RAM EXECUTION
ORG 0000H
JMP START
ORG 0033H
START:
NOP ;
NOP ; DON'T REMOVE
REP: MOV P1,#01111111B
MOV P1,#00000000B
JMP REP
END
JS51P1.ASM ¿¹Á¦¿¡´Â DELAY°¡ ÀÖÁö¸¸ ÆíÀǸ¦ À§ÇØ »°½À´Ï´Ù. ³Ê¹«
»¡¶ó¼ º¼ ¼ö°¡ ¾øÀ¸½Å ºÐµéÀº ¾Õ °Á¸¦ º¸½Ã°í DELAY¸¦ ³Ö¾î
Áֽʽÿä.
À§ÀÇ ¿¹¿¡¼´Â ÇÑ°¡Áö ÀÌ»óÇÑ Á¡ÀÌ ÀÖ½À´Ï´Ù. ´Ù¸¥ ºñÆ®µéÀº ¸ðµÎ
0,1,0,1... °è¼Ó º¯ÇÏÁö¸¸ P1ÀÇ ÃÖ»óÀ§ ºñÆ®ÀÎ P1.7Àº Ç×»ó 0À»
Ãâ·ÂµÇ°Ô Çߴµ¥ ±× ÀÌÀ¯´Â ´õÀÌ»ó ¼³¸íÇÏÁö ¾Ê¾Æµµ ¸ðµÎ Àß ¾Æ½Ç
°Ì´Ï´Ù. ±×¸®°í À§ ÇÁ·Î±×·¥ÀÇ Ä¿¸ÇÆ®¸¦ º¸¸é "ÀÌ ÇÁ·Î±×·¥Àº ·¥¿¡
(´Ù¿î ·ÎµùÇÏ¿©) ½ÇÇàÇØ¾ß ÇÔ"À̶ó°í ÀûÇô Àִµ¥ ÁøÂ¥·Î JS8051AÀÇ
¸ð´ÏÅÍ ·ÒÀ» »©°í ÀÌ ÇÁ·Î±×·¥À» ±¸¿ö¼ ¹Ú¾î ³Ö°í µ¹¸®¸é ¾È µ¹¾Æ
°¨´Ï´Ù. ·Ò¿¡¼ ½ÇÇà ½ÃÅ°±â À§Çؼ´Â ÇÁ·Î±×·¥ÀÇ ÀϺθ¦ ´ÙÀ½°ú °°ÀÌ
¹Ù²ãÁÖ¾î¾ß ÇÕ´Ï´Ù.
REP: MOV P1,#11111111B
MOV P1,#10000000B
JMP REP
ÀÚ¼¼È÷ º¸½Ã¸é P1.7 ºñÆ®°¡ 1·Î À¯ÁöµÇ°í ÀÖÀ½À» º¼ ¼ö ÀÖ½À´Ï´Ù.
JS8051AÀÇ ÀÚÀåÅ« ÀåÁ¡ Áß¿¡ Çϳª´Â ·¥ÀÌ ¿ÏÀüÈ÷ ·ÒÀ¸·Î º¯È¯µÈ´Ù´Â
°ÍÀÔ´Ï´Ù. Â÷Â÷ ¾Æ½Ã°Ô µÇ°ÚÁö¸¸ ´Ù¸¥ º¸µå¿¡¼ »ç¿ëÇÏ´Â ¹æ¹ýÀº ¸®¼Â
ÈÄ ½ÃÀÛ ¹øÁöÀÎ Program Space MemoryÀÇ 0000 ¹øÁö¿¡´Â ·ÒÀÌ ÇÒ´çµÇ
ÀÖ½À´Ï´Ù. µû¶ó¼ ÇÁ·Î±×·¥ÀÇ Àý´ë¹øÁö »ç¿ë¿¡ ¹®Á¦°¡ ÀÖÀ¸¸ç ÀÎÅÍ·´Æ®
º¤ÅÍ Å×ÀÌºíµµ »ç¿ëÀÚ°¡ º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù.(ÀÚ¼¼ÇÑ ³»¿ëÀº ÀÎÅÍ·´Æ®
°Á¿¡¼..) Ȥ½Ã " JS8051A¿¡¼µµ ¸ð´ÏÅÍ·ÒÀÌ 0000 ¹øÁö¿¡ ¹ÚÇô ÀÖÁö
¾È´À³Ä ?" ÇÏ°í ¹Ý¹®À» ÇÏ´Â ºÐÀÌ ÀÖÀ»Áö ¸ð¸£°Ú±º¿ä. ±×·¯³ª JS8051AÀÇ
·ÒÀº ´Ù¿î ·Îµù Á÷ÈÄ ±× »ý¸íÀ» ´ÙÇÏ°í º¸µå »ó¿¡¼ ¾î¶°ÇÑ ¸Þ¸ð¸®
°ø°£µµ Â÷ÁöÇÏÁö ¾Ê°í »ç¶óÁ® ¹ö¸³´Ï´Ù.(?) µû¶ó¼ JS8051¿¡¼´Â ÀÚ½ÅÀÌ
0000 ¹øÁöºÎÅÍ ½ÃÀÛÇÏ´Â ·Ò¿¡´Ù ÇÁ·Î±×·¥À» §´Ù°í º¸½Ã°í ±×³É
ÇÁ·Î±×·¥À» ÇÏ½Ã¸é µË´Ï´Ù. ´õ¿íÀÌ ¾Æ¹«·± º¯°æ ¾øÀÌ ±× ÇÁ·Î±×·¥À»
·ÒÀ¸·Î ±¸¿ö JS8051AÀÇ ¸ð´ÏÅÍ ·ÒÀ» ´øÁ® ¹ö¸®°í ±× °÷¿¡ ²ÈÀ¸¸é µ¹¾Æ
°©´Ï´Ù. ±×·¯³ª ÇÑ°¡Áö, P1.7Àº ¿¹¿Ü ÀÔ´Ï´Ù.
¾î°ư ÁÁ½À´Ï´Ù. ¾Õ¿¡¼ ¼³¸íÀ» ¸ðµÎ µå·ÈÁö¸¸ ±×°ÍÀ» »ç¿ëÀÚ°¡ ÀÌÇØÇÒ
ÇÊ¿ä´Â ¾ø½À´Ï´Ù. ´ÜÁö P1.7À» °Çµå¸®Áö ¸»¶ó´Â ¿¹±â ÀÔ´Ï´Ù.
" ³Ê¹« ¾ï¿ïÇÏ´Ù. ¼úµµ ¾È¸Ô°í, ´ã¹èµµ ÁÖ¼ÇÇ¿ö °¡¸é¼ °Å´ëÇÑ Àܵ·
¸ð¾Æ¼ »ò´Âµ¥, ¿Ö P1.7À» ¸ø¾²°Ô ÇÏ´À³Ä. ±×°Íµµ ÇÑ ¹ÙÀÌÆ® ´ÜÀ§·Î ¾µ
¼öÀÖ´Â Port 1 Áß¿¡ ÇÑ ºñÆ®¸¦... ³Ê¹« ¾ï¿ïÇؼ ¸Ô°íÀÖ´Â '¿Õ²ÞƲÀÌ'
¸ÀÀ» ´À³¥ ¼ö°¡ ¾ø´Ù. º¸»óÇضó. ³» ÀÔ¸À µ¹¸®µµ~, ³» Àλý µ¹¸®µµ~ "
¸î°¡Áö ¹æ¹ýÀ» Á¦½ÃÇÕ´Ï´Ù. ¹°·Ð ¾Æ¹« ¼öÁ¤ ¾øÀÌ ±ÔÁ¤´ë·Î ¾²½Ã´Â °ÍÀÌ
ÁÁÁö¸¸ Á¤ P1.7À» ¿øÇϽŴٸé, 16V8ÀÇ 9¹ø ÇÉÀ» ¹ÛÀ¸·Î ¾à°£ ¹ú¸° ÈÄ
´Ù½Ã ¼ÒÄÏ¿¡ ²ÈÀ¸½Í½Ã¿ä. ±×·¯¸é P1.7À» ¸¶À½´ë·Î ¾µ ¼öÀÖ½À´Ï´Ù.
ÇÏÁö¸¸ ´Ù¿î ·ÎµùÀÌ ¾ÈµË´Ï´Ù. ·ÒÀ» ±¸¿ö¼ ¾²½Ê½Ã¿ä.
" ·ÒÀ» ±Á´Â°Ô ¿Þ¸»À̳Ä!, ´õ ¾ï¿ïÇÏ´Ù. "
ÁÁ½À´Ï´Ù. ±×·³ ÀÌ·¸°Ô ÇϽʽÿä. 2°³ÀÇ Å¸ÀÌ¸Ó ÀÔ·ÂÀ̳ª 2°³ÀÇ
ÀÎÅÍ·´Æ® ÀÔ·Â Áß¿¡ Çϳª¸¦ Æ÷±âÇϽʽÿä.¿¹¸¦ µé¾î T1( CPUÀÇ 15¹ø ÇÉ
P3.5 )À» Æ÷±âÇÑ´Ù°í ÇϽøé 16V8ÀÇ 9¹øÀ» ¹ÛÀ¸·Î ¾à°£ ¹ú·Á ²ÈÀº ÈÄ
T1( JP5ÀÇ 28¹ø ÇÉ )À» 16V8ÀÇ 9¹ø ÇÉ°ú ¿¬°áÇϽʽÿä. ±×¸®°í ¸ð´ÏÅÍ
·ÒÀÇ ½î½º ÇÁ·Î±×·¥ÀÎ ROM.ASM¿¡¼ P1.7À» ã¾Æ P3.5·Î ¹Ù²Û ÈÄ
¾î¼Àºí¸µÇؼ »õ·Î¿î ¸ð´ÏÅÍ ·ÒÀ» ¸¸µå½Ê½Ã¿ä. ±×´Ù¸§ ¸ð´ÏÅÍ ·ÒÀ» »õ·Î
¸¸µç °ÍÀ¸·Î ±³Ã¼ÇÑ ÈÄ »ç¿ëÇϽʽÿä. ±×·¯¸é P1.7À» ¸¶À½´ë·Î ¾µ ¼ö
ÀÖ½À´Ï´Ù.
" ???!!!... ¾à°£ ¼ÓÀº ´À³¦Àε¥, ±×·¡µµ ¾à°£ ¾ï¿ïÇÑ°Í °°±âµµ ÇÏ´Ù. "
±×·¯¸é ÀÌ·¸°Ô ÇϽʽÿä. ¸ð´ÏÅÍ ·Ò°ú 16V8 ³»¿ëÀ» ÀÚ½ÅÀÌ Á÷Á¢ ¯±¸¸¦
±¼·Á °íÄ¡ ½Ê½Ã¿ä. ±×·¯¸é Àú´Â ¿ì¸® Á¶Ä«°¡ ÁÁ¾ÆÇÏ´Â '¿Õ²ÞƲÀÌ'
»ç¸ÔÀ¸·¯ °©´Ï´Ù~.
" ¾Æ~ Æ÷Æ® 1À» Á¦¾îÇϱâ¶õ ¸Ö°íµµ ÇèÇϱ¸³ª."
6] HC574·Î Ãâ·ÂÇϱâ 12/19 23:23 135 line
HC574·Î Ãâ·ÂÇϱâ
HC574, HC541Àº Á¦°¡ °³ÀÎÀûÀ¸·Î °¡Àå ÁÁ¾ÆÇÏ´Â I/O ÀÔ´Ï´Ù. ¸®¼Â Á÷ÈÄ
ÀÏÁ¤ÇÑ °ªÀ» °¡Á®¾ß ÇÒ¶§´Â HC273À» ¾²°í¿ä, ±×·¸Áö ¾ÊÀ¸¸é HC574¸¦
¾¹´Ï´Ù. ¹«¾ù º¸´Ùµµ ÀԷ°ú Ãâ·Â ÇɵéÀÌ ±ú²ýÇÏ°Ô ±¸ºÐµÇ¾î ÀÖ¾î PCB
º¸µå ¼³°è½Ã¿¡³ª ¶«Áú·Î ¸¸µé¶§ ÆíÇÏ°í ÀÔÃâ·Â Àο¡ÀÌºí ½ÅÈ£µµ ½±°Ô
¸¸µé ¼ö ÀÖ¾î¼ ÁÁ¾ÆÇÕ´Ï´Ù. ¿©·¯ºÐµéÀÌ ÁÁ¾ÆÇϽô 82C55µµ
ÁÁ¾ÆÇÕ´Ï´Ù. ³ªÁß¿¡ I/O¸¦ ¼³°èÇÏ½Ç °æ¿ì Å©±â¿Í ½ºÇǵå, ÆҾƿô,
°¡°ÝµîÀ» °í·ÁÇÏ¿© ¼³°èÇØ¾ß ÇÕ´Ï´Ù.
¾Õ °Á¿¡¼ 80C31Àº 3°³ÀÇ ¸Þ¸ð¸® °ø°£À» °¡Áø´Ù°í ¸»¾¸À» µå·È½À´Ï´Ù.
³»ºÎ·¥, Program Memory Space(·Ò, Àбâ Àü¿ë ¿µ¿ª), Data Memory
Space(·¥,I/O, ÀÐ°í ¾²±â °¡´É ¿µ¿ª) ÀÌ·¸°Ô 3°³ÀÇ ¸Þ¸ð¸® °ø°£ÀÌ
ÀÖ½À´Ï´Ù. Á¦ °Á¸¦ Àß µû¶ó ¿À½Å ºÐÀº Program Memory Space¿¡µµ Àбâ
Àü¿ë I/O(¿¹: HC541, HC540 )°¡ µé¾î °¥ ¼ö ÀÖ´Ù´Â °ÍÀ» ¾Æ½Ç °Ì´Ï´Ù.
ASM¿¡¼´Â ÀÌ ¼¼°³ÀÇ ¸Þ¸ð¸® °ø°£À» Àд ¸í·ÉÀÌ °¢±â µû·Î ÁغñµÇ¾î
ÀÖ½À´Ï´Ù. ¼ø¼´ë·Î MOV, MOVC, MOVX ÀÔ´Ï´Ù. MOVC¿¡¼ 'C'´Â Constant
Data Áï ·ÒÀ» ÀǹÌÇÏ°í MOVX¿¡¼ 'X'´Â eXternal Data Áï ·¥À» ÀǹÌ
ÇÕ´Ï´Ù. ¾Æ·¡ ¿¹´Â °¢ ¸Þ·Î¸® °ø°£ÀÇ 30H¹øÁö¸¦ A¿¡ ÀÐ¾î µéÀÌ´Â ¸í·É
ÀÔ´Ï´Ù.
(³»ºÎ·¥)
MOV A,30H
(·Ò)
MOV DPTR,#0030H
MOV A,#0
MOVC A,@A+DPTR
(·¥)
MOV DPTR,#0030H
MOVX A,@DPTR
´ÙÀ½Àº °¢ 30H ¹øÁö¿¡ A°ªÀ» ¾²´Â ¿¹ ÀÔ´Ï´Ù.
(³»ºÎ·¥)
MOV 30H,A
(·¥)
MOV DPTR,#0030H
MOVX @DPTR,A
¼³¸¶, ·Ò °ø°£¿¡´Â ¿Ö ¾²´Â ¿¹°¡ ¾ø´À³Ä°í ¹¯´Â ºÐÀº ¾ø°ÚÁö¿ä.
°ñ¹ðÀÌ¿¡ ´ëÇÏ¿©.
ASMÀ» ÇϽô٠º¸¸é °ñ¹ðÀÌ '@'°¡ ÀÚÁÖ º¸ÀÌ ´Âµ¥ ÀÌ Ç¥½Ã´Â '~¿¡
ÀÖ´Â'À̶ó´Â ¶æÀÎ ¿µ¾î at ´ë½Å ¾²ÀÓ´Ï´Ù. MCS-51 ASM¿¡¼´Â ·¹Áö½ºÅÍ
¾Õ¿¡ °ñ¹ðÀÌ°¡ ºÙÀ¸¸é "±× ·¹Áö½ºÅÍ °ªÀÇ ¹øÁö"¸¦ ÀÇ¹Ì ÇÕ´Ï´Ù. ¾à°£
¾î·Æ°Ô Ç¥ÇöÇϸé '°£Á¢ ¾îµå·¹½Ì'À» ³ªÅ¸³½´Ù ¶ó°í ÇÕ´Ï´Ù.
MOV DPTR,#0030H
MOVX @DPTR,A
¿¡¼ DPTR¿¡´Â 0030H¶ó´Â °ªÀÌ µé¾î°¡°Ô µË´Ï´Ù. µû¶ó¼ @DPTRÀÇ ¶æÀº "
DPTR °ªÀÇ ¹øÁö" = "0030H ¹øÁö"¸¦ ¿¹±âÇÏ°Ô µË´Ï´Ù." MOVX @DPTR,A"
´Â 0030H ¹øÁö¿¡ A°ªÀ» ³ÖÀ¸¶ó´Â ¶æÀÌ µË´Ï´Ù. ¿¹¸¦ Çϳª ´õ
µé°Ú½À´Ï´Ù. ¸ÕÀú A¿¡ ¹«¾ùÀÌ µé¾î°¥Áö »ý°¢ÇØ º¸½Ê½Ã¿ä.
MOV 30H,#7 ; 30H¹øÁö¿¡ ¼ýÀÚ 7À» ³Ö¾î¶ó
MOV R0,#30H ; R0¿¡ ¼ýÀÚ 30H¸¦ ³Ö¾î¶ó
MOV A,@R0 ; R0 ³»¿ë ¹øÁöÀÇ °ªÀ» A¿¡
; ³Ö¾î¶ó
Á» Çì±ò¸®°Ú±º¿ä. ´äÀº 7 ÀÔ´Ï´Ù. Á¡Á¡ Àͼ÷ÇØ Áú°Ì´Ï´Ù.
JS8051A¿¡¼´Â HC574´Â Data Memory Space F000H ¹øÁö¿¡ À§Ä¡ÇÕ´Ï´Ù.
´É·ÂÀÌ µÇ´Â ºÐÀº ¾Æ·¡ JS51_574.ASMÀ» Âü°íÇÏÁö ¸»°í ÀÚ½ÅÀÌ Á÷Á¢
HC574¿¡ °ªÀ» Ãâ·ÂÇÏ´Â ASM ½î½º¸¦ ¸¸µé¾î º¸½Ê½Ã¿ä.
; JS51_574.ASM ( JS8051A Á¦°ø µð½ºÄÏ ÂüÁ¶ )
; ON,OFF HC574 PORT
ORG 0000H
JMP START
ORG 0033H
START: NOP ;
NOP ; DON'T REMOVE
REP:
MOV DPTR,#0F000H
MOV A,#0FFH
MOVX @DPTR,A ; OUT A TO HC574
CALL D_1S
MOV A,#0H
MOVX @DPTR,A
CALL D_1S
JMP REP
;=================================================
D_1S:
MOV R0,#10
D_1S_1:
MOV R1,#10
D_1S_2:
MOV R2,#100
DJNZ R2,$
DJNZ R1,D_1S_2
DJNZ R0,D_1S_1
RET
;=================================================
END
¿¹Á¦ ÇÁ·Î±×·¥ ¾È¿¡ " DJNZ R2,$ "ÀÌ Àִµ¥ $´Â ÇöÀç ÁÙÀÇ ¶óº§À»
´ëÇ¥ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ÇÁ·Î±×·¥ÀÇ ¸¶Áö¸·¿¡ ¹«ÇÑ ·çÇÁ¸¦ µ¹°Ô ÇÏ·Á¸é
SELF: JMP SELF
¶ó°í ÇصµµÇ°í ´ÙÀ½°ú °°ÀÌ Çصµ °°Àº ¶æÀÌ µË´Ï´Ù.
JMP $
27] ASM ÄÚµù½Ã À¯ÀÇ»çÇ× 12/19 23:24 57 line
ASM Ãʺ¸ÀÚµéÀÌ ½Ç¼öÇϱ⠽¬¿î °Íµé
MCS-51 ASMÀ» óÀ½ÇϽô ºÐµéÀÌ ½Ç¼öÇϱ⠽¬¿î°ÍÀ» ¸î°¡Áö Àû¾î
ºÃ½À´Ï´Ù.
.¼ýÀÚ µ¥ÀÌŸ ¾Õ¿¡ ¿ì¹°Á¤ # »©¸Ô±â
ÀÌ ½Ç¼ö´Â ¹«ÁöÇÏ°Ô ÀÚÁÖ ¹ß»ýÇÕ´Ï´Ù. Áß±ÞÀڵ鵵 °¡²û¾¿ ½Ç¼ö ÇÏ´Â
»çÇ× ÀÔ´Ï´Ù. ¼ýÀÚ ¾Õ¿¡ #À» ºü¶ß·Áµµ ¾Æ¹«·± ¿¡·¯³ª ¿ö´×(°æ°í)ÀÌ
³ª¿ÀÁö ¾ÊÀ¸¹Ç·Î ¾ÆÁÖ ÁÖÀÇ ÇØ¾ß ÇÕ´Ï´Ù. ¾î¼Àºí·¯ ½î½º ¶óÀÎÀÌ
±æ¾îÁö¸é ã±â°¡ ½±Áö ¾Ê½À´Ï´Ù. #ÀÌ ÀÖÀ»¶§´Â ¼ýÀÚ·Î ¾øÀ»¶§´Â
³»ºÎ·¥ÀÇ ¹øÁö·Î ÀνÄÀ» ÇÏ´Ï ÀÌÁ¡ À¯ÀÇ ÇϽʽÿä.
MOV A,#3 ; A¿¡ ¼ýÀÚ 3À» ³Ö´Â´Ù.
MOV A,3 ; ³»ºÎ·¥ 3¹øÁö( ·¹Áö½ºÅÍ ¹ðÅ© 0ÀÇ
; R2)ÀÇ °ªÀ» A·Î º¹»ç.
.MOVX¸¦ MOV·Î ¾²±â
±×´ÙÀ½ ÀÚÁÖ ¹ß»ýÇÏ´Â °ÍÀÌ MOVX¸¦ ½á¾ß Çϴµ¥ ±×³É MOV·Î ¾²°Å³ª
MOVC¸¦ ½á¾ß Çϴµ¥ ±×³É MOV·Î ¾²´Â °æ¿ìÀÔ´Ï´Ù. ÀÌ °æ¿ì¿¡µµ 16ºñÆ®
·¹Áö½ºÅÍÀÎ DPTR À̳ª PC¿Í °°ÀÌ ¾µ¶§´Â ¾î¼Àºí·¯°¡ ¿¡·¯¸¦ ¾Ë·Á ÁÖÁö¸¸
Rr( r=0 ~ 7 )°ú °°ÀÌ ¾µ¶§´Â ¾Ë·ÁÁÖÁö ¾Ê°í ¿øÇÏÁö ¾Ê´Â ´Ù¸¥ µ¿ÀÛÀ»
Çعö¸³´Ï´Ù. Áö±Ý Àß ¿Í´æÁö°¡ ¾Ê°ÚÁö¸¸ ÀÏ´Ü ¿°µÎÇØ µÎ½Ê½Ã¿ä.
MOVX @DPTR,A
MOV @DPTR,A ; ¾î¼Àºí½Ã ¿¡·¯ Ç¥½Ã
MOVX @R0,A
MOV @R0,A ; ÀüÇô ´Ù¸¥ ¸í·ÉÀÌ µË´Ï´Ù.
.°ñ¹ðÀÌ »©¸Ô±â
°ñ¹ðÀ̴ ȣÇÁÁý¿¡¼³ª »©¸Ô¾î¾ß Çϴµ¥ Ãʺ¸ÀÚµéÀº °¡²û¾¾ ASM ½î½º
ÀÛ¼º½Ã¿¡ »©¸Ô°ï ÇÕ´Ï´Ù. ÀÌ °æ¿ìµµ 16ºñÆ® ·¹Áö½ºÅÍ¿Í °°ÀÌ ¾µ°æ¿ì´Â
¾î¼Àºí½Ã ¾Ë·ÁÁÖÁö¸¸ ±×·¸Áö ¾ÊÀ» ¶§´Â ÁÖÀÇ ÇØ¾ß ÇÕ´Ï´Ù.
MOV @R0,A
MOV R0,A ; ÀüÇô ´Ù¸¥ ¸í·ÉÀÌ µË´Ï´Ù.
À§¿¡ 3°¡Áö ¿Ü¿¡µµ ÁÖÀÇ »çÇ×ÀÌ ´õ ÀÖ½À´Ï´Ù¸¸, ÀÏ´Ü Ãʺ¸ÀÚµéÀº À§ÀÇ
3°¡Áö¸¦ À¯ÀÇÇϽʽÿä. ³ª¸ÓÁö´Â Áß±ÞÀÚ°¡ µÇ¸é ¸»¾¸ µå¸®°Ú½À´Ï´Ù.
[28] PUSH SW ÀÔ·Â 12/19 23:25 119 line
PUSH SW ÀÔ·Â
JS8051A º¸µå¿¡´Â 3°³ÀÇ PUSH SW(½ºÀ§Ä¡)°¡ ÀÖ½À´Ï´Ù.( JSTEST º¸µå¿¡µµ
¶È°°Àº À§Ä¡¿¡ ÀÖÀ¸¹Ç·Î Âü°í ÇϽʽÿä. ) S1, S2, S3°¡ Àִµ¥ S1Àº
¸®¼Â ½ºÀ§Ä¡·Î ¾²ÀÌ°í S2, S3°¡ ÀÏ¹Ý ¿ëµµ·Î »ç¿ë µË´Ï´Ù. ȸ·Îµµ¸¦
º¸½Ã¸é S2¿Í S3°¡ °¢°¢ Port 1ÀÇ ÇÉÀÎ P1.2¿Í P1.3¿¡ ¿¬°áµÇ¾î
ÀÖ½À´Ï´Ù. ±×·¯³ª P1.2¿Í P1..3 ÇɵéÀº ½ºÀ§Ä¡ÀÇ ÀÔ·ÂÀÌ ¾Æ´Ï ÀϹÝ
¿ëµµ·Îµµ »ç¿ë °¡´ÉÇÕ´Ï´Ù. ´Ù½Ã ¸»Çϸé Port 1ÀÇ ´Ù¸¥ Çɵé°ú °°ÀÌ
ÀÔÃâ·ÂÀÌ °¡´ÉÇÑ ÀÏ¹Ý ÇÉ Ã³·³ Ãë±ÞÇصµ µË´Ï´Ù. Port 1À» ´Ù ¾²°í
½ÍÀºµ¥ S2¿Í S3°¡ ´Þ·ÁÀÖ¾î¼ ±ú¸§ÂïÇÑ ºÐµéÀÌ ÀÖÀ»±îºÁ ³ëÆĽɿ¡¼
¸»¾¸ µå¸®´Â °Ì´Ï´Ù.
ÀϹÝÀûÀ¸·Î ¾î¶°ÇÑ º¸µå¸¦ ¸¸µé¶§ Ãâ·Â È®ÀÎ ÀåÄ¡ÀÎ LED, PIEZO,
SEGMENT DISPLAY( FND¶ó°íµµ ÇÔ ), LCD Áß¿¡ Àû¾îµµ Çϳª¿Í, 2°³ ÀÌ»óÀÇ
½ºÀ§Ä¡ ÀÔ·ÂÀ» ³Ö¾î¼ ¼³°èÇØ¾ß ÇÕ´Ï´Ù. ÃÖÁ¾ ¾ç»ê Á¦Ç°¿¡¼´Â ¿ëµµ¿¡
µû¶ó ¾ø¾îµµ µÇÁö¸¸ µð¹ö±ë °úÁ¤¹× °³¹ß°úÁ¤¿¡¼´Â °ÅÀÇ ÇʼöÀû ÀÔ´Ï´Ù.
ÈξÀ Áøº¸µÈ ÇüÅÂÀÇ µð¹ö±ë ÅøÀ̳ª Àåºñ°¡ ÀÖ´Ù°í Çصµ °¡Àå ¿ø½ÃÀûÀÎ
½ºÀ§Ä¡ ÀԷ°ú Ãâ·Â È®ÀÎ ÀåÄ¡µéÀº ¸¹Àº µµ¿òÀ» ÁÝ´Ï´Ù.
JS8051A º¸µå¿¡¼ S2, S3 µÎ°³ÀÇ PUSH SW´Â ´Ù¿î·ÎµùÀ» Çϱâ Àü±îÁö´Â
º¸µå ÀÚü°¡ Áï ¸ð´ÏÅÍ ·ÒÀÌ °ü¸®¸¦ ÇÕ´Ï´Ù. S2´Â ´Ù¿î ·ÎµùÀ» ½ÃÀÛÇÏ´Â
½ºÀ§Ä¡·Î »ç¿ëÀ» ÇÕ´Ï´Ù. ´Ù¿î ·ÎµùÀÌ ´Ù ³¡³ª¸é ÀÚµ¿À¸·Î ·ÎµùµÈ
ÇÁ·Î±×·¥ÀÌ ½ÇÇàµË´Ï´Ù. S3´Â ¸®¼ÂÈÄ ÀÌ¹Ì ·¥¿¡ ·ÎµùµÈ ÇÁ·Î±×·¥À» ´Ù½Ã
½ÃÀÛÇϴµ¥ »ç¿ëµË´Ï´Ù. ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Ù º¸¸é óÀ½ ºÎÅÍ ´Ù½Ã
½ÇÇàÀ» ÇؾßÇÒ ¶§°¡ ¸¹Àºµ¥ À̶§´Â ´Ù¿î·ÎµùÀ» ´Ù½Ã ÇÏ´Â °ÍÀÌ ¾Æ´Ï°í
¸®¼Â ½ºÀ§Ä¡¸¦ ´©¸¥ÈÄ S3¸¦ ´©¸£¸é ·¥¿¡ ÀÖ´Â ÇÁ·Î±×·¥ÀÌ ¹Ù·Î ½ÇÇà
µË´Ï´Ù. Ȥ½Ã ¸®¼ÂÀ» °É¸é ·¥ÀÇ ³»¿ëµµ Áö¿öÁø´Ü°í »ý°¢ÇϽô ºÐµéÀº
¾È°Ô½Ã°ÚÁö¿ä.
ÀÏ´Ü º¸µåÀÇ Á¦¾î±ÇÀÌ »ç¿ëÀÚ ÇÁ·Î±×·¥À¸·Î ³Ñ¾î°¡°Ô µÇ¸é , ´Ù½Ã¸»ÇØ
S2³ª S3·Î ÇÁ·Î±×·¥À» ½ÃÀÛÇÏ°Ô µÇ¸é S2¿Í S3´Â ÀÚÀ¯ÀÇ ¸ö(?)ÀÌ µË´Ï´Ù.
»ç¿ëÀÚ°¡ ÀÚ½ÅÀÇ ¿ëµµ¿¡ ¸Â°Ô »ç¿ëÇÏ¸é µË´Ï´Ù.
Á¦°¡ Àü¿¡ ¸»¾¸ µå·ÈµíÀÌ Æ÷Æ® ÇÉÀ» ÀÔ·ÂÀ¸·Î »ç¿ëÇϱâ À§Çؼ´Â ¸ÕÀú
Æ÷Æ®ÀÇ Ãâ·Â°ªÀ» 1( HIGH )·Î ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ¹°·Ð ÀÌ¹Ì 1ÀÌ µé¾î°¡
ÀÖÀ¸¸é ´Ù½Ã 1À» ½áÁÙ ÇÊ¿ä´Â ¾ø½À´Ï´Ù. Æ÷Æ®ÀÇ ¿ø¸®¿¡ ´ëÇØ ¿ø·¡
°ÁÂÀÇ Ãʾȿ¡¼´Â ÈξÀ ´õ ³»¿ëÀÌ ±æ°í º¹ÀâÇѵ¥ ±× ³»¿ëÀº ³ªÁßÀ¸·Î
¹Ì·ç°Ú½À´Ï´Ù. Ãʺ¸¶§ ¸¹ÀÌ ½Ç¼ö ÇÏ´Â °ÍÁß¿¡ Çϳª°¡ Æ÷Æ®ÀÇ °ªÀÌ 0À»
Ãâ·ÂÇÏ°í ÀÖÀ»¶§ Æ÷Æ® ÇÉÀ» Àд °æ¿ì°¡ ¸¹Àºµ¥ ÀÌ°æ¿ì´Â ¹«Á¶°Ç 0ÀÌ
ÀԷµ˴ϴÙ. µû¶ó¼ Á» ´õ Àͼ÷ÇØÁö±â Àü±îÁö´Â ±× ÇÉÀÇ Ãâ·Â°ªÀÌ 0À̵ç
1À̵簣¿¡ ¹«Á¶°Ç ÀÔ·Â Àü¿¡´Â 1À» ¸ÕÀú ¾²½ÅÈÄ ÀÐÀ¸½Ê½Ã¿ä.
¾Æ·¡ ¿¹Á¦ ÇÁ·Î±×·¥Àº S2ÀÇ °ªÀ» Àоî HC574ÀÇ ¸ðµç ÇÉÀ¸·Î Ãâ·ÂÇÏ´Â
ÇÁ·Î±×·¥ ÀÔ´Ï´Ù. º° ¾î·Á¿î °ÍÀº ¾ø°í 'JB' ¶ó´Â »ý¼ÒÇÑ ¸í·ÉÀÌ
³ª¿À´Âµ¥ ÀÌ°ÍÀº " Jump if Bit is set"," ÇÉÀ» ÀÐ¾î ±×°ªÀÌ 1(set)À̸é
Á¡ÇÁ "¶ó´Â ¶æÀÇ ¸í·ÉÀÔ´Ï´Ù. ±× ¹Ý´ë ¸í·É¾î·Î´Â 'JNB', " Jump if Bit
is Not set "ÀÌ ÀÖ½À´Ï´Ù.
; ( JS8051A ³»Àå µð½ºÄÏ JS51KEY.ASM ÂüÁ¶)
; READ USER KEY1(S2) AND WRITE TO HC574
HC574 EQU 0F000H
ORG 0000H
JMP START
ORG 0033H
START:
NOP ; DON'T REMOVE
NOP ; DON'T REMOVE( FOR TIMING )
MOV DPTR,#HC574
REP: JB P1.2,OUTHIGH
OUTLOW:
MOV A,#0H
MOVX @DPTR,A
JMP REP
OUTHIGH:
MOV A,#0FFH
MOVX @DPTR,A
JMP REP
END
¿¹Á¦Áß¿¡ " HC574 EQU 0F000H "¶ó´Â ¼±¾ð¹®ÀÌ Àִµ¥ ¾î¼Àºí·¯´Â
ÀÌ ¹®ÀåÀ» ¸¸³ ÀÌÈÄ·Î HC574´Â 0F000H·Î ¹«Á¶°Ç ¹Ù²ã¼ Çؼ®ÇÕ´Ï´Ù.
µû¶ó¼
MOV DPTR,#HC574
´Â
MOV DPTR,#0F00H
·Î ¾Ë¾Æ µí°Ô µË´Ï´Ù.
¾î´ÀÁ¤µµ ÀÌÇظ¦ ÇϼÌÀ¸¸é ¹®Á¦¸¦ ¸î°³ Ç®¾î º¸½Ê½Ã¿ä.
¹®Á¦ 1) S2¸¦ ´©¸£¸é HC574ÀÇ Ãâ·ÂÀÌ ¸ðµÎ 1ÀÌ µÇ°í S3¸¦ ´©¸£¸é ¸ðµÎ
0ÀÌ µÇ°Ô ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽʽÿä.
¹®Á¦ 2) S2¸¦ ´©¸£¸é HC574ÀÇ Ãâ·ÂÀÌ ¹ÝÀüµÇ´Â Áï ´©¸¦¶§ ¸¶´Ù 1 <--> 0
ÀÌ µÇµµ·Ï ÇÁ·Î±×·¥À» ÀÛ¼ºÇϽʽÿä.
¹®Á¦ 3) HC574ÀÇ ÃʱⰪÀÌ 0ÀÌ µÇ°Ô ÇÏ°í S2¸¦ ´©¸£¸é °ªÀÌ Çϳª¾¿ Áõ°¡
µÇ°í S3¸¦ ´©¸£¸é °¨¼Ò µÇ°Ô ÇÁ·Î±×·¥ ÇϽʽÿä.
¼öÁØ ÀÖ´Â ºÐµéÀ» À§ÇÑ ¹®Á¦
¹®Á¦ 4 ) ¹®Á¦ 1, 2, 3 ¿¡¼ ¸ðµç µ¿ÀÛÀÌ ½ºÀ§Ä¡¸¦ ¶ª¶§ µ¿ÀÛ µÇ°Ô
ÇϽʽÿä.
¹®Á¦ 4 ) ¹®Á¦ 1, 2, 3 ¿¡¼ ¸ðµç µ¿ÀÛÀÌ ½ºÀ§Ä¡¸¦ ´©¸¦¶§ Çѹø µ¿ÀÛÀÌ
µÇ°í ½ºÀ§Ä¡¸¦ ³õ°í ´Ù½Ã ´·¯¾ß ´ÙÀ½ µ¿ÀÛÀÌ µÇ°Ô ÇϽʽÿä.
Á¦°¡ °¡²û¾¿ µå¸®´Â ¹®Á¦´Â ¹Ýµå½Ã Ç®¾î¾ß ÇÕ´Ï´Ù. ¸ø Ç®°ÚÀ¸¸é ÀÏ´Ü
»ý°¢ÀÌ¶óµµ ÇغÁ¾ß ÇÕ´Ï´Ù. ±×·¡¾ß »¡¸® ¹è¿ï ¼ö°¡ ÀÖ°í ±âÃÊ°¡ ´Ü´ÜÇÑ
¿£Áö´Ï¾î°¡ µË´Ï´Ù. ´«À¸·Î¸¸ ÇϽô ºÐµéÀº Àý´ë·Î ¾ø¾î¾ß ÇÕ´Ï´Ù.
Àû¾îµµ Á¦ °Á¸¦ ¾Æ²¸ ÁÖ´Â ºÐÀ̶ó¸é ºÐÀ̶ó¸é
29] HC541 ÀÔ·Â 12/22 15:44 92 line
HC541 ÀÔ·Â
HC541Àº 3 »óÅÂ( high, low, high-impedance º°µµ ¼³¸í*) ¹öÆÛ·Î ÀÔ·Â
¶Ç´Â Ãâ·Â I/O·Î »ç¿ëÇÒ ¼ö Àִµ¥ JS8051A¿¡¼´Â ¿ÜºÎÀÇ µ¥ÀÌŸ¸¦
³»ºÎÀÇ µ¥ÀÌŸ ¹ö½º¿¡ ½Ç±â À§Çؼ Áï ÀÔ·ÂÀ¸·Î »ç¿ëÇß½À´Ï´Ù. ÀÔ·Â
ºÎºÐ(ÇÉ)ÀÌ È®Àå ÇØ´õ(JP6)·Î ³ª¿Í ÀÖÀ¸´Ï »ç¿ëÀÚ È®À庸µå¿¡¼ Àаí
½ÍÀº ºÎºÐ(ÇÉ)À» ÀÌ°÷¿¡ ¿¬°áÇÏ¿© ÀÐÀ¸¸é µË´Ï´Ù. TTL °è¿ÀÎ LS541À»
»ç¿ëÇÒ¶§´Â ÇÊ¿ä°¡ ¾øÁö¸¸ CMOS °è¿ÀÎ HC541À̳ª HCT541À» »ç¿ëÇÒ¶§´Â
ÀÔ·ÂÀ¸·Î ¾²ÀÌÁö ¾Ê´Â ÇÉÀº GND³ª VCC¿¡ ¹Ù·Î ºÒ¸®°Å³ª Ç®¾÷À̳ª
Ç®´Ù¿îÀ» ÇØÁֽʽÿä.
HC541À» Àд ¹æ¹ýÀº HC574¸¦ ÀÐÀ»¶§¿Í ºñ½ÁÇÕ´Ï´Ù. ´ÜÁö MOVX µÚ¿¡
½î½º¿Í µ¥½ºÅͳ×À̼ÇÀÎÀÎ µÎ°³ÀÇ ¿ÀÆÛ·£µå¸¦ ¹Ù²Ù¸é µË´Ï´Ù.
(Ãâ·Â)
MOVX @DPTR,A ; A -> HC574
(ÀÔ·Â)
MOVX A,@DPTR ; A <- HC541
¾Æ·¡ ¿¹Á¦ ÇÁ·Î±×·¥Àº HC541·Î °ªÀ» Àоî HC574·Î Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥
ÀÔ´Ï´Ù. º°·Î ¾î·Á¿î ºÎºÐÀº ¾ø½À´Ï´Ù.
; (JS8051A ³»Àå µð½ºÄÏ JS51IO.ASM ÂüÁ¶)
; HC541( INPUT ) => HC574 ( OUTPUT )
HC541 EQU 0F000H
HC574 EQU 0F000H ; WHEN WRITE
ORG 0000H
JMP START
ORG 0033H
START: NOP ;
NOP ; DON'T REMOVE
MOV SP,#70H
REP:
MOV DPTR,#HC541
MOVX A,@DPTR ; A <- HC541
MOV DPTR,#HC574
MOVX @DPTR,A ; HC574 <- A
JMP REP
END
* 3»óÅÂ( 3-State) : µðÁöÅ»¿¡¼´Â ¹°¸®ÀûÀ¸·Î 3°¡ÁöÀÇ »óÅ°¡
ÀÖ½À´Ï´Ù. 0(Low)´Â GND ÀüÀ§¸¦ °¡Áö¸ç 1(High)Àº Vcc(´ëºÎºÐÀÌ
5V) ÀüÀ§¸¦ °¡Áý´Ï´Ù. ³ª¸ÓÁö Çϳª´Â 0V¿Í 5VÀÇ Áß°£ÀÎ ¾îÁ¤ÂÄÇÑ
2.5V »óÅ°¡ ¾Æ´Ï¶ó high impedance »óÅ ÀÔ´Ï´Ù. ¸» ±×´ë·Î
ÀÓÇÇ´ø½º°¡ ³ôÀº »óÅ ÀÔ´Ï´Ù. ÀÓÇÇ´ø½º¶ó´Â ¶æÀº ±íÀº ¶æÀÌ ÀÖÁö¸¸
±×³É ÀúÇ×À̶ó°í »ý°¢ÇÏ½Ã¸é µË´Ï´Ù. " ±×·¯´Ï±î ³ôÀº ÀúÇ× »óÅÂ.
??? ". ±×·¸½À´Ï´Ù. ´ÙÀ½ ±×¸²À» º¸¾Æ Áֽʽÿä.
_____ ______
|__ A __|
|__| | |__|
IC1 |__ | __| IC2
|__|----------------|__|
_____| |______
_____
|__
|__|
IC3 |__
|__|
_____|
½ÅÈ£°¡ A¿¡¼ µé¾î¿Í IC2·Î µé¾î°£´Ù°í ÇÒ¶§ IC1ÀÌ Low³ª High¸¦
Ãâ·ÂÇÏ°í ÀÖ´Ù¸é IC2·Î µé¾î°¡´Â ½ÅÈ£¸¦ ¿Ã¹Ù¸¥ ½ÅÈ£°¡ µé¾î°¥ ¼ö
¾ø½À´Ï´Ù. µû¶ó¼ IC1ÀÇ Ãâ·ÂÀº 0 µµ 1 µµ ¾Æ´Ï ²ö¾îÁø »óÅ°¡
µÇ¾î¾ß Çϴµ¥ ½ÇÁ¦·Î´Â ¿ÏÀüÈ÷ ²ö¾îÁø »óÅ°¡ ¾Æ´Ï IC1ÀÇ Ãâ·Â
ÀúÇ×ÀÌ ¸Å¿ì ³ôÀº »óÅÂ( high impedance stage )°¡ µË´Ï´Ù. ³ôÀº
ÀúÇ× »óÅ°¡ ¿Ö AÀÇ ÀԷ¿¡ ¿µÇâÀ» ¾ÈÁÖ´ÂÁö ÀÌÇØ°¡ ¾ÈµÇ´Â ºÐÀº
IC3¸¦ º¸¾Æ Áֽʽÿä. IC3ÀÇ Ãâ·Â ÇÉÀº A¿Í ÀüÇô ¿¬°áµÇ¾î ÀÖÁö
¾ÊÀ¸¹Ç·Î AÀÇ ÀԷ¿¡ ÀüÇô ÁöÀåÀÌ ¾ø´Ù´Â °ÍÀº ÀÌÇØ°¡ µÇÁö¿ä.
±×·¯³ª ÀüÀÚ È¸·Î ÀûÀ¸·Î IC3ÀÇ Ãâ·ÂÀº A¿Í ¹«ÇÑ´ë ¿ÈÀÇ ÀúÇ×ÀÌ
¿¬°áµÇ ÀÖ´Ù°í º¼ ¼ö ÀÖ½À´Ï´Ù. ±×·¯´Ï±î ¹«ÇÑ´ë ¿È°ú ºñ½ÁÇÑ ÇÏÀÌ
ÀÓÇÇ´ø½º »óŵµ °ÅÀÇ ¿µÇâÀ» ÁÖÁö ¾Ê´Â´Ù°í º¸½Ê½Ã¿ä.
±«º¯À̶ó°í ¸»ÇϽÇÁö ¸ð¸£Áö¸¸ »ç½Ç ÀÔ´Ï´Ù. ±×·¡µµ ÇÏÀÌ
ÀÓÇÇ´ø½º »óÅ°¡ ÀÌÇØ°¡ ¾ÈµÇ´Â ºÐÀº ±×³É ¾ÆÁÖ ÁÁÀº »óŶó°í¸¸
¾Ë¾ÆµÎ½Ê½Ã¿ä.---- È÷È÷
·Ò Àбâ
ÀϹÝÀûÀ¸·Î ·ÒÀº 64K ¹ÙÀÌÆ® Program Memory Space¿¡ ÀÖ½À´Ï´Ù. Àß
¾Æ½Ã´Ù½ÃÇÇ Program Memory Space´Â ´ÜÁö ÀÐÀ» ¼ö¸¸ ÀÖ´Â °ø°£À̸ç
Çϵå¿þ¾îÀûÀ¸·Î´Â /PSEN ½ÅÈ£¸¦ »ç¿ëÇÏ¿© ÀнÀ´Ï´Ù. ·Ò¿¡´Â ¸í·É ÄÚµå
¿Ü¿¡ »ó¼ö µ¥ÀÌŸ, ÆùÆ® µ¥ÀÌŸ, Å×ÀÌºí µ¥ÀÌŸ µî ¿©·¯°¡Áö ¿ëµµÀÇ
µ¥ÀÌŸ °ªÀÌ µé¾î°¥ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¯ÇÑ ·Ò µ¥ÀÌŸ¸¦ Àбâ À§Çؼ´Â
" MOVC " ¸í·ÉÀ» »ç¿ëÇÕ´Ï´Ù. ¾Æ·¡ ¿¹Á¦ ÇÁ·Î±×·¥Àº ·ÒÀÇ 0000 ¹øÁöÀÇ
³»¿ëÀ» Àоî HC574·Î Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù. º°·Î ÁÖÀÇ ÇÒ°ÍÀ» ¾ø°í
´ÜÁö Àд ¹øÁö°¡ DPTR°ú A°ªÀ» ÇÕÃļ °áÁ¤µÈ´Ù´Â °Í¸¸ ¾Ë¾Æ µÎ½Ê½Ã¿ä.
DPTR¿Ü¿¡ PC(Progrma Counter)¸¦ »ç¿ëÇÏ¿© Àд ¹æ¹ýµµ ÀÖ½À´Ï´Ù. ±×°Ç
³ªÁß¿¡ ¹è¿ìÁö¿ä.
; (JS8051A ³»Àå µð½ºÄÏ JS51ROMR.ASM ÂüÁ¶)
; READ RAM(0000H) AND OUT TO HC574(maybe 02h)
ORG 0000H
JMP START
ORG 0033H
START: NOP ;
NOP ; DON'T REMOVE
MOV DPTR,#0000H ; READ 0000H(ROM)
CLR A
MOVC A,@A+DPTR
MOV DPTR,#0F000H ; OUT TO HC574
MOVX @DPTR,A
JMP $
END
¾Ë¾ÆµÎ¸é Çرò¸®´Â ¿¹±â
»ç¿ëÀÚ°¡ ÀǽÄÀ» ¸øÇÏÁö¸¸ JS8051A¿¡¼´Â ÇÁ·Î±×·¥´Ã ´Ù¿î·ÎµùÇÏ¿©
½ÇÇàÇÏ¸é ·¥ÀÌ ·ÒÀÇ ¿ªÇÒ±îÁö ÇϹǷΠ¹°¸®ÀûÀ¸·Î ·¥ÀÇ 0000 ¹øÁö³ª ·ÒÀÇ
0000 ¹øÁö°¡ °°½À´Ï´Ù. µû¶ó¼ À§ ÇÁ·Î±×·¥¿¡¼´Â " MOVC " ¸í·ÉÀ»
»ç¿ëÇÏ¿© ·ÒÀ» ÀÐÁö¸¸ ·¥À» Àд ´Ù°íµµ ¸»ÇÒ ¼ö ÀÖÁö¿ä. ???
¹°·Ð ·Ò¿¡ ±¸¿ö ³Ö¾î ½ÇÇàÇÏ¼Ì´Ù¸é ·ÒÀ» Àд °ÍÀÌ µÇ°í¿ä.
-- ¾à°£ °ÆÁ¤ÀÌ µÇ´Â±º¿ä. µ¹¾Æ¹ö¸®´Â »ç¶÷ÀÌ ¾ø±â¸¦...
[31] ·¥ ÀÐ°í ¾²±â 12/22 15:48 87 line
·¥ ÀÐ°í ¾²±â
·¥Àº 64K ¹ÙÀÌÆ®ÀÇ Data Memory Space¿¡ À§Ä¡ÇÕ´Ï´Ù. Data Memory
Space´Â ´ç¿¬È÷ ÀÐ°í ¾²±â°¡ °¡´ÉÇÑ °ø°£ÀÔ´Ï´Ù. Çϵå¿þ¾îÀûÀ¸·Î
ÀÐÀ»¶§´Â /RD ½ÅÈ£¸¦ ¾µ¶§´Â /WR½ÅÈ£¸¦ »ç¿ëÇÕ´Ï´Ù. ÇÁ·Î±×·¥¿¡¼
·¥À» ÀÐ°í¾²´Â ¸í·ÉÀº ¾Õ¿¡¼ ¹è¿ü´ø I/O¸¦ ÀÐ°í ¾²´Â ¹æ¹ý°ú
¶È°°½À´Ï´Ù. " MOVX " ¸í·ÉÀº ƯÁ¤ ĨÀ» Àаųª ¾²´Â ¸í·ÉÀÌ ¾Æ´Ï°í
Data Memory Space¸¦ ÀÐ°í ¾²´Â ¸í·É ÀÔ´Ï´Ù. µû¶ó¼ CPU´Â ÀÚ½ÅÀÌ
/RD¿Í /WRÀ» »ç¿ëÇÏ¿© ÀÐ°í ¾²´Â °ø°£ÀÌ ·¥ÀÎÁö I/OÀÎÁö ·ÒÀÎÁö ÀüÇô
¸ð¸£·Î ¼öÇàÀ» ÇÕ´Ï´Ù. ¿ªÀ¸·Î ¸»Çϸé ÇÁ·Î±×·¥¸¸ º¸¾Æ¼´Â " MOVX "·Î
Àаųª ¾²´Â ´ë»ó °ø°£ÀÌ ¹°¸®ÀûÀ¸·Î ¾î¶² µð¹ÙÀ̽º°¡ ´Þ·Á ÀÖ´ÂÁö ¾Ë¼ö
¾ø´Ù´Â ¶æÀÔ´Ï´Ù.
¾Æ·¡ ¿¹Á¦´Â ·¥ÀÇ 0000 ¹øÁö¸¦ Àоî HC574·Î Ãâ·ÂÇÏ´Â °£´ÜÇÑ ÇÁ·Î±×·¥
ÀÔ´Ï´Ù.
; (JS8051A ³»Àå µð½ºÄÏ JS51RAMR.ASM ÂüÁ¶ )
; READ RAM(0000H) AND OUT TO HC574( maybe 02h )
ORG 0000H
JMP START
ORG 0033H
START: NOP ;
NOP ; DON'T REMOVE
MOV DPTR,#0000H ; READ 0000H(RAM)
MOVX A,@DPTR
MOV DPTR,#0F000H ; OUT A
MOVX @DPTR,A
JMP $
END
À§ ¿¹Á¦¿¡¼´Â ·¥ÀÇ 0 ¹øÁö¿¡ ¾î¶°ÇÑ °ªÀ» ¾²´Â ºÎºÐÀÌ ¾ø½À´Ï´Ù.
µû¶ó¼ ÀÐÀº °ªÀÌ ¾î¶² °ªÀÌ µÉÁö´Â ¾Ë ¼ö ¾ø½À´Ï´Ù. ´Ü ´Ù¿î·ÎµùÇÏ¿©
½ÇÇàÇÏ¼Ì´Ù¸é ±×°÷¿¡´Â " JMP START "¿¡ ÇØ´çÇÏ´Â ¸Ó½® ÄÚµåÀÎ
02H°¡ µé¾î ÀÖÀ» °Ì´Ï´Ù.
¾Æ·¡ ¿¹Á¦´Â ·¥ÀÇ 0000 ¹øÁö¿¡ 255¸¦ ¾²°í ´Ù½Ã Àоî ÀÐÀº °ªÀ» HC574¿¡
Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù.
; (JS8051A ³»Àå µð½ºÄÏ JS51RAMW.ASM ÂüÁ¶ )
JUST WRITE 255 TO RAM(0000H) AND THEN READ IT
ORG 0000H
JMP START
ORG 0033H
START: NOP ;
NOP ; DON'T REMOVE
MOV DPTR,#0
MOV A,#255
MOVX @DPTR,A
MOVX A,@DPTR ; READ 0000H(RAM)
MOV DPTR,#0F000H
MOVX @DPTR,A ; OUT TO HC574
JMP $ ; JUMP SELF ADDRESS
END
Èñ¾áÇÑ ½Ã½ºÅÛ ( ¿ÕÃʺ¸ ºÐµéÀº Åë°ú )
ÀϹÝÀûÀ¸·Î ¸í·É ÄÚµå´Â ·Ò¿¡ µé¾î ÀÖ°í ÀÏ´Ü ±¸¿öÁø Äڵ带 ¹Ù²Ù±â´Â
¹ø°Å·Ó½À´Ï´Ù. JS8051A¸¦ ¾ÆÁÖ Àß ÀÌÇØÇϽô ºÐµé( Áö±Ý ÂëÀ̸é
Àúº¸´Ùµµ ´õ JS8051A¿¡ ´ëÇØ ³¯°í ±â´Â ºÐÀÌ ÀÖÀ» °Íµµ °°Àºµ¥...)Àº
À§ÀÇ ¿¹Á¦ ÇÁ·Î±×·¥ÀÌ ÁøÂ¥ °ñ¶§¸®´Â ÀÏÀ» ÇÏ´Â ÇÁ·Î±×·¥À̶ó´Â °ÍÀ»
¾Ë °Ì´Ï´Ù. À§ ÇÁ·Î±×·¥¿¡¼ 0000 ¹øÁö¿¡ 255¸¦ ½á³Ö¾úÁö¸¸ ½ÇÁ¦·Î
´Ù¿î·ÎµùÀ» ÀÌ¿ëÇÏ¿´´Ù¸é ·¥ÀÌ ·ÒÀÇ ¿ªÇÒ±îÁö ÇϹǷΠ·¥ÀÇ 0000
¹øÁö¿¡´Â ·ÒÀÇ 0000 ¹øÁö¿Í °°ÀÌ " JMP START "¿¡ ÇØ´çÇÏ´Â ¸Ó½®
ÄÚµåÀÎ 02H°¡ µé¾î Àִµ¥ ÀÌ°÷¿¡ 255 = FF ( = " MOV R7,A " ¸í·É
Äڵ忡 ÇØ´ç ) °ªÀ» ³Ö¾úÀ¸´Ï ÀÚ½ÅÀÇ Äڵ带 ¹Ù²ã ¹ö¸®´Â ÀÏÀ» Çعö¸°
°ÍÀÌ µË´Ï´Ù. µû¶ó¼ »ç¿ëÀÚ°¡ óÀ½ºÎÅÍ ÇÁ·Î±×·¥À» ´Ù½Ã ½ÃÀÛÇϱâ À§ÇØ
0000 ¹øÁö·Î JUMP¸¦ Çϰųª ¸®¼Â ÈÄ S3 Å°¸¦ ´·¶´Ù¸é ÀÌ¹Ì 0000 ¹øÁöÀÇ
Äڵ尡 º¯°æµÈ »óÅÂÀ̹ǷΠ¿Ã¹Ù·Î ½ÇÇàÀÌ µÇÁö ¾Ê½À´Ï´Ù. ÀÌ·¯ÇÑ Æ¯¼º°ú
¿ÜºÎ ÀÔ·Â( SERIAL ¶Ç´Â I/O ) µîÀ» Àß ÀÌ¿ëÇÏ¸é ¸®¼ÂÀ¸·Î Àç½ÇÇà
½Ãų¶§¸¶´Ù ´Ù¸¥ ÇൿÀ» ÇÏ´Â ´Ù½Ã¸»ÇØ ½º½º·Î ¸í·É Äڵ带 º¯È½ÃÅ°´Â
¾ÆÁÖ ÀÌ»óÇÑ ÇÁ·Î±×·¥ÀÌ °¡´ÉÇÏ°Ô µË´Ï´Ù.