pic单片机怎么算中断时间呢?

我用的是PIC16F877A 开始用的是4M的 后改了24M的程序不变 我感觉中断时间应该变长 但实际变短了 应该怎么算时间呢 T2CON=0X05; // 预分频16, TMR2ON允许 RP2=0XF9; //设置周期 TMR2=0x00; //这里周期多少?怎么算 应该怎么算中断时间 中断频率等问题呢?

第1个回答  2018-04-18
PIC16F877A最高工作频率20MHz
第2个回答  2013-11-27
关于PIC单片机T0定时器的计算是这样的4M晶振的时候一个时钟周期是1/f(f为时钟频率即4M)。也就是说一个时钟周期是T=1/f=0.00000025s=0.25us。PIC16f877是一个指令周期等于四个时钟周期就是说一个指令周期=4*T=1us。 而T0这个时间寄存器TMR0在装入初值后就自动加1 每进行一个加一过程就消耗一个指令周期如果TMR0初始值为0x00 就需要255us产生中断 如果初始值为0x37(对应10进制为55) 这时就需要 200us产生一个中断明白了没?本回答被网友采纳
第3个回答  2013-11-27
用mplab软件模拟调试环境里的跑表,来跑一下,一清二楚的
第4个回答  2013-11-27
我用的是PIC16F877A 开始用的是4M的 后改了24M的程序不变 我感觉中断时间应该变长 但实际变短了 应该怎么算时间呢 T2CON=0X05; // 预分频16, TMR2ON允许 RP2=0XF9; //设置周期 TMR2=0x00; //这里周期多少?怎么算 应该怎么算中断时间 中断频率等问题呢?