一般模擬量并不做這種,而是采集溫度才這樣做。
為何采集溫度會(huì)這樣做呢?因?yàn)閷τ?KF這種多用途模塊來說,其實(shí)際溫度值與采集數(shù)據(jù)之間的關(guān)系為 采集數(shù)據(jù)處以10就是實(shí)際溫度。
那么,當(dāng)采集數(shù)據(jù)為322,明眼人一看就知道,那不就是32.2度么,是的,如果直接除以10,那么由于整形的關(guān)系,其結(jié)果0.2度被丟棄了。
所以,需要切換到浮點(diǎn)數(shù)除法,這樣才能保留精度。
為了轉(zhuǎn)換為浮點(diǎn)數(shù),浮點(diǎn)數(shù)的數(shù)據(jù)長度為32位,因此,必須首先擴(kuò)展16位的整形到32位的長整形,因此需要ITD指令擴(kuò)展。
其次才能通過DTR指令來轉(zhuǎn)換到浮點(diǎn)數(shù)。
如果你不在意小數(shù)點(diǎn)后的精度,那無需去轉(zhuǎn)換,直接整形除法即可。
Regards