位置:51电子网 » 技术资料 » 嵌入式系统

复费率电能表程序

发布时间:2012/6/13 19:34:48 访问次数:1445

    复费率电能表程序主要BT8376EPF由主程序、定时器TO溢出中断处理子程序、定时器T1输入捕捉(红外接收)中断处理子程序、定时器T2溢出中断处理子程序、INTO外部中断处理子程序和显示子程序等部分组成。
    大部分程序前几期的文章已经介绍,有些也只是作了一些改动,故这些部分就不介绍了,详细的源程序可以从Ⅸ无线图2“调时”和“调分”对应的红外脉冲信号电》杂志网站下载,这里主要介绍一下用作时钟计时的定时器T2溢出中断处理子程序,见程序2。
    单片机初始化时定时器T2的时钟源预分频系数取1024,计数器初始取Ox06,计满250个数即产生溢出中断,这样定时时间为:0.125US×1024×250=32000Us=32ms,中断1875次的时问正好是1分钟。
    好多人认为用定时器计时做时钟精度不高,其实这是一个误区,精度不高的原因是使用不当,主要原因有两个:一是在时钟源没有使用预分频器的情况下,中断处理时没有对响应中断、现场保护和计数器重赋初始值所需的时间进行精确补偿,就AVR单片机而言这些工作通常需要1 0多个时钟周期来完成。以使用1 6位定时器、定时时间8ms(使用8MHz晶体,定时器时钟源不预分频时的最大定时时间为8.192ms)为例,不补偿的话1天时间将至少慢(0.125×10/8000)×3600×24=13,5(s),这是因为计数器在计数器重新赋初始值时已少计了10多个数,下次溢出的时间也就推迟了,使2次中断产生的间隔比理论计算值长。如果时钟源使用分频系数为16以上的预分频器情况就不同了,因为在响应中断的过程中预分频器并没有停止计数,在中断处理程序对计数器重新赋初始值时预分频器还没有产生进位,所以没有丢失数据。这里T2时钟源采用1 024预分频,自然不会因少计数而产生计时误差。在定时器时钟源不使用预分频器的情况下,建议大家将定时器设置为CTCI作模式,使用比较匹配中断,这样在产生比较匹配中断时定时器的计数器是立即自动清零酌,不会造成计数丢失。
    定时精度不高的第二个原因是中断程序使用不当,一是本身中断程序处理的时间大于定时时间,造成不能及时响应下一次中断;二是在其他中断程序处理过程中发了定时中断,又没有使用中断嵌套提高定时中断的级别(AVR单片机的硬件缺省方式不支持高优先级中断打断低优先级中断)。
    复费率电能表程序主要BT8376EPF由主程序、定时器TO溢出中断处理子程序、定时器T1输入捕捉(红外接收)中断处理子程序、定时器T2溢出中断处理子程序、INTO外部中断处理子程序和显示子程序等部分组成。
    大部分程序前几期的文章已经介绍,有些也只是作了一些改动,故这些部分就不介绍了,详细的源程序可以从Ⅸ无线图2“调时”和“调分”对应的红外脉冲信号电》杂志网站下载,这里主要介绍一下用作时钟计时的定时器T2溢出中断处理子程序,见程序2。
    单片机初始化时定时器T2的时钟源预分频系数取1024,计数器初始取Ox06,计满250个数即产生溢出中断,这样定时时间为:0.125US×1024×250=32000Us=32ms,中断1875次的时问正好是1分钟。
    好多人认为用定时器计时做时钟精度不高,其实这是一个误区,精度不高的原因是使用不当,主要原因有两个:一是在时钟源没有使用预分频器的情况下,中断处理时没有对响应中断、现场保护和计数器重赋初始值所需的时间进行精确补偿,就AVR单片机而言这些工作通常需要1 0多个时钟周期来完成。以使用1 6位定时器、定时时间8ms(使用8MHz晶体,定时器时钟源不预分频时的最大定时时间为8.192ms)为例,不补偿的话1天时间将至少慢(0.125×10/8000)×3600×24=13,5(s),这是因为计数器在计数器重新赋初始值时已少计了10多个数,下次溢出的时间也就推迟了,使2次中断产生的间隔比理论计算值长。如果时钟源使用分频系数为16以上的预分频器情况就不同了,因为在响应中断的过程中预分频器并没有停止计数,在中断处理程序对计数器重新赋初始值时预分频器还没有产生进位,所以没有丢失数据。这里T2时钟源采用1 024预分频,自然不会因少计数而产生计时误差。在定时器时钟源不使用预分频器的情况下,建议大家将定时器设置为CTCI作模式,使用比较匹配中断,这样在产生比较匹配中断时定时器的计数器是立即自动清零酌,不会造成计数丢失。
    定时精度不高的第二个原因是中断程序使用不当,一是本身中断程序处理的时间大于定时时间,造成不能及时响应下一次中断;二是在其他中断程序处理过程中发了定时中断,又没有使用中断嵌套提高定时中断的级别(AVR单片机的硬件缺省方式不支持高优先级中断打断低优先级中断)。

上一篇:复费率电能表电路

上一篇:制作与使用

相关技术资料
6-13复费率电能表程序

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!