Page 58 - ipst-microbox_manual
P. 58
l ¤ÁÙ Í× ÍÒ §Í§Ô áÅÐ㪧 Ò¹¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX
µÇÑ ÍÂÒ §·Õè 4-5 // µÇÑ á»Ã result2 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ int
// µÇÑ á»Ã result2 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ int
int result1 = 0; // µÇÑ á»Ã result3 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ float
int result2 = 0; // µÇÑ á»Ã result4 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ float
float result3 = 0.0;
float result4 = 0.0;
int sum(int a , int b) // ¤¹× ¤Ò ¼ÅÅ¾Ñ ¸¨ Ò¡¡Òúǡ¡¹Ñ ÃÐËÇÒ § a áÅÐ b
{
return(a+b);
}
float mul(float x , float y)
{
return(x*y); // ¤¹× ¤Ò ¼ÅÅ¾Ñ ¸¨ Ò¡¡Òä³Ù ¡¹Ñ ÃÐËÇÒ § x áÅÐ y
} // ¿§ ¡ª ¹Ñè ËÅ¡Ñ ¢Í§â»Ãá¡ÃÁ
void main(void)
{ // ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹ 18+7=25
result1 = sum(18,7); // ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹ (12+4)+(4+9)=29
result2 = sum(12,4) + sum(4,9);
result3 = mul(10.0,50.0) + mul(4.0,5.0);
// ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹(10*50)+(4*5)=520
result4 = mul(12.4,2.6) + (float)sum(8,7);
// ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹ (12.4*2.6)+(8*7)=47.24
}
4.3 äźÃÒÃ(Õ Library)
äźÃÒÃÕ ¤Í× ä¿Å· ÃÕè ǺÃÇÁËÃÍ× ºÃè¿Ø § ¡ª ¹Ñè äÇã ¹µÇÑ à¾Íè× ¨´Ñ ËÁÇ´ËÁ¿Ù § ¡ª ¹èÑ ·ÁèÕ ÅÕ ¡Ñ ɳСÒÃ
㪧ҹ¡ÅØÁËÃ×Í»ÃÐàÀ·à´ÕÂǡѹ¶Ù¡¨Ñ´à¡çºäÇã¹·Õèà´ÕÂǡѹ ÊǹãËáÅÇÁÑ¡¨ÐµÑ駪è×Íä¿ÅäźÃÒÃÕ¹Õé
ãËÊÍ´¤Åͧ¡Ñº¡ÅØÁ¢Í§¿§¡ªèѹËÃ×Í¡ÒÃ㪧ҹ áÅЧÒµ͡ÒÃàÃÕ¡ãªã¹¤ÃÑé§µÍä»
¿§ ¡ª ¹Ñè ¡ÅÁØ à´ÂÕ Ç¡¹Ñ ·ÁèÕ ¡Ñ 㪧 Ò¹ºÍ Âæ 㹡Òþ²Ñ ¹Òâ»Ãá¡ÃÁ¤ÇùÒí ÁÒÊÃÒ §à»¹ ä¿Åä źÃÒÃÕ
áÅШ´Ñ ࡺç äÇ àÁÍè× µÍ §¡ÒÃ㪧 Ò¹¡àç ¾ÂÕ §»ÃСÒÈâ»Ãâµä·» (prototype) ¢Í§ªÍè× äźÃÒÃäÕ ¿Å· ÊÕè ÃÒ §äÇ
¡Í ¹Ë¹Ò ¹Õé à¾Íè× ¼¹Ç¡äźÃÒÃàÕ ËÅÒ ¹¹Ñé äÇÃ Ç Á·Òí §Ò¹¡ºÑ â»Ãá¡ÃÁ·¡Õè Òí Å§Ñ ¾²Ñ ¹ÒÍÂÙ ËÅ§Ñ ¨Ò¡¹¹éÑ ¨Ð·Òí ãË
¼¾Ù ²Ñ ¹ÒÊÒÁÒöàÃÂÕ ¡ãª§ Ò¹¿§ ¡ª ¹èÑ ·ºÕè ÃÃ¨ÍØ ÂÀÙ ÒÂã¹ä¿Åä źÃÒÃ´Õ §Ñ ¡ÅÒ Çä´ (¢¹Ñé µÍ¹àËÅÒ ¹¨Õé ж¡Ù àªÍ×è Á
â§¡¹Ñ ÃÐËÇÒ § AVR Studio áÅÐ WinAVR â´Â¼¾Ù ²Ñ ¹Ò¨ÐµÍ §Ãк¾Ø Ò¸¢Í§¢Í§äźÃÒÃ·Õ àèÕ ÃÂÕ ¡ãªã Ë
¡ºÑ ¡ºÑ AVR Studio Í¡Õ ·Í´Ë¹§èÖ )
µÇÑ ÍÂÒ §·Õè 4-5 // µÇÑ á»Ã result2 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ int
// µÇÑ á»Ã result2 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ int
int result1 = 0; // µÇÑ á»Ã result3 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ float
int result2 = 0; // µÇÑ á»Ã result4 à¡ºç ¤Ò ¢Í ÁÅ٠Ẻ float
float result3 = 0.0;
float result4 = 0.0;
int sum(int a , int b) // ¤¹× ¤Ò ¼ÅÅ¾Ñ ¸¨ Ò¡¡Òúǡ¡¹Ñ ÃÐËÇÒ § a áÅÐ b
{
return(a+b);
}
float mul(float x , float y)
{
return(x*y); // ¤¹× ¤Ò ¼ÅÅ¾Ñ ¸¨ Ò¡¡Òä³Ù ¡¹Ñ ÃÐËÇÒ § x áÅÐ y
} // ¿§ ¡ª ¹Ñè ËÅ¡Ñ ¢Í§â»Ãá¡ÃÁ
void main(void)
{ // ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹ 18+7=25
result1 = sum(18,7); // ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹ (12+4)+(4+9)=29
result2 = sum(12,4) + sum(4,9);
result3 = mul(10.0,50.0) + mul(4.0,5.0);
// ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹(10*50)+(4*5)=520
result4 = mul(12.4,2.6) + (float)sum(8,7);
// ãˤ Ò ¼ÅÅ¾Ñ ¸à ËÁÍ× ¹ (12.4*2.6)+(8*7)=47.24
}
4.3 äźÃÒÃ(Õ Library)
äźÃÒÃÕ ¤Í× ä¿Å· ÃÕè ǺÃÇÁËÃÍ× ºÃè¿Ø § ¡ª ¹Ñè äÇã ¹µÇÑ à¾Íè× ¨´Ñ ËÁÇ´ËÁ¿Ù § ¡ª ¹èÑ ·ÁèÕ ÅÕ ¡Ñ ɳСÒÃ
㪧ҹ¡ÅØÁËÃ×Í»ÃÐàÀ·à´ÕÂǡѹ¶Ù¡¨Ñ´à¡çºäÇã¹·Õèà´ÕÂǡѹ ÊǹãËáÅÇÁÑ¡¨ÐµÑ駪è×Íä¿ÅäźÃÒÃÕ¹Õé
ãËÊÍ´¤Åͧ¡Ñº¡ÅØÁ¢Í§¿§¡ªèѹËÃ×Í¡ÒÃ㪧ҹ áÅЧÒµ͡ÒÃàÃÕ¡ãªã¹¤ÃÑé§µÍä»
¿§ ¡ª ¹Ñè ¡ÅÁØ à´ÂÕ Ç¡¹Ñ ·ÁèÕ ¡Ñ 㪧 Ò¹ºÍ Âæ 㹡Òþ²Ñ ¹Òâ»Ãá¡ÃÁ¤ÇùÒí ÁÒÊÃÒ §à»¹ ä¿Åä źÃÒÃÕ
áÅШ´Ñ ࡺç äÇ àÁÍè× µÍ §¡ÒÃ㪧 Ò¹¡àç ¾ÂÕ §»ÃСÒÈâ»Ãâµä·» (prototype) ¢Í§ªÍè× äźÃÒÃäÕ ¿Å· ÊÕè ÃÒ §äÇ
¡Í ¹Ë¹Ò ¹Õé à¾Íè× ¼¹Ç¡äźÃÒÃàÕ ËÅÒ ¹¹Ñé äÇÃ Ç Á·Òí §Ò¹¡ºÑ â»Ãá¡ÃÁ·¡Õè Òí Å§Ñ ¾²Ñ ¹ÒÍÂÙ ËÅ§Ñ ¨Ò¡¹¹éÑ ¨Ð·Òí ãË
¼¾Ù ²Ñ ¹ÒÊÒÁÒöàÃÂÕ ¡ãª§ Ò¹¿§ ¡ª ¹èÑ ·ºÕè ÃÃ¨ÍØ ÂÀÙ ÒÂã¹ä¿Åä źÃÒÃ´Õ §Ñ ¡ÅÒ Çä´ (¢¹Ñé µÍ¹àËÅÒ ¹¨Õé ж¡Ù àªÍ×è Á
â§¡¹Ñ ÃÐËÇÒ § AVR Studio áÅÐ WinAVR â´Â¼¾Ù ²Ñ ¹Ò¨ÐµÍ §Ãк¾Ø Ò¸¢Í§¢Í§äźÃÒÃ·Õ àèÕ ÃÂÕ ¡ãªã Ë
¡ºÑ ¡ºÑ AVR Studio Í¡Õ ·Í´Ë¹§èÖ )