听不懂你说的是啥!你最后说的和你开始说的就不是一回事!
“我目前最多控制在误差6个US以内 ”,你多长时间允许误差6个US??
对使用12M晶振的51单片机来说,最小的时间单位就是1US,只要是个程序,最少要一个指令吧?对标准的89c51来说任何一个指令都等于或大于1US。
如果说在一定时间内积累了一个或几个微秒的+误差,你想延迟几个微秒,那是另外一回事。
你想延迟几个微秒就加进去几个NOP,这也可以认为就是1US的延时程序。
如果你是数小时积累了1个微秒的误差,用程序在一定的小时后(计算出来的)或者是每天00:00:00时,一次性的在定时器的初装值加上几个数值即可。
积累误差不超过1微秒是没法调整的。
到现在我没有弄明你的真正的意图,不知道我揣摩的对与否? |