¸¶ÇÏÀüÀÚ±â¼ú¿¬±¸¼Ò LOGO

Á¦Ç°°Ë»ö °í°´¼¾ÅÍ053-604-2355
±â¼úÀÚ·á½Ç

Home > ±â¼úÀÚ·á½Ç ±â¼úÀÚ·á½Ç

Á¦ ¸ñ 5. ŸÀÌ¸Ó 1ÀÇ »ç¿ë¹ý
÷ºÎÆÄÀÏ


PIC16F87xÀÇ Å¸ÀÌ¸Ó 1ÀÇ »ç¿ë¹ý

¡¼°³¿ä¡½

PIC16F877ÀÇ Å¸ÀÌ¸Ó 1ÀÇ »ç¿ë¹ýÀÇ ¼³¸íÀÔ´Ï´Ù. 32.768 kHzÀÇ ¼öÁ¤Áøµ¿ÀÚ¸¦
»ç¿ëÇÑ ¿ÜºÎ ¹ßÁø ȸ·Î ¸ðµå¿¡¼­ÀÇ »ç¿ë¹ýÀ» ¿¹¿¡, CCS»çÀÇ CÄÄÆÄÀÏ·¯·Î
¿òÁ÷ÀÌ´Â ¹æ¹ýÀÔ´Ï´Ù.
CCS»ç CÄÄÆÄÀÏ·¯ÀÇ Çì´õ ÆÄÀÏ¿¡ À߸øÀÌ ÀÖ¾î,»õÄ¡±â°¡ µé¾î°¡Áö ¾Ê´Â´Ù
ÀǸ¦ ¼öÁ¤Çß½À´Ï´Ù.

¡¼Å¸ÀÌ¸Ó 1ÀÇ ±â´É¡½

¡¡Å¸ÀÌ¸Ó 1Àº, Á¶±Ý °í±â´ÉÀÇ ¹Ôµå·»Áö½Ã¸®ÁîÀÇ PIC¿¡ ³»ÀåµÇ°í ÀÖ´Ù
±â´ÉÀ¸·Î, ŸÀÌ¸Ó 0À¸·Î °°Àº ±â´ÉÀ» °¡Áö°í ÀÖ½À´Ï´Ù¸¸, Å« Ư¡Àº Ä«¿îÅÍ°¡
16ºñÆ® Ä«¿îÅÍ°¡ µÇ°í ÀÖ´Â °÷(Áß)ÀÔ´Ï´Ù.
¡¡¶Ç, ŸÀÌ¸Ó 1Àº ´Üµ¶ÀÇ »ç¿ë¹ý ÀÌ¿Ü¿¡, capther ±â´ÉÀ̳ª ÄÞÆÛ·¹ÀÌÅÍ ±â´É
(¿Í)°ú Æí¼ºÇÏ´Â °ÍÀ¸·Î, ½Ã°£ ÃøÁ¤À̳ª, ÇÁ·Î±×·¥¿¡ ¿µÇâÀ» ¹ÞÁö ¾Ê´Â ÀÏÁ¤ÇÑ ÀÎÅÍ
¹ßÀÇ ¹Ýº¹ µî, ÇÑÃþ ´õ °í±â´ÉÀÇ »ç¿ë¹ýÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù.

½ÇÁ¦ÀÇ Å¸ÀÌ¸Ó 1ÀÇ ³»ºÎ ±¸¼ºÀº ¹Ø±×¸²°ú °°ÀÌ µÇ¾î ÀÖ½À´Ï´Ù.
ÀÌ Å¸ÀÌ¸Ó 1ÀÇ µ¿ÀÛÀ» °áÁ¤ÇÏ´Â °ÍÀº, ŸÀÌ¸Ó 1 Àü¿ëÀÇ Á¦¾î¿ë ·¹Áö½ºÅÍÀÌ´Ù
T1CON ·¹Áö½ºÅÍ·Î ½Ç½ÃÇÕ´Ï´Ù.
¡¡Å¸ÀÌ¸Ó 1ÀÇ µ¿ÀÛÀº, ÀÔ·ÂÀº ¿ÜºÎ ÀÔ·Â, ³»Àå ½Ã°è, Àü¿ë ¹ßÁø ȸ·ÎÀÇ 3°³ÀÇ
¾ÈÀÇ ¾î´ÀÂÊÀ̵çÀ» º¯È¯À̶ó°í »ç¿ëÇÕ´Ï´Ù.
³»Àå ½Ã°è¶§´Â Ŭ¶ôÀÇ °Í1/4ÀÇ ÁÖÆļö°¡ µÇ°í ÀÖ½À´Ï´Ù.
±×¸®°í ±× ÈÄ¿¡ Àü¿ëÀÇ 3ºñÆ®ÀÇ ÇÁ¸®½ºÄÉÀÌ¶ó¸¦ ÅëÇÑ µÚ, ³»Àå ½Ã°è¿ÍÀÇ
µ¿±â ȸ·Î¸¦ ÅëÇØ, 16ºñÆ®ÀÇ TMR1 ·¹Áö½ºÅÍ·Î Ä«¿îÆ® ÇÕ´Ï´Ù.
TMR1 ·¹Áö½ºÅÍ´Â 8ºñÆ®¾¿ÀÇ TMR1H¿Í TMR1LÀÇ 2°³ÀÇ ·¹Áö½ºÅÍ°¡ µÇ°í ÀÖ¾î,
ÇÁ·Î±×·¥À¸·Î ÀÐ°í ¾²±â¸¦ ÀÚÀ¯·Ó°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. TMR1µµ Ä«¿îÆ®°¡ ¿À¹öÇ÷οì
ÇßÀ» ¶§ TMR1IF Ç÷¡±×°¡ On°¡ µÇ¾î »õÄ¡±â¸¦ ¹ß»ýÇÕ´Ï´Ù.





¡¼·¹Áö½ºÅÍÀÇ »ó¼¼ ³»¿ë¡½

¡¡Å¸ÀÌ¸Ó 1ÀÇ ³»ºÎÀÇ ¼³Á¤ ÀüȯÀº T1CON ·¹Áö½ºÅÍ·Î ¼³Á¤ÇÏ´Â °ÍÀ¸·Î °¡´ÉÇØÁý´Ï´Ù
ÇÏÁö¸¸, ÀÌ T1CON ·¹Áö½ºÅÍÀÇ ÀÚ¼¼ÇÑ °ÍÀº ¹Ø±×¸²°ú °°ÀÌ µÇ¾î ÀÖ½À´Ï´Ù.




ŸÀÌ¸Ó 1ÀÇ µ¿ÀÛÀ¸·Î¼­´Â, ŸÀÌ¸Ó 0À¸·Î °°Àº ³»Àå ½Ã°èÀΰ¡, Àü¿ë ¹ßÁø ȸ·Î¿¡ ÀÇÇÑ´Ù
ŸÀÌ¸Ó ¸ðµå¿Í ¿ÜºÎ ÀԷ¿¡ ÀÇÇÑ Ä«¿îÅÍ ¸ðµåÀÇ 3 Á¾·ù°¡ ÀÖ½À´Ï´Ù.
±× ÁöÁ¤ ¹æ¹ýÀº T1CON ·¹Áö½ºÅÍ Áß(¾È)¿¡¼­ ¾Æ·¡ Ç¥¿Í °°ÀÌ ÇØ ½Ç½ÃÇÕ´Ï´Ù.

ÀÔ·Â Á¾º°

T1OSCEN

TMR1CS

£ÞT1SYNC

³»Àå ½Ã°è

0

0

0

Àü¿ë ¹ßÁø ȸ·Î

1

1

0

¿ÜºÎ ÀÔ·Â(ºñµ¿±â)

0

1

1

¿ÜºÎ ÀÔ·Â(µ¿±â)

0

1

0



¨ç ¿ÜºÎ ÀÔ·Â Ä«¿îÅÍ ¸ðµå
¡¡¡¡Ä«¿îÅÍ ¸ðµå¶§·Î´Â, ³»Àå ½Ã°è¿¡ µ¿±â¸¦ ÀâÀ» ¼ö°¡ ÀÖ°Ô µÇ¾î
¡¡¡¡³»·Á ÀÌ µ¿±â¸¦ Àâ¾Æ µÎ¸é(ÀÚ), TMR1ÀÇ Àбâ ÇÑÁß°£¿¡ Ä«¿îÅÍ°¡ Ä«¿îÆ®
¡¡¡¡¾÷ µ¿ÀÛÀ» ÇÏ´Â °ÍÀ» ÇÇÇÒ ¼ö ÀÖ±â (À§ÇØ)¶§¹®¿¡ Á¤È®ÇÑ °ªÀ» Àо´Â °ÍÀÌ °¡´ÉÇØÁ®
¡¡¡¡.
¡¡¡¡º¸ÅëÀº µ¿±â ½ÃÅ°µµ·Ï(µíÀÌ) ÇÕ´Ï´Ù¸¸, ¹Ý´ë·Î, Ŭ¶ôº¸´Ù ³ôÀº ÁÖÆļö¶§¿¡´Â
¡¡¡¡µ¿±â°¡ Á¤È®ÇÏ°Ô´Â ÀâÈ÷Áö ¾Ê°Ô µÇ±â ¶§¹®¿¡, ±×·¯ÇÑ °æ¿ì¿¡´Â µ¿±â¸¦ ÇÏÁö ¾Ê°Ô
¡¡¡¡(À¸)·Î Çϸé, ¿ÜºÎ ÀÔ·Â ½ÅÈ£°¡ ±×´ë·Î Ä«¿îÅÍÀÇ ÀÔ·ÂÀÌ µË´Ï´Ù.

¡¡¡¡Å¸ÀÌ¸Ó 1Àº 16ºñÆ® Ä«¿îÅÍÀ̱â (À§ÇØ)¶§¹®¿¡, Ä«¿îÆ® ½ÃÅ°¸é¼­ Ä«¿îÅÍÄ¡¸¦ Àоî
¡¡¡¡ºÕºñ´Âµ¥´Â, TMR1H¿Í TMR1L¸¦ 2ȸ·Î ³ª´©¾î ÀоîµéÀÌ´Â µ¿ÀÛÀÌ ÇÊ¿äÇÕ´Ï´Ù.
¡¡¡¡ÀÌ·¸°Ô Çϸé(ÀÚ) ¹®Á¦°¡ ÀϾ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù. Áï Àоîµé¿© ¾È¿¡ Ä«¿îÆ®¾÷ µ¿ÀÛ
¡¡¡¡(À»)¸¦ ÇØ ¹ö¸®´Â °ÍÀÌ ÀÖÀ» ¼ö ÀÖ´ÂÀ¸·ÎºÎÅÍÀÔ´Ï´Ù.
¡¡¡¡ÀÌ°ÍÀ» ÇÇÇϱâ (À§ÇØ)¶§¹®¿¡ ´ÙÀ½°ú °°Àº ¼ø¼­¸¦ ¹â¾Æ ÀоîµéÀÏ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

¡¡¡¡¡¡¿ì¼± »óÀ§ÀÇ TMR1H¸¦ Àоîµé¿© ·¹Áö½ºÅÍ¿¡ º¸Á¸ÇÕ´Ï´Ù.
¡¡¡¡¡¡´ÙÀ½¿¡ ÇÏÀ§ÀÇ TMR1L¸¦ Àоîµé¿© º¸Á¸ÇÕ´Ï´Ù.
¡¡¡¡¡¡±×¸®°í Çѹø ´õ »óÀ§¸¦ Àоîµé¿© ÀüÀÇ °Í°ú °°ÀºÁö ¾î¶²Áö¸¦ È®ÀÎÇÕ´Ï´Ù.
¡¡¡¡¡¡°°°í Á¤»óÀûÀ̾ ¿Ï·áÀÔ´Ï´Ù¸¸, Â÷ÀÌ°¡ ³µÀ» ¶§¿¡´Â, ÀçÂ÷ Àб⸦ ÇØ ´õ
¡¡¡¡¡¡ÇÕ´Ï´Ù.

¨è ³»Àå ½Ã°è ¸ðµå
¡¡¡¡Å¸ÀÌ¸Ó 1Àº ÇÁ¸®½ºÄÉÀÌ¶óµµ ¸ÂÃ߸é(ÀÚ) ÀüºÎ 19ºñÆ®ÀÇ Ä«¿îÅÍ°¡ µÇ±â ¶§¹®¿¡,
¡¡¡¡³»Àå ½Ã°è°¡ 20 MHz¶§¶óµµ, ÃÖÀå ¾à 105 msec¶ó°í ÇÏ´Â ±ä ÀÎÅ͹ú ŸÀ̸Ó
¡¡¡¡(À»)¸¦ ¸¸µé ¼ö°¡ ÀÖ½À´Ï´Ù.

¨é Àü¿ë ¹ßÁø ȸ·Î ¸ðµå
¡¡¡¡Å¸ÀÌ¸Ó 1¿¡ ºÙ¾î ÀÖ´Â Àü¿ë ¹ßÁø ȸ·Î´Â, ½Ã½ºÅÛ Å¬·Ï ¹ßÁø ȸ·ÎÀÇ LP¸ðµå¿Í
¡¡¡¡°°Àº ȸ·Î°¡ µÇ¾î ÀÖ¾î, ÃÖ°í 200 kHz±îÁöÀÇ Å©¸®½ºÅ» ¹ßÁø ȸ·Î¿ëÀÌ µÇ°í ÀÖ½À´Ï´Ù.
¡¡¡¡ÀÌ°ÍÀº, ½Ã°è¿ëÀÇ 32 kHzÀÇ Å©¸®½ºÅ» ¹ßÁø ȸ·Î¸¦ »óÁ¤ÇÑ °ÍÀ¸·Î, ½ÇÁ¦ÀÇ ¿¹·Î¼­
¡¡¡¡32.768 kHzÀÇ Å©¸®½ºÅ»À» »ç¿ëÇßÀ» ¶§ÀÇ, ŸÀÌ¸Ó 1¿¡ ¼¼Æ® ÇÏ´Â °ª°ú ¿À¹öÇ÷οì
¡¡¡¡»õÄ¡±â ¹ß»ý±îÁöÀÇ ½Ã°£À» À϶÷Ç¥·Î Çϸé(ÀÚ) ¾Æ·¡ Ç¥¿Í °°ÀÌ µÇ¾î, Ãë±ÞÇϱ⠽¬¿î °ªÀÇ
¡¡¡¡ÀÎÅ͹úÀ» ÇÒ ¼ö ÀÖ°Ô µÇ¾î ÀÖ½À´Ï´Ù.
¡¡¡¡´Ü, ÀÌ ¶§ÀÇ ÇÁ¸®½ºÄÉÀ̶óÀÇ °ªÀº 1À¸·Î, TMR1L´Â 0ÀΠäÀÔ´Ï´Ù.

TMR1ÀÇ °ª

¿À¹öÇ÷οì±îÁöÀÇ ½Ã°£

8000H

1sec

C000H

0.5sec

E000H

0.25sec

F000H

0.125sec


¡¼C¾ð¾î¿¡ ÀÇÇÑ »ç¿ë¹ý¡½

CCS CÄÄÆÄÀÏ·¯·Î ŸÀÌ¸Ó 1À» »ç¿ëÇϱâ À§Çؼ­(¶§¹®¿¡)´Â, Àü¿ëÀÇ Æí¼º ÇÔ¼ö¸¦ »ç¿ëÇÕ´Ï´Ù.
ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î, »õÄ¡±âµµ ¿ëÀÌÇÏ°Ô Ãë±ÞÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ŸÀÌ¸Ó 1¿ëÀÇ Æí¼º ÇÔ¼ö
(À¸)·Î¼­´Â ¾Æ·¡ Ç¥°¡ ÁغñµÇ¾î ÀÖ½À´Ï´Ù

Æí¼º ÇÔ¼ö ¼­½Ä

³»¿ë

SETUP_TIMER_1(mode) ŸÀÌ¸Ó 1ÀÇ Ãʱ⼳Á¤À» ½Ç½ÃÇÑ´Ù.
º¹¼öÀÇ ¼³Á¤Àº OR·Î ½Ç½ÃÇÑ´Ù.

modeÀÇ °ªÀº ¾Æ·¡¿Í °°À̸¦ »ç¿ëÇÑ´Ù.
¡¡T1_DISABLED¡¡Å¸ÀÌ¸Ó 1À» »ç¿ëÇÏÁö ¾Ê´Â´Ù
¡¡T1_INTERNAL¡¡³»Àå ½Ã°è ¸ðµå ÁöÁ¤
¡¡T1_EXTERNAL¡¡¿ÜºÎ ÀÔ·Â, ºñµ¿±â ¸ðµå ÁöÁ¤
¡¡T1_EXTERNAL_SYNC¡¡¿ÜºÎ ÀÔ·Â µ¿±â ¸ðµå ÁöÁ¤
¡¡T1_CLK_OUT¡¡³»Àå ¹ßÁø ȸ·Î¸¦ »ç¿ëÇÏ´Â ÁöÁ¤
¡¡T1_DIV_BY_1¡¡ÇÁ¸®½ºÄÉÀ̸£Ä¡ 1
¡¡T1_DIV_BY_2¡¡¡¡¡¨¡¡¡¡¡¡¡¡¡¡2
¡¡T1_DIV? BY_4¡¡¡¡¡¨¡¡¡¡¡¡¡¡¡¡4
¡¡T1_DIV_BY_8¡¡¡¡¡¨¡¡¡¡¡¡¡¡¡¡8

¿¹ setup_timer_1(T1_DISABLED);
¡¡¡¡ setup_timer_1(T1_INTERNAL | T1_DIV_BY_4);
¡¡¡¡setup_timer_1(T1_INTERNAL | T1_DIV_BY_8)
GET_TIMER1( ) ÇöÀçÀÇ TMR1ÀÇ ³»¿ëÀ» µ¹·ÁÁØ´Ù.
16ºñÆ®À̹ǷΠlong º¯¼ö·Î Ãë±ÞÇÒ ÇÊ¿ä°¡ ÀÖ´Ù.

¿¹ while (get_timer1( ) ! = 0)¡¡
SET_TIMER1(value) TMR1 ·¹Áö½ºÅÍ¿¡ valueÀÇ °ªÀ» ¼¼Æ® ÇÑ´Ù

¿¹ if(get_timer1( )=1000)
set_timer1(0);

¡¼Çì´õ ÆÄÀÏÀÇ ¼öÁ¤¡½

CCS»ç CÄÄÆÄÀÏ·¯ÀÇ PIC16F87x¿ëÀÇ Çì´õ ÆÄÀÏ¿¡ À߸øÀÌ ÀÖ¾î, ÁÖº¯ »õÄ¡±âÀÇ
Çã°¡°¡ µÇÁö ¾Ê°í, ŸÀÌ¸Ó 1ÀÇ »õÄ¡±â¸¦ ¹Þ¾ÆµéÀÏ ¼ö ¾ø½À´Ï´Ù.
°Å±â¼­ ¾Æ·¡¿Í °°ÀÌ ºÎºÐÀ» ¼öÁ¤ÇÕ´Ï´Ù.

¡ì¿À¸®Áö³¯¡í(À߸øµÇ¾î ÀÖ´Ù)
#undef GLOBAL
#define¡¡GLOBAL¡¡¡¡¡¡¡¡¡¡¡¡0x0B80¡¡¡¡// Used for ENABLE/DISABLE INTERRUPTS
#define¡¡INT_EEPROM¡¡¡¡¡¡0x0B40¡¡¡¡// Used for ENABLE/DISABLE INTERRUPTS

¡ì¼öÁ¤ ÈÄ¡í
(2Çà »èÁ¦)
#define¡¡INT_EEPROM¡¡¡¡¡¡0x8D10¡¡¡¡// Used for ENABLE/DISABLE INTERRUPTS


¡¼ÇÁ·Î±×·¥¿¹¡½

½ÇÁ¦·Î ŸÀÌ¸Ó 1À» »ç¿ëÇÑ ÇÁ·Î±×·¥¿¹¸¦ ¼Ò°³ÇÕ´Ï´Ù.
¾Æ·¡¿Í °°À̴ ŸÀÌ¸Ó 1À» ¿ÜºÎ ¹ßÁø ȸ·Î·Î µ¿ÀÛ½ÃÄÑ, 1ÃÊ ¸¶´Ù ¹ß±¤ ´ÙÀÌ¿Àµå¸¦ Á¡¸ê½ÃŲ´Ù
ÇÁ·Î±×·¥ÀÔ´Ï´Ù.
main Áß(¾È)¿¡¼­ µ¿½Ã¿¡ ÇÁ·Î±×·¥ ŸÀ̸ÓÀÇ delay_msÇÔ¼ö¸¦ »ç¿ëÇØ, ¿ª½Ã 1ÃÊ Áֱ⿡
´Ù¸¥ ¹ß±¤ ´ÙÀÌ¿ÀµåÀÇ Á¡¸êµµ ÇÏ°í ÀÖ½À´Ï´Ù.

ÀÌ ¶§ÀÇ È¸·Îµµ´Â ¹Ø±×¸²°ú °°ÀÌ µÇ¾î ÀÖ½À´Ï´Ù.





¡ìÇÁ·Î±×·¥ ¸®½ºÆ®¡í¡¡¾Æ·¡¿Í °°ÀÌ¿¡´Â ÇÑÀÚ ½ºÆäÀ̽º¸¦ Æ÷ÇÔÇÏ°í ÀÖ½À´Ï´Ù.
¡¡
//////////////////////////////////////////////
//¡¡Timer1 of 16F877 test program.
//¡¡Use 32.768kHz crystal and set 1sec period.
//¡¡Each interval interrupt, LED is controled.
//////////////////////////////////////////////
#include¡¡<16f877.h>
#use delay(CLOCK=10000000)¡¡¡¡¡¡¡¡¡¡//10MHz

#int_timer1
intval() {
¡¡int¡¡flag1;
¡¡set_timer1(0x8000);¡¡¡¡¡¡¡¡¡¡¡¡¡¡//1sec
¡¡if(flag1 == 0) {
¡¡¡¡ output_high(PIN_B7);¡¡¡¡¡¡¡¡¡¡//LED off
¡¡¡¡ flag1 = 1;
¡¡}
¡¡else {
¡¡¡¡ output_low(PIN_B7);¡¡¡¡¡¡¡¡¡¡//LED on
¡¡¡¡ flag1 = 0;
¡¡}
}

main() {
¡¡int¡¡flag;
¡¡set_tris_b(0);¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡//all output
¡¡output_high(PIN_B7);¡¡¡¡¡¡¡¡¡¡¡¡//LED off

¡¡setup_timer_1(T1_EXTERNAL_SYNC | T1_CLK_OUT | T1_DIV_BY_1);
¡¡set_timer1(0x8000);¡¡¡¡¡¡¡¡¡¡¡¡//initial set
¡¡enable_interrupts(INT_TIMER1);
¡¡enable_interrupts(GLOBAL);

¡¡while(1) {
¡¡¡¡ if(flag == 0) {¡¡¡¡¡¡¡¡¡¡¡¡¡¡//key input
¡¡¡¡¡¡¡¡output_high(PIN_B6);¡¡¡¡¡¡//LED2 on
¡¡¡¡¡¡¡¡flag = 1;
¡¡¡¡ }
¡¡¡¡ else {
¡¡¡¡¡¡¡¡output_low(PIN_B6);¡¡¡¡¡¡¡¡//LED2 off
¡¡¡¡¡¡¡¡flag = 0;
¡¡¡¡ }
¡¡¡¡ delay_ms(1000);
¡¡}
}

¸ñ·Ïº¸±â

www.1chip.com, www.1chip.co.kr
www.micom114.com
ÀÚ·á½Ç¹Ù·Î°¡±â

´ë±¸±¤¿ª½Ã ºÏ±¸ »ê°Ý2µ¿ 1629 »ê¾÷¿ëÀç°ü 10µ¿ 13È£ (2Ãþ) / Tel. 053-604-2355 / Fax. 053-383-2354 / E-mail. maha@paran.com