打印
[学习笔记]

AC781x TIMER模块学习笔记

[复制链接]
16159|27
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 RunningX 于 2019-7-16 17:28 编辑

简介
TIMER模块是可用于定时发起中断和触发的定时器。


特性

1.定时器能够生成触发脉冲;
2.定时器能够生成中断;
3.可屏蔽中断;
4.每个定时器都具有独立的超时周期;
5.支持最多8 个通道(TIMER0,TIMER1通道为32位计数器,其他6个通道为16位计数器);
6.所有通道均为链( Chain)模式(注意:TIMER0不能链接至任何其他定时器);

寄存器定义


详细的学习笔记代码,可下载附件,查阅《AC781X TIMER模块应用笔记》,通过配置TIMER_SAMPLE_SELECT来实现
不同功能。



功能1:TIMER0实现10ms计时;TIMER1实现1s计时;TIMER2、TIMER3、TIMER4级联实现1分钟计时;TIMER5、TIMER6、TIMER7级联实现1小时计时。
功能2:TIMER1实现LED以0.5Hz闪烁
功能3:通过TIMER0计算按键的按下时间




timer_sample.rar (125.02 KB)




使用特权

评论回复

相关帖子

沙发
TechHolder| | 2019-7-16 19:43 | 只看该作者
棒棒嗒

使用特权

评论回复
板凳
心口上的朱砂痣| | 2019-12-4 16:54 | 只看该作者
感谢分享

使用特权

评论回复
地板
wisengang| | 2021-6-8 14:03 | 只看该作者
《AC781X TIMER模块应用笔记》里的《ATC_AC781x_ReferenceManual_CH.pdf》在哪里下载呢

使用特权

评论回复
5
wisengang 发表于 2021-6-8 14:03
《AC781X TIMER模块应用笔记》里的《ATC_AC781x_ReferenceManual_CH.pdf》在哪里下载呢

http://www.autochips.com/jk/MCU1/info_225.aspx?pid=531&typeid=225

使用特权

评论回复
6
单片小菜| | 2021-6-8 16:43 | 只看该作者
感谢分享笔记

使用特权

评论回复
7
便携手到老| | 2021-6-8 17:08 | 只看该作者
基础知识确实很重要的,夯实基础。

使用特权

评论回复
8
huquanz711| | 2021-6-8 18:55 | 只看该作者
写的详细,赞一下。

使用特权

评论回复
9
秋风起302418| | 2021-8-25 15:52 | 只看该作者
请教下各位要怎么开启SysTick_Handler的中断?

使用特权

评论回复
10
RunningX|  楼主 | 2021-8-25 17:57 | 只看该作者
秋风起302418 发表于 2021-8-25 15:52
请教下各位要怎么开启SysTick_Handler的中断?
__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)
{
  if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk)
  {
    return (1UL);                                                   /* Reload value impossible */
  }

  SysTick->LOAD  = (uint32_t)(ticks - 1UL);                         /* set reload register */
  NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Interrupt */
  SysTick->VAL   = 0UL;                                             /* Load the SysTick Counter Value */
  SysTick->CTRL  = SysTick_CTRL_CLKSOURCE_Msk |
                   SysTick_CTRL_TICKINT_Msk   |
                   SysTick_CTRL_ENABLE_Msk;                         /* Enable SysTick IRQ and SysTick Timer */
  return (0UL);                                                     /* Function successful */
}


可以参考m3内核的sysTick配置,SysTick_CTRL_TICKINT_Msk就是中断设置位

使用特权

评论回复
11
七毛钱| | 2021-9-1 10:43 | 只看该作者
谢谢分享,笔记很棒

使用特权

评论回复
12
littlelida| | 2021-9-1 11:46 | 只看该作者
不错啊~感谢

使用特权

评论回复
13
kiwis66| | 2021-9-7 16:11 | 只看该作者
使能,置中断标志位

使用特权

评论回复
14
海滨消消| | 2021-9-8 16:17 | 只看该作者
好笔记,赞一个

使用特权

评论回复
15
我是强子吖| | 2022-7-22 09:39 | 只看该作者
为什么使用TIMER2定时器无法定时实现LED2的亮灭呢,而我换成了TIMER1定时器,LED灯就能正常的亮灭呢?

使用特权

评论回复
16
永远不停| | 2022-7-25 14:34 | 只看该作者
我是强子吖 发表于 2022-7-22 09:39
为什么使用TIMER2定时器无法定时实现LED2的亮灭呢,而我换成了TIMER1定时器,LED灯就能正常的亮灭呢? ...


你底下的初始化配置函数,还是写的TIMER1,最后两句。


使用特权

评论回复
17
shjuturt| | 2022-7-31 15:52 | 只看该作者
马住,收藏起来看

使用特权

评论回复
18
zyj213| | 2022-7-31 15:52 | 只看该作者
谢谢楼主,很实用

使用特权

评论回复
19
deliahouse887| | 2022-9-4 22:09 | 只看该作者
定时器是必须要掌握的

使用特权

评论回复
20
sanfuzi| | 2022-9-5 14:09 | 只看该作者
这个使用滴答定时器了吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

42

主题

223

帖子

4

粉丝