上节复习(11.14) 1、方式2、方式0的特点? 2、定时/计数器的编程要点? 3、实验5方案优化问题
1、方式2、方式0的特点? 最大定时时间= (28- a)×12/fosc (s) 方式2:使用8位定时/计数器(TLx) 可自动重装载计数初值(THx) 最大定时时间= (28- a)×12/fosc (s) 最高计数频率=fosc/24 fosc 查询/中断 方式0:使用13位定时/计数器(THx7-0, TLx4-0) TLx高3位未用,需要拉开修正 与早期产品MCS-48单片机兼容 最大定时时间= (213- a)×12/fosc (s)
2、定时/计数器的编程要点? ① 设置TMOD——GATE、CT、M1、M0 ② 确定计数初值—— a =2n - t×fosc/12 ,THx=a/256,TLx=2%256 ③ 处理溢出结果方式:中断法、查询法 ④ 启动定时器:TR0 = 1 或 TR1= 1 ⑤ 定时/计数服务工作 ⑥ 为下次定时/计数做准备:清TFx标志(中断法除外) 重装载计数初值(方式2除外) 中断法 ETx =1; //开定时x中断,x=0或1 EA = 1; //开总中断 tx_srv () interrupt n { //n=1或3 … … } do {}while (!TFx) ; // 或while(!TFx); x=0或1 … … 查询法
3、实验5方案优化问题 标准方式存在定时准确度不高的问题(中断函数内任务较多)
优化方案1 ——减少定时中断函数长度,提高定时准确度。
优化方案2 ——利用自动重装载计数初值,进一步提高定时准确度
优化方案3 ——采用双重中断,将主函数从查询工作量中解脱出来 2