GPT时钟
使用一个硬件来实现高精度延时
32位向上计数器, 可以捕获外部信号, 通过上升下降沿触发, 支持比较输出, 一共有三个通道, 以及产生中断
12位分频器, 可以使用ipg_clk=66MHz
两种运行模式:
- restart模式: 达到之后就重新开始计数, 只用于比较通道1
- freerun模式: 三个输出比较通道都使用, 但是不会回到0, 加满以后返回
有几种中断:
- 溢出中断, 计数满了的时候触发
- 输入捕获中断
- 输出比较中断
GPTx_CR: 用来配置bit0使能为, bit1是否使用上次关闭的时候的值, 1设置为0开始, bit6-8时钟源选择, 设置为1位66M, bit9设置定时器工作模式为0的时候restart, 15软件复位, 自动清零
GPTx_PR: 0-11分频设置
GPTx_SR: bit5: 状态寄存器, 溢出发生 bit4, bit3输入通道2, 3捕获, bit2-0输出比较, 也是复位使用的
GPTx_IR: 设置中断使能寄存器
GPTx_OCR:输出比较
GPTx_ICR :输入捕获
GPTx_CNT计数器