問題:
用C51系列單片機測TTL(f<50KHz)的信號,精度達(dá)到0.001Hz,用12MHz的單片機還是更高?
怎么計算是否達(dá)到這個精度?
===============================================
解答:
這個0.001Hz的測量精度,在單片機領(lǐng)域是不能達(dá)到的。
精度為0.001Hz,一般是指最大的絕對誤差。
當(dāng)測量50KHz信號的時候,顯示數(shù)值不應(yīng)超過:49 999.999Hz ~ 50 000.001Hz。
這才是精度達(dá)到了0.001Hz。
12MHz的單片機,根本別想達(dá)到這個精度?。?!
測量頻率,有“測量頻率”和“測量周期”兩種方法。
如果采用“測量頻率”的方法,也就是“定時計數(shù)”法。
為了統(tǒng)計出來 49 999 999 ~ 50 000 001 的區(qū)別,就要用1000s的時間(16分鐘多)。
時間短了,就達(dá)不到0.001Hz的精度要求。
“定時計數(shù)”法用時太長,不實用,那就再看看“測量周期”法。
用單片機的確是可以測出50KHz信號的周期是20us,取倒數(shù),確實能換算出50 000Hz。
但是輸入的頻率,以0.001Hz 分檔,再輸入幾個看看:
頻率是49 999.999Hz,它的周期是20.0000004us;
頻率是49 999.998Hz,它的周期是20.0000008us;
……
……
呵呵,不用多說了,大家一眼就可以看出,這0.0000004us的差別,單片機是分辨不出來的。
也就是說,單片機分辨不出來49 999.999Hz和49 999.998Hz的區(qū)別。
所以,0.001Hz的精度,是不可能達(dá)到的。