日本久久久久曰精品免费,国产精品一级二级三级,乱子伦av无码中文字幕s,国产成人精品一区免费视频

技術熱線: 4007-888-234

技術支持

MICROCHIP單片機-定時器精準計算

更新時間: 2019-03-26

在此用了16C711單片機的TMR0做定時中斷,希望實現精準計時,在程序中,TMR0用了晶振的32分頻,初值#0FCH,因此POPBEAR兄弟計算出每個定時中斷的計時時間為(256-X)*32*4/32768=0.015625秒。注意,問題就在這里!實際上這個時間是TMR0的初值被置入后兩個指令周期后(見PIC單片機定時器/計數器資料)到下一次中斷發生時的時間。如果要用到定時器的精準定時,必須理解這一概念!

    如采用32768Hz的晶振,每個指令周期為122us,在中斷處理程序中,到TMR0的初值被置入,共有7條指令,加上TMR0的初值被置入后兩個指令周期,如果中斷處理程序不直接放在0004H地址而采用GOTO指令的兩個周期,一共為11個指令周期。也就是說,每個定時中斷發生的間隔為0.015625+11*122us。程序中64次中斷為1秒,那么1秒誤差為64*11*122us=85.9375ms,1分鐘的誤差為5.156s


那么怎樣得到精準計時呢?這就要在對定時器的初值賦值上和中斷處理程序中做文章


404
返回首頁 |  返回上一頁
主站蜘蛛池模板: 山阳县| 法库县| 广州市| 赞皇县| 额尔古纳市| 庆安县| 平南县| 通化县| 望城县| 南丹县| 大理市| 乐至县| 永清县| 巢湖市| 洮南市| 蒙阴县| 砚山县| 尼勒克县| 景宁| 兖州市| 白山市| 金乡县| 嵊州市| 奇台县| 巴青县| 襄城县| 安庆市| 奉节县| 博野县| 东明县| 马边| 毕节市| 区。| 湄潭县| 克拉玛依市| 昌江| 朝阳县| 宜昌市| 上饶市| 土默特右旗| 合川市|