定点DSP的准确计时
out 64h,0fff8h ;停止DSP定时器
in 65h,tim ;读tim寄存器的数值
in 67h,tcr ;计算tcr中psc的值
lacl 67h
and #03c0h ;与03c0h获得psc的值
sacl 67h ;左移10位
lacc 67h,10
sach 67h
lacl #9
sub 67h
sacl 67h ;存psc中剩下的值(即使用了的)
lacl #07cfh
sub 65h
sacl 68h ;存prd-tim的值
lt 68h
mpy #10 ;TDDR+1
pac
sacl 68h
lacl 68h
add 67h
sacl 68h
lt 68h ;*0.1
lar ar1;#temptddr ;temptddr=0.1
mar *,ar1
mpy *
pac
add #1,14
sach 68h,1
lacl 68h
sfr
sacl 68h ;存定时器最后一次的时间单位为μs
lt 69h
lar ar2;#temptddr1 ;temptddr1=定时器的周期
mar *,ar2
mpy *
pac
add 68h ;加定时器最后一次的时间
sacl 68h ;存定时器总的所耗时间(占时间的多数)
lt 69h
lar ar2,#temptddr2 ;temptddr2=0.5*32767
mar *,ar2
mpy * ;计算定时器中断服务程序执行时间
pac
add #1,14
sach 67h,1
lacl 68h
add 67h ;加定时器中断服务程序执行时间
sacl 68h ;存总的时间
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论