Page 152 - ipst-microbox_manual
P. 152
l ¤ÁÙ Í× ÍÒ §Í§Ô áÅÐ㪧 Ò¹¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX
â»Ãá¡ÃÁ¤Çº¤ÁØ -2 : ä¿Ç§èÔ 2 ·ÈÔ ·Ò§
ã¹â»Ãá¡ÃÁ·èÕ K1-2 ¨ÐᵡµÒ §¨Ò¡â»Ãá¡ÃÁ·Õè K1-1 µÃ§·àèÕ ÁÍè× LED ǧèÔ ¨Ò¡·Ò§¢ÇÒÊ´Ø (µÒí áË
¹§ 0) ÁÒ处 ½§ «Ò ÂÊ´Ø (µÒí á˹§ 7) áÅÇ Ç¹¡ÅºÑ ¨Ò¡«Ò Â仢ÇÒãËÁÍ ¡Õ ¤Ã§Ñé ǹ·Òí «Òéí ÍÂÒ §µÍ à¹Íè× § ÊÒí ËúÑ
â»Ãá¡ÃÁ·èÕ K1-2 ¨ÐäÁã ªà §Í×è ¹ä¢¢Í§¤Òí ʧÑè if áµã ªà §Íè× ¹ä¢¢Í§¤Òí ʧèÑ while() á·¹ â´Ââ»Ãá¡ÃÁ¨ÐǹŻÙ
while 仨¹¡ÇÒ à§Íè× ¹ä¢¨Ð໹ à·¨ç
ÊÒí ËÃºÑ ¤Òí ʧèÑ sleep() ÊÒí ËÃºÑ ãªË ¹Ç §àÇÅÒ¹¹Ñé ÁËÕ ¹Ç Â໹ ÁÅÔ ÅÇÔ ¹Ô Ò·Õ ¶Ò µÍ §¡ÒÃ»ÃºÑ áµ§ ¤ÇÒÁàÃÇç ã¹
¡ÒÃáÊ´§¼Å¢Í§ LED ¡Êç ÒÁÒö»ÃºÑ ¤Ò µÇÑ àŢ㹤Òí ʧèÑ sleep() ä´
#include // i ==> 8 bit data
unsigned char i= 0b000000001 ;
void main() // Test LED on right ?
{ // Show i on LED
// Delay 0.1 second
while(1) // Rotate LED Left
{ // Test LED on left ?
// Show i on LED
while(i < 0b10000000) // Delay 0.1 second
{ // Rotate LED Right
led8(i);
sleep(100);
i = i << 1 ;
}
while(i > 0b00000001)
{
led8(i);
sleep(100);
i = i >> 1 ;
}
}
}
â»Ãá¡ÃÁ·èÕ K1-2 â»Ãá¡ÃÁÀÒÉÒ C ¢Í§â¤Ã§§Ò¹ä¿Ç§èÔ 8 ´Ç§ Ẻ·Õè 2 ä¿Ç§Ôè ä»ÁÒ 2 ·ÈÔ ·Ò§
â»Ãá¡ÃÁ¤Çº¤ÁØ -2 : ä¿Ç§èÔ 2 ·ÈÔ ·Ò§
ã¹â»Ãá¡ÃÁ·èÕ K1-2 ¨ÐᵡµÒ §¨Ò¡â»Ãá¡ÃÁ·Õè K1-1 µÃ§·àèÕ ÁÍè× LED ǧèÔ ¨Ò¡·Ò§¢ÇÒÊ´Ø (µÒí áË
¹§ 0) ÁÒ处 ½§ «Ò ÂÊ´Ø (µÒí á˹§ 7) áÅÇ Ç¹¡ÅºÑ ¨Ò¡«Ò Â仢ÇÒãËÁÍ ¡Õ ¤Ã§Ñé ǹ·Òí «Òéí ÍÂÒ §µÍ à¹Íè× § ÊÒí ËúÑ
â»Ãá¡ÃÁ·èÕ K1-2 ¨ÐäÁã ªà §Í×è ¹ä¢¢Í§¤Òí ʧÑè if áµã ªà §Íè× ¹ä¢¢Í§¤Òí ʧèÑ while() á·¹ â´Ââ»Ãá¡ÃÁ¨ÐǹŻÙ
while 仨¹¡ÇÒ à§Íè× ¹ä¢¨Ð໹ à·¨ç
ÊÒí ËÃºÑ ¤Òí ʧèÑ sleep() ÊÒí ËÃºÑ ãªË ¹Ç §àÇÅÒ¹¹Ñé ÁËÕ ¹Ç Â໹ ÁÅÔ ÅÇÔ ¹Ô Ò·Õ ¶Ò µÍ §¡ÒÃ»ÃºÑ áµ§ ¤ÇÒÁàÃÇç ã¹
¡ÒÃáÊ´§¼Å¢Í§ LED ¡Êç ÒÁÒö»ÃºÑ ¤Ò µÇÑ àŢ㹤Òí ʧèÑ sleep() ä´
#include
unsigned char i= 0b000000001 ;
void main() // Test LED on right ?
{ // Show i on LED
// Delay 0.1 second
while(1) // Rotate LED Left
{ // Test LED on left ?
// Show i on LED
while(i < 0b10000000) // Delay 0.1 second
{ // Rotate LED Right
led8(i);
sleep(100);
i = i << 1 ;
}
while(i > 0b00000001)
{
led8(i);
sleep(100);
i = i >> 1 ;
}
}
}
â»Ãá¡ÃÁ·èÕ K1-2 â»Ãá¡ÃÁÀÒÉÒ C ¢Í§â¤Ã§§Ò¹ä¿Ç§èÔ 8 ´Ç§ Ẻ·Õè 2 ä¿Ç§Ôè ä»ÁÒ 2 ·ÈÔ ·Ò§