Page 63 - ipst-basiclab
P. 63
¤ÁÙ Í× ¡Ò÷´ÅͧàºÍé× §µ¹ ¢Í§¡ÅÍ §ÊÁͧ¡Å IPST-MicroBOX l 63
#include // ¼¹Ç¡ä¿Åä źÃÒÃËÕ Å¡Ñ ipst.h
void main()
{
int time=0; // ¡Òí ˹´µÇÑ á»Ãà¡ºç ¤Ò àÇÅÒ¡ÒùºÑ
char run=0; // ¡Òí ˹´µÇÑ á»Ãà¡ºç ¤Ò Ê¶ÒÁàÃÁèÔ µ¹ ¡ÒùºÑ (¶Ò ໹ 1 ¨Ðà¨Ò ʡ٠ÒùºÑ )
while(1) // Ż٠ǹÃͺäÁà ¨Ù º
{
// ÊÇ ¹¢Í§¡Òõ§Ñé ¤Ò àÇÅÒ //
while(run==0) // µÃǨÊͺÇÒ àÃÁèÔ µ¹ ¡ÒùºÑ ËÃÍ× Â§Ñ (Ż٠¡Òõ§éÑ ¤Ò àÇÅÒ)
{
segment(time); // áÊ´§¼Å¡Òõ§éÑ àÇÅÒ¡ÒùºÑ
if(in_a(1)==0) // µÃǨ¨ºÑ ¡Òá´ÊÇµÔ ª· èÕ PA1 à¾Í×è »ÃºÑ ¤Ò àÇÅÒ㹡Òõ§Ñé
{
sleep(200); // Ë¹Ç §àÇÅÒà¾Íè× Å´¡ÒÃú¡Ç¹·ËèÕ ¹Ò ÊÁÑ ¼ÊÑ ÊÇµÔ ª
time++; // à¾ÁèÔ ¤Ò ¡ÒùºÑ 1 ¤Ò
if(time>99) // µÃǨÊͺÇÒ ¤Ò ¡ÒùºÑ à¡¹Ô 99 ËÃÍ× äÁ
{
time=0; // 㹡ó·Õ ¤Õè Ò ¡ÒùºÑ à¡¹Ô 99 âËÅ´¡ÅºÑ ໹ 0 ãËÁ
}
}
if(in_a(3)==0) // µÃǨ¨ºÑ ¡Òá´ÊÇµÔ ª· Õè PA3 ÊÒí ËÃºÑ àÃÁèÔ µ¹ ¡ÒùºÑ àÇÅÒ
{
run=1; // ¡Òí ˹´ã˵ ÇÑ á»Ã run ໹ 1 à¾Íè× ÍÍ¡¨Ò¡Å»Ù ¡Òõ§éÑ ¤Ò àÇÅÒ
// ä»Â§Ñ Ż٠¡ÒùºÑ àÇÅÒ·ÍèÕ Â¶Ù ´Ñ ä»
}
}
// ÊÇ ¹¢Í§¡ÒùºÑ àÇÅÒµÒÁ·¡èÕ Òí ˹´ //
out_d(7,1); // à»´ LED ã˵ ´Ô ÊÇÒ §
while(time) // ÊÇ ¹µÃǨÊͺÊÒí ËÃºÑ ¡ÒùºÑ àÇÅÒ(Ż٠¡ÒùºÑ àÇÅÒ)
{
segment(time); // áÊ´§¤Ò àÇÅÒ·àÕè ËÅÍ×
time; // Å´¤Ò àÇÅÒŧ 1 ¤Ò
sleep(1000); // Ë¹Ç §àÇÅҢͧÃͺ¡Ò÷Òí §Ò¹ 1 Ç¹Ô Ò·Õ
}
â»Ãá¡ÃÁ·èÕ L4-5 : ä¿Å 7segTest05.c â»Ãá¡ÃÁÀÒÉÒ C ÊÒí ËÃºÑ ÊÃÒ §à¤ÃÍè× §µ§Ñé àÇÅÒ 99 Ç¹Ô Ò·Õ (ÁµÕ Í )
#include
void main()
{
int time=0; // ¡Òí ˹´µÇÑ á»Ãà¡ºç ¤Ò àÇÅÒ¡ÒùºÑ
char run=0; // ¡Òí ˹´µÇÑ á»Ãà¡ºç ¤Ò Ê¶ÒÁàÃÁèÔ µ¹ ¡ÒùºÑ (¶Ò ໹ 1 ¨Ðà¨Ò ʡ٠ÒùºÑ )
while(1) // Ż٠ǹÃͺäÁà ¨Ù º
{
// ÊÇ ¹¢Í§¡Òõ§Ñé ¤Ò àÇÅÒ //
while(run==0) // µÃǨÊͺÇÒ àÃÁèÔ µ¹ ¡ÒùºÑ ËÃÍ× Â§Ñ (Ż٠¡Òõ§éÑ ¤Ò àÇÅÒ)
{
segment(time); // áÊ´§¼Å¡Òõ§éÑ àÇÅÒ¡ÒùºÑ
if(in_a(1)==0) // µÃǨ¨ºÑ ¡Òá´ÊÇµÔ ª· èÕ PA1 à¾Í×è »ÃºÑ ¤Ò àÇÅÒ㹡Òõ§Ñé
{
sleep(200); // Ë¹Ç §àÇÅÒà¾Íè× Å´¡ÒÃú¡Ç¹·ËèÕ ¹Ò ÊÁÑ ¼ÊÑ ÊÇµÔ ª
time++; // à¾ÁèÔ ¤Ò ¡ÒùºÑ 1 ¤Ò
if(time>99) // µÃǨÊͺÇÒ ¤Ò ¡ÒùºÑ à¡¹Ô 99 ËÃÍ× äÁ
{
time=0; // 㹡ó·Õ ¤Õè Ò ¡ÒùºÑ à¡¹Ô 99 âËÅ´¡ÅºÑ ໹ 0 ãËÁ
}
}
if(in_a(3)==0) // µÃǨ¨ºÑ ¡Òá´ÊÇµÔ ª· Õè PA3 ÊÒí ËÃºÑ àÃÁèÔ µ¹ ¡ÒùºÑ àÇÅÒ
{
run=1; // ¡Òí ˹´ã˵ ÇÑ á»Ã run ໹ 1 à¾Íè× ÍÍ¡¨Ò¡Å»Ù ¡Òõ§éÑ ¤Ò àÇÅÒ
// ä»Â§Ñ Ż٠¡ÒùºÑ àÇÅÒ·ÍèÕ Â¶Ù ´Ñ ä»
}
}
// ÊÇ ¹¢Í§¡ÒùºÑ àÇÅÒµÒÁ·¡èÕ Òí ˹´ //
out_d(7,1); // à»´ LED ã˵ ´Ô ÊÇÒ §
while(time) // ÊÇ ¹µÃǨÊͺÊÒí ËÃºÑ ¡ÒùºÑ àÇÅÒ(Ż٠¡ÒùºÑ àÇÅÒ)
{
segment(time); // áÊ´§¤Ò àÇÅÒ·àÕè ËÅÍ×
time; // Å´¤Ò àÇÅÒŧ 1 ¤Ò
sleep(1000); // Ë¹Ç §àÇÅҢͧÃͺ¡Ò÷Òí §Ò¹ 1 Ç¹Ô Ò·Õ
}
â»Ãá¡ÃÁ·èÕ L4-5 : ä¿Å 7segTest05.c â»Ãá¡ÃÁÀÒÉÒ C ÊÒí ËÃºÑ ÊÃÒ §à¤ÃÍè× §µ§Ñé àÇÅÒ 99 Ç¹Ô Ò·Õ (ÁµÕ Í )