嵌入式学习记录 [定时器] ——8位单片机 FC2522
1、使用定时器前需要了解的
2、在使用手册上找到定时器的说明
根据使用手册,T0C是一个8位的 T0定时器寄存器,容量为2⁸(256Bit,0-255)。将二进制数据写入T0C的地址 (0xD9) 就可以设置该寄存器的 装填初值。
工作逻辑:从装填初值开始,每次向上加一,到达容量上限后溢出,可进入定时器溢出中断 随后再次回到装填初值。
时钟周期计算公式: Tout= ((arr+1)*(psc+1))/Tclk:
- arr: 重装的值(心跳的次数),通常为(容量-装填初值)
- psc: 分频值
- Tclk: 时钟频率
假设:外挂12MHZ的晶振,现在需要大约10ms的时钟,即每过10ms完成一次装填并溢出,根据公式(256-210)*256/12000000=0.00098133333333333秒,约等于10ms,所以需要设置装填初值为210,分频系数为256。
T0C = 210 (十进制)1101 0010 (二进制) 0xD2(十六进制)
T0M = 0x80 (1000 0000 )根据说明手册可知 1–定时器开 000–256分频 0000–空