Microchip
直播中

张秀荣

8年用户 236经验值
私信 关注
[问答]

PIC24FV32KA304定时器如何查询

大家好,如果这个查询听起来很幼稚,那么很抱歉。我正在为缺省周期寄存器值=0xFFFF配置PIC24FV32KA304的定时器。定时器时钟是2Mhz.1时钟滴答=0.5us,0xFF时钟滴答=32.7msI,正在切换定时器4中断例程中的GPIO端口并探测特定端口,捕获在示波器中的波形。周期是~64ms,我相信是正确的,On time=32.7ms,OFF time=32.7ms之后,我捕获了各种PR值的波形。请查找下列周期:0xFF----->64ms0x7FF------->32ms0x3FF----->32ms0x3FF------->16ms0x1FF----------->;16ms0x1x1FF--------------->;16ms0x1ms0x1FF------------->;16ms0x1ms0x1x3FF------------->16ms0x0x1ms0x3FF------------->;8ms0x1ms0x1ms0x1ms0x1ms0x1x1FF------------病房,我没有得到正确的周期值。这是预期的吗?在这种情况下,我的10useconds的延迟函数(周期Reg=20)不能正常工作。我应该使用更高频率的定时器时钟吗?

回帖(3)

王焕树

2020-4-27 14:17:40
你的指令钟有多快?请显示整个中断服务的代码。我猜想时间太长了。
举报

刘彦妤

2020-4-27 14:26:15
指令时钟也是2Mhz。请找到附带的ISR。我尝试过清空(几乎除了清空旗子)定时器ISR例程,为各种PR正则值捕获的周期如下:1ff->500usff->250us7f->128us3f->65us1f->64usf->59us。
举报

王焕树

2020-4-27 14:34:46
您试图在每个定时器滴答声上做太多的工作。使用2MHz指令时钟,您只能在64us中执行128条汇编指令,或在10us中执行20条指令。请查看编译器的汇编输出,并尝试计算每个int上正在执行多少条汇编指令。ErrPUT服务。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分