|
AVR°ú PC Åë½Å
(½½¶óÀ̵åÁ¦¾î) |
||||
ÇнÀ¸ñÇ¥ |
|||||
½½¶óÀ̵带 ÀÚµ¿ ¿Õº¹¿îµ¿ÇÏ°Ô ÇÏ°í ½½¶óÀÌµå ¾ç´Ü¿¡ ¸®¹ÌÆ®½ºÀ§Ä¡ÀÇ ÀÔ·ÂÀ» PC¿¡ Ç¥½ÃÇÑ´Ù. |
|||||
ÇнÀÁÖÁ¦ |
|||||
Åë½Å ÇÁ·ÎÅäÄÝ ÀÎÅÍ·´Æ®°¡ ó¸® µÉ ¶§ ¸¶´Ù ¸Þ½ÃÁö¸¦ ¹ß»ýÇϰí ÀÌ ¶§ ÀÔ·ÂÆ÷Æ®(DÆ÷Æ®)ÀÇ »óŸ¦ PC·Î º¸³½´Ù. ±×¸²¿¡¼ ȸÀü ¹æÇâ°ú ¼Óµµ¸¦ Á¦¾îÇÏ°í ¸®¹ÌÆ® ½ºÀ§Ä¡ÀÇ µ¿ÀÛÀ» ¾Ë¼ö°¡ ÀÖ´Ù. PCÇÁ·Î±×·¥Àº ¡°DC¸ðÅÍÁ¦¾î¡±ÀÇ ÇÁ·Î±×·¥À» ÀÌ¾î¼ ¸¸µé¾î º»´Ù. |
|
||||
¿¹½À³»¿ë |
|||||
½½¶óÀ̵尡 ÀÚµ¿À¸·Î ¿Õº¹¿îµ¿ÇÏ´Â AVR ÇÁ·Î±×·¥À» ¸¸µç´Ù. |
|||||
|
º¸±â1 ½½¶óÀ̵å ÀÚµ¿ ¿Õº¹ ¿îµ¿ ÇÁ·Î±×·¥ [Àüü ÇÁ·Î±×·¥ º¸±â] [¼Ò½º ÇÁ·Î±×·¥ ³»·Á¹Þ±â] ½½¶óÀÌµå ¾ç´ÜÀÇ ¸®¹ÌÆ® ½ºÀ§Ä¡¸¦ AVRÀÇ ÀÎÅÍ·´Æ®¿Í ¿¬°áÇÏ¿© ÀÚµ¿À¸·Î ¿Õº¹ ¿îµ¿ÇÏ°Ô ÇÑ´Ù. |
|
|||
|
// External Interrupt 0 service routine interrupt [EXT_INT0] void ext_int0_isr(void) { // Place your code here PORTB=0x12; } // External Interrupt 1 service routine interrupt [EXT_INT1] void ext_int1_isr(void) { // Place your code here PORTB=0x11; } |
|
|||
|
|||||
½Ç½À¹æ¹ý |
|||||
¸ñ Â÷ |
|||||
1. ½Ã½ºÅÛ ¼³°è½½¶óÀ̵忡 ÀÖ´Â ¸®¹ÌÆ® ½ºÀ§Ä¡¿Í ½½¶óÀÌµå ¸ðÅ͸¦ ¾Æ·¡¿Í °°ÀÌ ¿¬°áÇÑ´Ù. 2. AVR ÇÁ·Î±×·¥ (ÀÎÅÍ·´Æ®&¸Þ½ÃÁö ó¸®) |
|||||
|
º¸±â2 ½½¶óÀ̵å ÀÚµ¿ ¿Õº¹ ¿îµ¿ ÇÁ·Î±×·¥ [AVRÇÁ·Î±×·¥ º¸±â] [¼Ò½º ÇÁ·Î±×·¥ ³»·Á¹Þ±â] ÀÎÅÍ·´Æ®¿¡¼´Â ¸Þ½ÃÁö(mode)¸¦ ¹ß»ýÇϰí main()¾È while¹® ¾È¿¡¼ ¸Þ½ÃÁö¸¦ ó¸®ÇÑ´Ù. ÀÌ·¸°Ô Çϸé ÀÎÅÍ·´Æ®¿¡ ÀÇÇØ ÇÁ·Î±×·¥ÀÇ ·ÎÁ÷ÀÌ ±úÁö´Â °ÍÀ» ÃÖ¼ÒÈ ÇÒ ¼ö ÀÖ´Ù. |
|
|||
|
char mode=0x00; // External Interrupt 0 service routine interrupt [EXT_INT0] void ext_int0_isr(void) { // Place your code here mode=0x01; } // External Interrupt 1 service routine interrupt [EXT_INT1] void ext_int1_isr(void) { // Place your code here mode=0x02; } ================================= ¡¦¡¦..(»ý·«) while (1) { // Place your code here if(mode == 0x01) { PORTB=0x12; putchar(0x02); putchar(0x01); putchar(0x03); mode=0x00; } else if(mode == 0x02) { PORTB=0x11; putchar(0x02); putchar(0x02); putchar(0x03); mode=0x00; } else { putchar(0x02); putchar(0x00); putchar(0x03); } delay_ms(100); }; |
|
|||
|
PC ÇÁ·Î±×·¥ [¼Ò½º ÇÁ·Î±×·¥ ³»·Á¹Þ±â]¸®¹ÌÆ® ½ºÀ§Ä¡ÀÇÇ¥½Ã´Â AVR(ÀÔÃâ·ÂÁ¦¾î)ÀÇ ÇÁ·Î±×·¥À» ±×´ë·Î »ç¿ëÇÑ´Ù. |
|
|||
3. AVR ÇÁ·Î±×·¥ (ÀÎÅÍ·´Æ®Ã³¸® ¾ÊÇÔ)ÀÎÅÍ·´Æ® 󸮸¦ ÇÏ¸é ¸®¹ÌÆ® ½ºÀ§Ä¡°¡ OnÀÌ µÉ ¶§´Â °¨Áö°¡ µÇ³ª Off°¡ µÇ´Â ¼ø°£Àº ¸Þ½ÃÁö 󸮰¡ µÇÁö¸¦ ¾Ê´Â´Ù. ±×·¯¹Ç·Î ÀÎÅÍ·´Æ®¸¦ »ç¿ëÇÏÁö ¾Ê°í ¸ÞÀÎ ÇÔ¼ö¿¡¼ ÀÔ·ÂÆ÷Æ®¸¦ °¨½ÃÇϰí ÀÖ´Ù°¡ »óŰ¡ º¯ÇÏ¸é ¸Þ½ÃÁö¸¦ ó¸®ÇÏ´Â ÇÁ·Î±×·¥À» ¸¸µé¾î º»´Ù. ÀÌ °æ¿ì¿¡´Â CPU¿¡ ·Îµå°¡ ¸¹ÀÌ °É¸®¹Ç·Î main¿¡¼ 󸮵Ǵ »óȲÀÌ ¸¹À¸¸é ½Ã°£ Áö¿¬ÀÌ »ý±æ ¼ö ÀÖ´Ù. ½½¶óÀ̵尡 ³¡±îÁö µ¿ÀÛÇÏ°í ¸®¹ÌÆ® ½ºÀ§Ä¡°¡ OnÀÌ ‰çÀ» ¶§ ¸ðÅÍ¿¡ Àü·ù°¡ °è¼Ó È帣°Ô µÇ¸é ¸ðÅÍ¿¡ ¹«¸®°¡ ¹ß»ýÇÔÀ¸·Î ¸ðÅÍÀÇ Àü¿øÀ» Â÷´ÜÇÏ°Ô ÇÏ¿´´Ù. |
|||||
|
º¸±â3 ½½¶óÀ̵å Á¦¾î ÇÁ·Î±×·¥ [¼Ò½º ÇÁ·Î±×·¥ ³»·Á¹Þ±â] |
|
|||
|
#include <mega128.h>
// ¡¦.. ÇÁ·Î±×·¥ »ý·«char receive=0,
|
|
|||
|
PC ÇÁ·Î±×·¥ [¼Ò½º ÇÁ·Î±×·¥ ³»·Á¹Þ±â][DC¸ðÅÍÁ¦¾î] ÇÁ·Î±×·¥¿¡ [ÀÔÃâ·Â Á¦¾î]ÀÇ Led Ç¥½Ã ºÎºÎÀ» ÷°¡ ÇÏ¿´´Ù. |
|
|||
|
|||||
°ú Á¦ |
|||||
|
|||||