Page 41 - ipst-actuatorlab
P. 41
¤ÁÙ Í× ¡Ò÷´Åͧ¢ºÑ âËÅ´¡ÃÐáÊʧ٠¢Í§ª´Ø ¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX l 41
º··Õè 3
¡ÒÃ㪧 Ò¹ä·àÁÍâ ͧ
äÁâ¤Ã¤Í¹â·ÃÅàÅÍÃã¹
¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX
ä·àÁÍà (timer) ËÃÍ× µÇÑ ¹ºÑ àÇÅÒ໹ ÊÇ ¹»ÃСͺ·ÊèÕ Òí ¤Ñ ÁÒ¡ã¹ÃкºäÁâ¤Ã¤Í¹â·ÃÅàÅÍÃ
à¹Í×è §¨Ò¡¡Ò÷Òí §Ò¹·§éÑ ËÁ´¨ÐµÍ §ÊÁÑ ¾¹Ñ ¸¡ ºÑ ¨§Ñ ËÇÐàÇÅÒ ã¹º·¹¹Õé Òí àʹͶ§Ö ¡ÒùÒí ä·àÁÍÃË ÃÍ× µÇÑ
¹ÑºàÇÅÒ¹ÕéÁÒãªã¹¡ÒèѺàÇÅÒáÅСÒÃ˹ǧàÇÅÒ
3.1 ä¿Åä źÃÒÃÕ timer.h
¡ÒÃ㪧 Ò¹ä·àÁÍô Ç ÂÇ¸Ô ¡Õ ÒÃà¢ÂÕ ¹â»Ãá¡ÃÁµÒÁ»¡µÔ ÍÒ¨Á¤Õ ÇÒÁ«ºÑ «Í ¹¾ÍÊÁ¤ÇÃÊÒí ËúÑ
¼àÙ ÃÁèÔ µ¹ à¹Íè× §¨Ò¡µÍ §·Òí ¤ÇÒÁà¢Ò 㨡ºÑ Ã¨Õ ÊÔ àµÍ÷ àèÕ ¡ÂèÕ Ç¢Í § ¤ÇÒÁ¶ÊèÕ Ñ Ò³¹ÒÌ¡ Ò µÇÑ ËÒäÇÒÁ¶ËÕè ÃÍ×
·àèÕ ÃÂÕ ¡ÇÒ »ÃÊÕ à¡ÅàÅÍà ÃÇÁ·§Ñé µÍ §·ÃÒº¶§Ö ¡Ãкǹ¡ÒÃ㹡Ò÷Òí §Ò¹ã¹ÀÒ¾ÃÇÁ´Ç  «§Öè Ëҡʹã¨
¨Ã§Ô æ ÊÒÁÒö´äÙ ´¨ Ò¡´ÒµÒ ªµÕ ©ººÑ ÊÁºÃÙ ³¢ ͧäÁâ¤Ã¤Í¹â·ÃÅàÅÍÃà ºÍù ¹Ñé æ
㹡Òþ²Ñ ¹Òâ»Ãá¡ÃÁÀÒÉÒ C à¾Íè× ãª§ Ò¹ä·àÁÍÃã ¹äÁâ¤Ã¤Í¹â·ÃÅàÅÍà ATmega16 «§èÖ
໹ äÁâ¤Ã¤Í¹â·ÃÅàÅÍÃË Å¡Ñ ¢Í§ª´Ø ¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX ¨Ðä´Ã ºÑ ¤ÇÒÁÊдǡà¾ÁÔè ÁÒ¡
¢¹éÖ àÁÍ×è ãªä ¿Åä źÃÒÃÕ timer.h â´Âã¹äźÃÒÃÕ timer.h Á¤Õ Òí ʧèÑ ·ãÕè ªã ¹¡Òè´Ñ ¡ÒÃàÃÍè× §àÇÅÒ´§Ñ ¹éÕ
timer_start 㪡 Òí ˹´¨´Ø àÃÁÔè µ¹ 㹡ÒùºÑ àÇÅҢͧä·àÁÍà (¤Ò àÇÅÒ¶¡Ù à¤ÅÂÕ Ã)
timer_stop 㪻 ´ ¡ÒùºÑ àÇÅҢͧä·àÁÍà (¤Ò àÇÅÒ¶¡Ù à¤ÅÂÕ Ã)
timer_pause ãªË 嫯 ¡ÒùºÑ àÇÅҢͧä·àÁÍê ÇÑè ¢³Ð (¤Ò àÇÅÒäÁ¶ ¡Ù à¤ÅÂÕ Ã)
timer_resume 㪹Ѻ¤ÒàÇÅҵͧ͢ä·àÁÍà ËÅѧ¨Ò¡ËÂØ´¡ÒùѺàÇÅÒªèÑÇ¢³Ð¨Ò¡¿§¡ªÑè¹
timer_pause (¤Ò àÇÅÒ¶¡Ù ¹ºÑ µÍ â´Âà¾ÁÔè ¤Ò ¨Ò¡à´ÁÔ )
msec ãªÍ Ò ¹¤Ò àÇÅÒ·¹èÕ ºÑ ä´ã ¹Ë¹Ç ÂÁÅÔ ÅÇÔ ¹Ô Ò·Õ
sec ãªÍ Ò ¹¤Ò àÇÅÒ·¹Õè ºÑ ä´ã ¹Ë¹Ç ÂÇ¹Ô Ò·Õ
º··Õè 3
¡ÒÃ㪧 Ò¹ä·àÁÍâ ͧ
äÁâ¤Ã¤Í¹â·ÃÅàÅÍÃã¹
¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX
ä·àÁÍà (timer) ËÃÍ× µÇÑ ¹ºÑ àÇÅÒ໹ ÊÇ ¹»ÃСͺ·ÊèÕ Òí ¤Ñ ÁÒ¡ã¹ÃкºäÁâ¤Ã¤Í¹â·ÃÅàÅÍÃ
à¹Í×è §¨Ò¡¡Ò÷Òí §Ò¹·§éÑ ËÁ´¨ÐµÍ §ÊÁÑ ¾¹Ñ ¸¡ ºÑ ¨§Ñ ËÇÐàÇÅÒ ã¹º·¹¹Õé Òí àʹͶ§Ö ¡ÒùÒí ä·àÁÍÃË ÃÍ× µÇÑ
¹ÑºàÇÅÒ¹ÕéÁÒãªã¹¡ÒèѺàÇÅÒáÅСÒÃ˹ǧàÇÅÒ
3.1 ä¿Åä źÃÒÃÕ timer.h
¡ÒÃ㪧 Ò¹ä·àÁÍô Ç ÂÇ¸Ô ¡Õ ÒÃà¢ÂÕ ¹â»Ãá¡ÃÁµÒÁ»¡µÔ ÍÒ¨Á¤Õ ÇÒÁ«ºÑ «Í ¹¾ÍÊÁ¤ÇÃÊÒí ËúÑ
¼àÙ ÃÁèÔ µ¹ à¹Íè× §¨Ò¡µÍ §·Òí ¤ÇÒÁà¢Ò 㨡ºÑ Ã¨Õ ÊÔ àµÍ÷ àèÕ ¡ÂèÕ Ç¢Í § ¤ÇÒÁ¶ÊèÕ Ñ Ò³¹ÒÌ¡ Ò µÇÑ ËÒäÇÒÁ¶ËÕè ÃÍ×
·àèÕ ÃÂÕ ¡ÇÒ »ÃÊÕ à¡ÅàÅÍà ÃÇÁ·§Ñé µÍ §·ÃÒº¶§Ö ¡Ãкǹ¡ÒÃ㹡Ò÷Òí §Ò¹ã¹ÀÒ¾ÃÇÁ´Ç  «§Öè Ëҡʹã¨
¨Ã§Ô æ ÊÒÁÒö´äÙ ´¨ Ò¡´ÒµÒ ªµÕ ©ººÑ ÊÁºÃÙ ³¢ ͧäÁâ¤Ã¤Í¹â·ÃÅàÅÍÃà ºÍù ¹Ñé æ
㹡Òþ²Ñ ¹Òâ»Ãá¡ÃÁÀÒÉÒ C à¾Íè× ãª§ Ò¹ä·àÁÍÃã ¹äÁâ¤Ã¤Í¹â·ÃÅàÅÍà ATmega16 «§èÖ
໹ äÁâ¤Ã¤Í¹â·ÃÅàÅÍÃË Å¡Ñ ¢Í§ª´Ø ¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX ¨Ðä´Ã ºÑ ¤ÇÒÁÊдǡà¾ÁÔè ÁÒ¡
¢¹éÖ àÁÍ×è ãªä ¿Åä źÃÒÃÕ timer.h â´Âã¹äźÃÒÃÕ timer.h Á¤Õ Òí ʧèÑ ·ãÕè ªã ¹¡Òè´Ñ ¡ÒÃàÃÍè× §àÇÅÒ´§Ñ ¹éÕ
timer_start 㪡 Òí ˹´¨´Ø àÃÁÔè µ¹ 㹡ÒùºÑ àÇÅҢͧä·àÁÍà (¤Ò àÇÅÒ¶¡Ù à¤ÅÂÕ Ã)
timer_stop 㪻 ´ ¡ÒùºÑ àÇÅҢͧä·àÁÍà (¤Ò àÇÅÒ¶¡Ù à¤ÅÂÕ Ã)
timer_pause ãªË 嫯 ¡ÒùºÑ àÇÅҢͧä·àÁÍê ÇÑè ¢³Ð (¤Ò àÇÅÒäÁ¶ ¡Ù à¤ÅÂÕ Ã)
timer_resume 㪹Ѻ¤ÒàÇÅҵͧ͢ä·àÁÍà ËÅѧ¨Ò¡ËÂØ´¡ÒùѺàÇÅÒªèÑÇ¢³Ð¨Ò¡¿§¡ªÑè¹
timer_pause (¤Ò àÇÅÒ¶¡Ù ¹ºÑ µÍ â´Âà¾ÁÔè ¤Ò ¨Ò¡à´ÁÔ )
msec ãªÍ Ò ¹¤Ò àÇÅÒ·¹èÕ ºÑ ä´ã ¹Ë¹Ç ÂÁÅÔ ÅÇÔ ¹Ô Ò·Õ
sec ãªÍ Ò ¹¤Ò àÇÅÒ·¹Õè ºÑ ä´ã ¹Ë¹Ç ÂÇ¹Ô Ò·Õ