void main( void )
{
long vcc, vtmp, temp;
int i, j;
init(); /* 初期化 */
while( 1 ) {
// NJM1431電圧、温度計の電圧を100回取得
vtmp = 0;
for( i=0; i<100; i++ ) {
// P1_3からVccを計算(vcc=5000なら5000mV)
vcc = (long)1023 * V_NJM1431 / get_ad3();
// P1_7から温度を計算(vtmp=5000なら5000mV)
vtmp = vtmp + (long)get_ad7() * vcc / 1023;
for( j=0; j<5000; j++ ); /* ウエイト 約5ms */
}
// 温度変換(100℃のとき、1000に変換)
temp = (vtmp - 241680) * 1000 / 356250;
// 0℃以下か確認
if( temp < 0 ) {
temp = -temp;
put_uart0_str( "-" );
} else {
put_uart0_str( "+" );
}
// 上位3桁+"."+下位1桁表示+改行
put_uart0_num( temp / 10, 3 );
put_uart0_str( "." );
put_uart0_num( temp % 10, 1 );
put_uart0_str( "゚C\n" );
}
}