在很多设计中需要有精彩而实用的LED闪烁来表示设备工作正常与否和工作状态。在一些实时性要求不高的设计中可以用插入延时来控制LED闪烁。
它的缺点现而易见:
1、LED闪烁方式反映慢。
2、在延时过程不能干其它工作(中断除外).浪费了资源。
3、代码雍长,真正控制LED就几个个指令,其它的延时代码占了99%的空间。
如果用TMRI或TMR2来做一个时钟,上面的种种缺点就可以避免。
下面是用TMR1作时钟的C代码(RB1、RB2、RB3控制LED)示例:
这样的框架对于基于要求实时性高的软件查询的程序是很有效的。