XuSenfeng

个人站

复读了,更新随缘,有的文件不全或者图片缺失具体看我的笔记库(https://github.com/XuSenfeng/note)


GPT时钟

目录

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计数器

使用