Page 69 - ipst-cmanual
P. 69
¤ÁÙ Í× ¡ÒÃà¢ÂÕ ¹â»Ãá¡ÃÁÀÒÉÒ C ÊÒí ËÃºÑ ãª§ Ò¹¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX l 69
4.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 ¤ÂÕ ¤ Òí ʧèÑ ¾àÔ ÈÉà¾Íè× ¡Òí ˹´ãË¢ Í ¤ÇÒÁ¢¹Öé ºÃ÷´Ñ ãËÁ
ËÁÒÂà赯 ¡ÒáÒí ˹´ÍСÇÔ àÁ¹µµ Í §µÃ§¡ºÑ ÅÒí ´ºÑ ÃËÊÑ º§Ñ ¤ºÑ Á©Ô й¹Ñé ¡ÒÃáÊ´§¼ÅÍÒ¨¼´Ô ¾ÅÒ´ä´
4.9.3 ¿§ ¡ª ¹Ñè uart_set_baud
㪡íÒ˹´ÍѵÃҺʹËÃ×ÍÍѵÃÒàÃçÇ㹡ÒÃÊ×èÍÊÒâÍÁÙšѺ¤ÍÁ¾ÔÇàµÍÃ
û٠Ẻ¿§ ¡ª ¹Ñè
void uart_set_baud(unsigned int baud)
¾ÒÃÒÁàÔ µÍÃ
baud 㪡 Òí ˹´¤Ò 굄 ÃҺʹ㹡ÒÃÊÍè× ÊÒÃ¢Í ÁÅ٠͹¡Ø ÃÁ¡ºÑ ¤ÍÁ¾ÇÔ àµÍÃ
¶Ò ËÒ¡äÁÁ ¡Õ ÒáÒí ˹´¤Ò 굄 ÃҺʹ ¤Ò µ§éÑ µ¹ ·ãÕè ª¨ Ðà·Ò ¡ºÑ 9,600 ºµÔ µÍ Ç¹Ô Ò·Õ
µÇÑ ÍÂÒ §·èÕ 4-23
uart_set_baud(4800); // ¡Òí ˹´ÍµÑ ÃҺʹ㹡ÒÃÊÍè× ÊÒÃ¢Í ÁÅ٠໹ 4,800 ºµÔ µÍ Ç¹Ô Ò·Õ
4.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 ¤ÂÕ ¤ Òí ʧèÑ ¾àÔ ÈÉà¾Íè× ¡Òí ˹´ãË¢ Í ¤ÇÒÁ¢¹Öé ºÃ÷´Ñ ãËÁ
ËÁÒÂà赯 ¡ÒáÒí ˹´ÍСÇÔ àÁ¹µµ Í §µÃ§¡ºÑ ÅÒí ´ºÑ ÃËÊÑ º§Ñ ¤ºÑ Á©Ô й¹Ñé ¡ÒÃáÊ´§¼ÅÍÒ¨¼´Ô ¾ÅÒ´ä´
4.9.3 ¿§ ¡ª ¹Ñè uart_set_baud
㪡íÒ˹´ÍѵÃҺʹËÃ×ÍÍѵÃÒàÃçÇ㹡ÒÃÊ×èÍÊÒâÍÁÙšѺ¤ÍÁ¾ÔÇàµÍÃ
û٠Ẻ¿§ ¡ª ¹Ñè
void uart_set_baud(unsigned int baud)
¾ÒÃÒÁàÔ µÍÃ
baud 㪡 Òí ˹´¤Ò 굄 ÃҺʹ㹡ÒÃÊÍè× ÊÒÃ¢Í ÁÅ٠͹¡Ø ÃÁ¡ºÑ ¤ÍÁ¾ÇÔ àµÍÃ
¶Ò ËÒ¡äÁÁ ¡Õ ÒáÒí ˹´¤Ò 굄 ÃҺʹ ¤Ò µ§éÑ µ¹ ·ãÕè ª¨ Ðà·Ò ¡ºÑ 9,600 ºµÔ µÍ Ç¹Ô Ò·Õ
µÇÑ ÍÂÒ §·èÕ 4-23
uart_set_baud(4800); // ¡Òí ˹´ÍµÑ ÃҺʹ㹡ÒÃÊÍè× ÊÒÃ¢Í ÁÅ٠໹ 4,800 ºµÔ µÍ Ç¹Ô Ò·Õ