PIC单片机入门之定时器查询闪灯程序
PIC里面有3个定时器,比起51单片机多了一个定时器(哈哈)!分别为Timer0,Timer1,Timer2.分别说说每一个定时器吧:
Timer0是一个8为定时器,与看门狗公用一个8位预分配频器,时钟源可以选择位内部时钟和外部时钟,通过设置OPTION_REG寄存器的PS<2:0>位的值可以选择不同的预分频比,根据选择的预分频比和系统震荡频率就可以计时定时了。
Timer1是一个16位的计时器,有一个3位预分频器,也就是意味着最多实现1:8的分频比,(随便说一下,要实现比较精确的定时的话,最好选择小一点的预分频比,最好是不分频),Timer1也可以选择内部或者是外部时钟。
Timer2是一个8为定时器,至今没用过Timer2,感觉还是Timer1用的比较舒服。
下面贴上最基本得Timer0的定时器查询的闪灯程序,程序计时0.5秒灯闪一次。
#include
;程序采用可重定位的汇编编写
udata_shr
L1 res 1h ;为变量L1分配一个字节地址
reset code 0x0 ;程序开始地址
pagesel main
goto main
main
INITTMR0
LOOP
评论