Page 110 - ipst-microbox_manual
P. 110
l ¤ÁÙ Í× ÍÒ §Í§Ô áÅÐ㪧 Ò¹¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX
7.9 ªØ´¤íÒÊèѧÊíÒËÃѺÃѺ/ʧ¢ÍÁÙżҹ¾Íõ͹ءÃÁº¹á¼§Ç§¨ÃáÊ´§¼Å
áÅоÍõ à͹¡»ÃÐʧ¤ (Display-io)
7.9.1 ¡ÒÃàªÍ×è ÁµÍ ·Ò§ÎÒô áÇÃ
㹡Ò÷´Êͺ¤Òí ʧèÑ ¹¨éÕ ÐµÍ §¹Òí ἧǧ¨Ã¤Çº¤ÁØ MicroBOX µÍ ¡ºÑ ἧǧ¨Ã Display-io áÅÐ
µÍ ÊÒÂà¢Ò ·¨èÕ ´Ø µÍ SERIAL PORT ¢Í§á¼§Ç§¨Ã Display-io ¡ºÑ ¾Íõ ͹¡Ø ÃÁ RS-232 ¢Í§¤ÍÁ¾ÇÔ àµÍÃ
7.9.2 ¿§ ¡ª ¹Ñè uart
ãªÊ§¢ÍÁÙÅÊÒÂÍÑ¡¢ÃÐÍÍ¡·Ò§Ç§¨ÃÀҤʧ¢Í§âÁ´ÙÅ UART ã¹äÁâ¤Ã¤Í¹â·ÃÅàÅÍÃ
ATMega16 º¹á¼§Ç§¨Ã MicroBOX â´ÂÁÍÕ µÑ ÃÒàÃÇç 㹡ÒÃ¶Ò Â·Í´¢Í ÁÅÙ àÃÁÔè µ¹ ·Õè 9,600 ºµÔ µÍ Ç¹Ô Ò·Õ
ÃٻẺ¿§¡ªÑè¹
void uart(char *p,...)
¾ÒÃÒÁàÔ µÍÃ
p ãªÊ Òí ËÃºÑ ¡Òí ˹´¡ÅÁØ ¢Í ¤ÇÒÁ·µèÕ Í §¡ÒÃʧ ÍÍ¡ä»Â§Ñ ¾Íõ ͹¡Ø ÃÁ¢Í§¤ÍÁ¾ÇÔ àµÍà â´ÂÊÒÁÒö
¡Òí ˹´Ã»Ù Ẻ¡ÒÃá·Ã¡ÊÑ Å¡Ñ É³¾ àÔ ÈÉà¾Í×è ÃÇ ÁáÊ´§¼Å¤Ò ¢Í ÁÅÙ µÇÑ àŢû٠Ẻ͹×è æ Í¹Ñ ä´á ¡
ÃËÊÑ º§Ñ ¤ºÑ ¡Ò÷Òí §Ò¹
%c ËÃÍ× %C ãªÃ ºÑ ¤Ò ¡ÒÃáÊ´§¼ÅµÇÑ Í¡Ñ Éà 1 µÇÑ
%d ËÃÍ× %D ãªÃ ºÑ ¤Ò ¡ÒÃáÊ´§¼ÅàÅ¢°Ò¹ÊºÔ µ§éÑ áµ -32,768 ¶§Ö +32,767
%l ËÃÍ× %L ãªÃ ºÑ ¤Ò ¡ÒÃáÊ´§¼ÅàÅ¢°Ò¹ÊºÔ µ§Ñé áµ -2,147,483,648 ¶§Ö
+2,147,483,647
%f ËÃÍ× %F ãªÃ ºÑ ¤Ò à¾Í×è áÊ´§¼Å¢Í ÁÅ٠Ẻ¨Òí ¹Ç¹¨Ã§Ô (·È¹ÂÔ Á 3 ËÅ¡Ñ )
\r ¤ÂÕ ¤ Òí ʧÑè ¡Òí ˹´ãË¢ Í ¤ÇÒÁª´Ô ä»·Ò§´Ò ¹«Ò ¢ͧºÃ÷´Ñ
\n ¤ÂÕ ¤ Òí ʧÑè ¾àÔ ÈÉà¾Í×è ¡Òí ˹´ãË¢ Í ¤ÇÒÁ¢¹éÖ ºÃ÷´Ñ ãËÁ
ËÁÒÂà赯 ¡ÒáÒí ˹´ÍСÇÔ àÁ¹µµ Í §µÃ§¡ºÑ ÅÒí ´ºÑ ÃËÊÑ º§Ñ ¤ºÑ Á©Ô й¹Ñé ¡ÒÃáÊ´§¼ÅÍÒ¨¼´Ô ¾ÅÒ´ä´
7.9.3 ¿§ ¡ª ¹èÑ uart_set_baud
㪡íÒ˹´ÍѵÃҺʹËÃ×ÍÍѵÃÒàÃçÇ㹡ÒÃÊè×ÍÊÒâÍÁÙšѺ¤ÍÁ¾ÔÇàµÍÃ
ÃٻẺ¿§¡ªÑè¹
void uart_set_baud(unsigned int baud)
¾ÒÃÒÁàÔ µÍÃ
baud 㪡 Òí ˹´¤Ò 굄 ÃҺʹ㹡ÒÃÊÍ×è ÊÒÃ¢Í ÁÅ٠͹¡Ø ÃÁ¡ºÑ ¤ÍÁ¾ÇÔ àµÍÃ
µÇÑ ÍÂÒ §·Õè 7-25
uart_set_baud(4800); // ¡Òí ˹´ÍµÑ ÃҺʹ㹡ÒÃÊÍè× ÊÒÃ¢Í ÁÅ٠໹ 4,800 ºµÔ µÍ Ç¹Ô Ò·Õ
7.9 ªØ´¤íÒÊèѧÊíÒËÃѺÃѺ/ʧ¢ÍÁÙżҹ¾Íõ͹ءÃÁº¹á¼§Ç§¨ÃáÊ´§¼Å
áÅоÍõ à͹¡»ÃÐʧ¤ (Display-io)
7.9.1 ¡ÒÃàªÍ×è ÁµÍ ·Ò§ÎÒô áÇÃ
㹡Ò÷´Êͺ¤Òí ʧèÑ ¹¨éÕ ÐµÍ §¹Òí ἧǧ¨Ã¤Çº¤ÁØ MicroBOX µÍ ¡ºÑ ἧǧ¨Ã Display-io áÅÐ
µÍ ÊÒÂà¢Ò ·¨èÕ ´Ø µÍ SERIAL PORT ¢Í§á¼§Ç§¨Ã Display-io ¡ºÑ ¾Íõ ͹¡Ø ÃÁ RS-232 ¢Í§¤ÍÁ¾ÇÔ àµÍÃ
7.9.2 ¿§ ¡ª ¹Ñè uart
ãªÊ§¢ÍÁÙÅÊÒÂÍÑ¡¢ÃÐÍÍ¡·Ò§Ç§¨ÃÀҤʧ¢Í§âÁ´ÙÅ UART ã¹äÁâ¤Ã¤Í¹â·ÃÅàÅÍÃ
ATMega16 º¹á¼§Ç§¨Ã MicroBOX â´ÂÁÍÕ µÑ ÃÒàÃÇç 㹡ÒÃ¶Ò Â·Í´¢Í ÁÅÙ àÃÁÔè µ¹ ·Õè 9,600 ºµÔ µÍ Ç¹Ô Ò·Õ
ÃٻẺ¿§¡ªÑè¹
void uart(char *p,...)
¾ÒÃÒÁàÔ µÍÃ
p ãªÊ Òí ËÃºÑ ¡Òí ˹´¡ÅÁØ ¢Í ¤ÇÒÁ·µèÕ Í §¡ÒÃʧ ÍÍ¡ä»Â§Ñ ¾Íõ ͹¡Ø ÃÁ¢Í§¤ÍÁ¾ÇÔ àµÍà â´ÂÊÒÁÒö
¡Òí ˹´Ã»Ù Ẻ¡ÒÃá·Ã¡ÊÑ Å¡Ñ É³¾ àÔ ÈÉà¾Í×è ÃÇ ÁáÊ´§¼Å¤Ò ¢Í ÁÅÙ µÇÑ àŢû٠Ẻ͹×è æ Í¹Ñ ä´á ¡
ÃËÊÑ º§Ñ ¤ºÑ ¡Ò÷Òí §Ò¹
%c ËÃÍ× %C ãªÃ ºÑ ¤Ò ¡ÒÃáÊ´§¼ÅµÇÑ Í¡Ñ Éà 1 µÇÑ
%d ËÃÍ× %D ãªÃ ºÑ ¤Ò ¡ÒÃáÊ´§¼ÅàÅ¢°Ò¹ÊºÔ µ§éÑ áµ -32,768 ¶§Ö +32,767
%l ËÃÍ× %L ãªÃ ºÑ ¤Ò ¡ÒÃáÊ´§¼ÅàÅ¢°Ò¹ÊºÔ µ§Ñé áµ -2,147,483,648 ¶§Ö
+2,147,483,647
%f ËÃÍ× %F ãªÃ ºÑ ¤Ò à¾Í×è áÊ´§¼Å¢Í ÁÅ٠Ẻ¨Òí ¹Ç¹¨Ã§Ô (·È¹ÂÔ Á 3 ËÅ¡Ñ )
\r ¤ÂÕ ¤ Òí ʧÑè ¡Òí ˹´ãË¢ Í ¤ÇÒÁª´Ô ä»·Ò§´Ò ¹«Ò ¢ͧºÃ÷´Ñ
\n ¤ÂÕ ¤ Òí ʧÑè ¾àÔ ÈÉà¾Í×è ¡Òí ˹´ãË¢ Í ¤ÇÒÁ¢¹éÖ ºÃ÷´Ñ ãËÁ
ËÁÒÂà赯 ¡ÒáÒí ˹´ÍСÇÔ àÁ¹µµ Í §µÃ§¡ºÑ ÅÒí ´ºÑ ÃËÊÑ º§Ñ ¤ºÑ Á©Ô й¹Ñé ¡ÒÃáÊ´§¼ÅÍÒ¨¼´Ô ¾ÅÒ´ä´
7.9.3 ¿§ ¡ª ¹èÑ uart_set_baud
㪡íÒ˹´ÍѵÃҺʹËÃ×ÍÍѵÃÒàÃçÇ㹡ÒÃÊè×ÍÊÒâÍÁÙšѺ¤ÍÁ¾ÔÇàµÍÃ
ÃٻẺ¿§¡ªÑè¹
void uart_set_baud(unsigned int baud)
¾ÒÃÒÁàÔ µÍÃ
baud 㪡 Òí ˹´¤Ò 굄 ÃҺʹ㹡ÒÃÊÍ×è ÊÒÃ¢Í ÁÅ٠͹¡Ø ÃÁ¡ºÑ ¤ÍÁ¾ÇÔ àµÍÃ
µÇÑ ÍÂÒ §·Õè 7-25
uart_set_baud(4800); // ¡Òí ˹´ÍµÑ ÃҺʹ㹡ÒÃÊÍè× ÊÒÃ¢Í ÁÅ٠໹ 4,800 ºµÔ µÍ Ç¹Ô Ò·Õ