一個(gè)計(jì)時(shí)器的程序
林慧玲
發(fā)布于2014-03-17 17:29
14
0
標(biāo)簽:
想做一個(gè)速度計(jì)算的程序,高電平開始計(jì)時(shí),低電平停止計(jì)時(shí),然后要把這個(gè)計(jì)時(shí)的時(shí)長存到一個(gè)地址,以s為單位,精確到10ms,這個(gè)時(shí)長與預(yù)定的長度(單位:m)做除法計(jì)算出速度(單位:m/s)。編程新人,這個(gè)實(shí)在是做不出來。
佳答案
給出一種解決方案:
1.假設(shè)幾個(gè)值:設(shè)定長度long為md0,速度speed為md4,計(jì)數(shù)值為mw8,檢測開關(guān)點(diǎn)switch為i0.0
2.精確到10ms的情況,建議的一種做法是用ob35來做,在cpu中,把ob35的中斷時(shí)間設(shè)定為10ms,圖1.
3.在ob35中添加程序圖2.
程序段1的意思是:只要i0.0導(dǎo)通,每次采樣時(shí)計(jì)數(shù)值加1
程序段2的意思是:當(dāng)i0.0停止時(shí),計(jì)算速度。先把mw8轉(zhuǎn)換成實(shí)數(shù)類型,然后算出實(shí)際的秒數(shù),然后計(jì)算出速度
程序段3的意思是:當(dāng)i0.0再次導(dǎo)通時(shí)重新計(jì)算速度。并且把前面的速度清零。
已經(jīng)測試過了。
若有收獲,就點(diǎn)個(gè)贊吧!
文章來源于網(wǎng)絡(luò)及文獻(xiàn)如有侵權(quán)請聯(lián)系站長
分享到:
微信掃一掃分享
閱讀與本文標(biāo)簽相同的文章