引擎点火控制器角度侦测程序.c

来自「引擎点火控制器角度侦测程序,MCU用的是AT89C51」· C语言 代码 · 共 55 行

C
55
字号
Uint temp_cvt(Uint adc_v)
{
   Uchar cnt_offset;
   Uint offset;
   Uchar degree_cnt;
   Uchar cnt1;

   Uint BT_table[15] = {
                          3795,                 /*   0 deg C */
                          3729,                 /*   5 deg C */
                          3654,                 /*  10 deg C */
                          3567,                 /*  15 deg C */
                          3470,                 /*  20 deg C */
                          3362,                 /*  25 deg C */
                          3242,                 /*  30 deg C */
                          3114,                 /*  35 deg C */
                          2977,                 /*  40 deg C */
                          2832,                 /*  45 deg C */
                          2682,                 /*  50 deg C */
                          2528,                 /*  55 deg C */
                          2372,                 /*  60 deg C */
                          2213,                 /*  65 deg C */
                          2063  } ;             /*  70 deg C */

    cnt1 = 0;
    while (( cnt1 <= 14) && (BT_table[cnt1] >= adc_v))   cnt1 ++;

    if (cnt1 == 0)
        return 0;
    else if (cnt1 == 15)
        return 70;
    else
    {
        cnt1--;

        cnt_offset = (unsigned char)(((BT_table[cnt1] - BT_table[cnt1+1])*2)/50);
        if (cnt_offset & 0x01)
        {
            cnt_offset >>= 1;
            cnt_offset++;
        }
        else
            cnt_offset >>= 1;

        degree_cnt = 0;
        offset = BT_table[cnt1] - (unsigned int)cnt_offset;
        while ( offset >= adc_v)
        {
            offset -= (unsigned int)cnt_offset;
            degree_cnt += 1;
        }
        return ( cnt1*50 + degree_cnt);
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?