Page 74 - ipst-sensorlab
P. 74
l ¤Á‹Ù Í× ¡Ò÷´ÅͧáÅÐ㪧Œ Ò¹µÇÑ µÃǨ¨ºÑ ¢Í§ª´Ø ¡Å͋ §ÊÁͧ¡Å IPST-MicroBOX

#include // ¼¹Ç¡ä¿Åä ÅºÃÒÃÊÕ Òí ËÃºÑ ¿§˜ ¡ª ¹èÑ sleep

#include // ¼¹Ç¡ä¿Åä ÅºÃÒÃÊÕ Òí ËÃºÑ ¿§˜ ¡ª ¹Ñè analog

#include // ¼¹Ç¡ä¿Åä ÅºÃÒÃÊÕ Òí ËÃºÑ ¿§˜ ¡ª ¹èÑ segment

#include // ¼¹Ç¡ä¿Åä ÅºÃÒÃÊÕ Òí ËÃºÑ ¿§˜ ¡ª ¹èÑ log10

void main()

{

float A = 0.0; // ¡Òí ˹´µÇÑ á»Ãà¡ºç ¤Ò‹ ¢ÍŒ ÁÅÙ Í³Ø ËÀÁÙ ¨Ô Ò¡ ZX-THERMISTOR

float T = 0.0; // ¡Òí ˹´µÇÑ á»Ãà¡ºç ¤Ò‹ Í³Ø ËÀÁÙ ¨Ô Ò¡¡ÒäÒí ¹Ç³(ẺàÅ¢·È¹ÂÔ Á)

float k = 0.0; // ¡Òí ˹´µÇÑ á»ÃÊÒí ËÃºÑ ¡Òí ˹´¤Ò‹ ª´àªÂ

int Tint= 0; // ¡Òí ˹´µÇÑ á»Ãà¡ºç ¤Ò‹ Í³Ø ËÀÁÙ Ô 100 à·Ò‹ ¢Í§¤Ò‹ Í³Ø ËÀÁÙ ¨Ô çÔ

// à¹Í×è §¨Ò¡µÍŒ §¡ÒÃáÊ´§àÅ¢ 4 ËÅ¡Ñ ·èÕ LED 7 ÊNj ¹

while(1) // Ż٠ǹÃͺäÁË ¨ŒÙ º

{

A = (float)analog(0); // Íҋ ¹¤Ò‹ ¢ÍŒ ÁÅÙ Í³Ø ËÀÁÙ ¨Ô Ò¡ ZX-THERMISTOR

T = k + 75-((50.0)*log10((10.0*A)/(1024.0-A))); // á»Å§¤Ò‹ Í³Ø ËÀÁÙ Ô

Tint = (int)(T*100.0); // á»Å§¤Ò‹ Í³Ø ËÀÁÙ ãÔ ËÁŒ ¢Õ ¹Ò´ 100 à·Ò‹

// áÅÐ໹š ¤Ò‹ àÅ¢¨Òí ¹Ç¹àµÁç à¾Íè× áÊ´§¼Å·èÕ LED µÇÑ àÅ¢ 7 ÊNj ¹

segment(Tint); // áÊ´§¤Ò‹ ¢ÍŒ ÁÅÙ Í³Ø ËÀÁÙ µÔ ÇÑ àÅ¢ 4 ËÅ¡Ñ

segment_dot(3); // ãʨ‹ ´Ø ·È¹ÂÔ Á 2 µÒí á˹§‹

sleep(1000); // ˹Nj §àÇÅÒÊÒí ËÃºÑ ¡ÒÃáÊ´§¼Å

}

}

¤Òí ͸ºÔ ÒÂâ»Ãá¡ÃÁ

àÁÍ×è Ã¹Ñ â»Ãá¡ÃÁ¤Ò‹ ·ÍÕè ҋ ¹ä´¨Œ Ò¡ ZX-THERMISTOR ·àèÕ ªÍ×è ÁµÍ‹ à¢ÒŒ ¡ºÑ ¾Íõ PA0 ¨Ð¶¡Ù á»Å§´ÇŒ ¿§˜
¡ª ¹èÑ analog(0) ໹š ¢ÍŒ ÁÅÙ ´¨Ô µÔ ÍÅ áÅnj á»Å§à»¹š ¢ÍŒ ÁÅÙ ª¹´Ô àÅ¢·È¹ÂÔ Áà¾Í×è ãªàŒ »¹š ¢ÍŒ ÁÅÙ ´ºÔ 㹡ÒäÒí ¹Ç³¤Ò‹
Í³Ø ËÀÁÙ ¼Ô ҋ ¹ÊÁ¡Ò÷Õè 5.7 â´ÂÁµÕ ÇÑ á»Ã k ÊÒí ËÃºÑ »ÃºÑ ª´àªÂ ¤Ò‹ ·äèÕ ´¨Œ Ò¡¡ÒäÒí ¹Ç³¨Ðࡺç äÇ㌠¹µÇÑ á»Ã T

¤Ò‹ Í³Ø ËÀÁÙ ¨Ô Ã§Ô ·àèÕ ¡ºç äǵŒ ÇÑ á»Ã T ¨Ð¶¡Ù »ÃºÑ ãËÁŒ ¤Õ ҋ à¾ÁèÔ ¢¹Öé 100 à·Ò‹ áÅnj »ÃºÑ ໹š ª¹´Ô µÇÑ àÅ¢¨Òí ¹Ç¹
àµÁç ࡺç äÇ·Œ µÕè ÇÑ á»Ã Tint à¾Íè× àµÃÂÕ ÁáÊ´§¼Å¤Ò‹ Í³Ø ËÀÁÙ àÔ »¹š µÇÑ àÅ¢ 4 ËÅ¡Ñ ·È¹ÂÔ Á 2 µÒí á˹§‹ ¡µÇÑ ÍÂҋ §
¶ÒŒ ¤Ò‹ T = 25.368 àÁÍè× ¼Ò‹ ¹ºÃ÷´Ñ ¤Òí ʧèÑ Tint = (int)(T*100.0); áÅnj Tint ¨ÐÁ¤Õ ҋ ໹š 2536

¨Ò¡¹¹éÑ ¹Òí ¤Ò‹ ¨Ò¡µÇÑ á»Ã Tint ¨Ð¶¡Ù ¹Òí ä»áÊ´§¼Å·èÕ LED µÇÑ àÅ¢ 7 ÊNj ¹º¹á¼§Ç§¨Ã DSP-4 áÅnj 㪤Œ Òí ʧèÑ
segment_dot(3); à¾Íè× ¡Òí ˹´¡ÒÃáÊ´§¼Å¨´Ø ·È¹ÂÔ Á 2 µÒí á˹§‹

â»Ãá¡ÃÁ·Õè A6-2 : ä¿Å TempTest02.c â»Ãá¡ÃÁÀÒÉÒ C ÊÒí ËÃºÑ ·´Êͺ¡ÒÃ㪧Œ ҹἧǧ¨Ã ZX-
THERMISTOR Ç´Ñ áÅÐáÊ´§¤Ò‹ Í³Ø ËÀÁÙ ¨Ô Ã§Ô (ÁµÕ ͋ )
   69   70   71   72   73   74   75   76   77   78   79