標(biāo)題: 求解單片機(jī)自行車?yán)锍痰乃俣扔?jì)算 [打印本頁]

作者: sqw    時(shí)間: 2017-5-14 18:46
標(biāo)題: 求解單片機(jī)自行車?yán)锍痰乃俣扔?jì)算
void menu_dis()          //計(jì)算速度函數(shù)
{
        static uchar value;
        if(menu_1 == 0)
        {       
                if(flag_1s == 1)   
                {       
                        flag_1s = 0;                
                        if(flag_en == 0)
                        {
                                value ++;
                                if(value >= 3)        //2秒
                                {       
                                        speed_km = 0;  //速度為0
                                        shudu = (uint)speed_km;       
                                        value = 0;                               
                                }
                        }
                        if((flag_en == 1))
                        {       
                                value = 0;               
                                flag_en = 0;         
                                 //1s = 1 / 1000000us;          // 1m/s=3.6km/h                       
                                f_hz = (t2_num * 65536.0 + TH11 * 256 + TL11) / 1000000 ;  //算出來就是秒
                                t2_num = 0;        //把變量清零
                                TH11 = 0;
                                TL11 = 0;                                          
                                speed_m = f_hz * zhijing * 3.14  ;        //算出來的是m/s
                                juli_z = (juli_z + (uint)speed_m) ;        //總路程m       
                                speed_km = speed_m * 3.6 ;        //(帶個(gè)小數(shù)點(diǎn)) km/h               
                            shudu = (uint)speed_km;
                                zong_lc += speed_m;
                        }               
                        write_sfm2(1,3,shudu);               
                        write_sfm4(2,3,juli_z);       
                }
        }
}

f_hz = (t2_num * 65536.0 + TH11 * 256 + TL11) / 1000000 ;  //算出來就是秒
speed_m = f_hz * zhijing * 3.14  ;        //算出來的是m/s
這兩句不理解


作者: ahshmj    時(shí)間: 2017-5-14 20:38
只看著一點(diǎn)程序是看不明白的。但是感覺這兩句是有點(diǎn)不對(duì)。
作者: xingye    時(shí)間: 2017-5-14 23:16
定時(shí)器計(jì)數(shù)滿0xFFFF(65536)溢出一次,t2_num 是定時(shí)器溢出計(jì)數(shù)值,那么溢出時(shí)間 = t2_num * 65536 ;TH11(高8位) 和 TL11(低8位) 是定時(shí)器正在計(jì)數(shù)的值,因?yàn)門H11 是高8位,所以算計(jì)數(shù)值時(shí)需要 * 256,定時(shí)器正在計(jì)數(shù)值 = TH11 * 256 + TL11 。那么總計(jì)數(shù)值 = 溢出次數(shù) * 65536 +  TH11 * 256 + TL11 。 希望能幫到你。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1