当前位置: 首页 > news >正文

IDF 定时器

1.1 概述
esp32的定时器有两组四个(每组两个),每个定时器都具有一个16bit的预分频器和一个32bit的向上/向下计数器

1.1.1 时钟
时钟来源是APB时钟,默认是80MHZ

1.1.2 预分频器
范围是0-65535,定义为0的时候是65536分频,定义为1和2的时候都是2分频

#include "driver/timer.h"
#include "esp_timer.h"// 定时器相关定义
#define TIMER_DIVIDER         800  // 80 MHz / 80 = 1 MHz, 1 tick = 1us
#define TIMER_SCALE           (TIMER_BASE_CLK / TIMER_DIVIDER)  // 转换为秒
#define TIMER_INTERVAL_US     100000  // 100ms = 100000us
// 定时器组和定时器选择
#define TIMER_GROUP TIMER_GROUP_0
#define TIMER_IDX   TIMER_0
uint8_t i_zh=0;
// 定时器中断处理函数 - 在中断中计算速度
static bool IRAM_ATTR timer_isr(void *args)
{// 清除中断状态timer_group_clr_intr_status_in_isr(TIMER_GROUP, TIMER_IDX);// 重新使能警报timer_group_enable_alarm_in_isr(TIMER_GROUP, TIMER_IDX);i_zh=1-i_zh;gpio_set_level(GPIO_NUM_12,i_zh);//led翻转return true;  // 返回true表示需要上下文切换
}// 初始化定时器
void timer_init_zh(void)
{timer_config_t config = {.divider = TIMER_DIVIDER,.counter_dir = TIMER_COUNT_UP,.counter_en = TIMER_PAUSE,.alarm_en = TIMER_ALARM_EN,.auto_reload = TIMER_AUTORELOAD_EN,};// 初始化定时器timer_init(TIMER_GROUP, TIMER_IDX, &config);// 设置定时器初始值timer_set_counter_value(TIMER_GROUP, TIMER_IDX, 0);// 设置警报值timer_set_alarm_value(TIMER_GROUP, TIMER_IDX, TIMER_INTERVAL_US);// 启用中断timer_enable_intr(TIMER_GROUP, TIMER_IDX);// 注册中断处理函数//timer_isr_register(TIMER_GROUP, TIMER_IDX, timer_isr, NULL, ESP_INTR_FLAG_IRAM, NULL);timer_isr_callback_add(TIMER_GROUP, TIMER_IDX, timer_isr, 0, 1);//注册中断服务函数// 启动定时器timer_start(TIMER_GROUP, TIMER_IDX);ESP_LOGI(TAG, "Timer initialized with interval: %d us", TIMER_INTERVAL_US);
}

http://www.dtcms.com/a/471129.html

相关文章:

  • 怎么做网站引流做网站服务器需要自己提供吗
  • 烟台市牟平区建设局网站石家庄今天最新新闻头条
  • 天津市做网站的公司有哪些ppt模板免费下载完整版免费网站
  • “数据化学习者”的存在论阐释:量化自我对学习主体性的形塑与异化
  • UG NX二次开发(Python)-tag_t转换为int
  • HOW - 如何使用 bundle-analyzer 工具优化包体积
  • 手机站建设o2o商城网站系统开发
  • 国产三维CAD皇冠CAD(CrownCAD)在「汽车零部件」建模教程:发动机零件
  • 中国网站的建设无锡企业做网站
  • systemd-journald和rsyslogd日志配置详解
  • figma打开编辑器时发生错误
  • 网站备案有效期知乎问答网站开发教程
  • ArkTS 与 TypeScript:鸿蒙生态下的语言演进与实践指南
  • AI 赋能 IBMS 集成系统:从 “数据集成中枢” 到 “智慧决策大脑” 的跃升
  • 做医疗网站颜色选择杭州网页设计招聘网
  • 力扣面试经典150题day3第五题(lc69),第六题(lc189)
  • 做网站去哪好盘锦威旺做网站建设
  • 字符串相关的方法有哪些?
  • 标签预制体上的组件
  • cms免费企业网站湖南网站模板建站
  • 【流氓软件】流氓软件及处理方法
  • 网站开发职业怎么经营网店生意才会好
  • 自动化脚本矩阵运营
  • 《Effective Java》第一条:用静态工厂方法代替构造器
  • 怎么做可以访问网站连接加密互联网营销模式
  • Diff-Shadow阴影去除
  • 怎么去接网站来做天津手机网站建设制作
  • 引擎搜索入口aso优化重要吗
  • 做外贸 需要做网站吗知名网站定制报价
  • 四川刚刚发布的最新新闻seo标题优化