原创 【富芮坤物联网开发板评测】FR801xH官方Timer驱动代码

2020-4-12 20:29 3057 57 2 分类: MCU/ 嵌入式 文集: FR801xH
FR80xH芯片内有2个16位定时计数器,支持单周期或者周期模式。定时器框图如下:

可以通过4个寄存器去操作定时器。分别是加载寄存器,计数寄存器,控制寄存器和中断清除寄存器。


FR80xH芯片内存映射如下图


我们可以看到定时器的地址是0x50002000,所以我们看到代码中有关定时器的一些定义如下:

定时器寄存器相关定义和定时器定义如下:

这里定义了定时器类型,定时器类型里面包含了4个定时器寄存器的相关定义,然后我们就可以通过这个定时器类型struct timer操作定时器了。

官方driver_timer.h中提供了7个函数来操作定时器,分别如下:

void timer_run(uint32_t timer_addr);/*启动定时器,timer_addr只能是上面定义的TIMER0TIMER1*/

void timer_stop(uint32_t timer_addr);/*停止定时器*/

void timer_reload(uint32_t timer_addr);/*重新加载计数器*/

uint32_t timer_get_load_value(uint32_t timer_addr);/*获取计数器重载值*/

uint32_t timer_get_current_value(uint32_t timer_addr);/*获取计数器计数值*/

void timer_clear_interrupt(uint32_t timer_addr);/*定时器清中断*/

uint8_t timer_init(uint32_t timer_addr, uint32_t count_us, uint8_t run_mode);/*初始化定时器,count_us指明周期时间,run_mode指明定时器运行单周期模式还上周期模式*/

 值得说明的是,官方Demo对定时器的操作是通过系统层的定时器API函数去操作的,官方demo好像也没有开放有关这个系统层定时器操作的相关代码,然后就算是有了这个驱动文件,对于官方的Demo还是建议不要使用这个硬件层的定时器操作函数。希望官方开发系统的相关代码以便分析使用。


作者: axushilong, 来源:面包板社区

链接: https://mbb.eet-china.com/blog/uid-me-295363.html

版权声明:本文为博主原创,未经本人允许,禁止转载!

给作者打赏,鼓励TA抓紧创作!

赞赏支持
点赞 57
赞赏0

文章评论1条评论)

登录后参与讨论

nufuvcgx 2020-4-13 15:27

感谢楼主的分享
相关推荐阅读
axushilong 2020-06-24 17:26
【MM32 eMiniBoard】无源蜂鸣器驱动电路工作原理
eMiniBoard的电路板,板载一个无源蜂鸣器用于声音提醒,也可以DIY一些音乐播放器,另外板载唤醒按键用于从低功耗状态唤醒。我们先来看看无源蜂鸣器驱动电路的工作原理,如下图是无源蜂鸣器驱动电路这里...
axushilong 2020-06-24 16:45
【MM32 eMiniBoard】开箱体验
申请这个开发板快到一个月了,本想写个硬核的测评,无奈由于官方资料一直不好找,然后拖着一直没写这个测评话不多说,先上开箱图。正面照如下:背面照如下:图片拍照的时候姿势不对,倒了啊,朋友们可以点击图片旋转...
axushilong 2020-04-09 23:04
【富芮坤物联网开发板评测】 开箱体验
最近忙,申请到来富芮坤物联网开发板,来个开箱。纸盒包装,整齐完整。开箱后有两张说明,左侧是爱板网的测评活动说明,右侧是富芮坤物联网开发板相关资料说明。所有资料都是通过富芮坤官方微信公众号获得。我这里将...
我要评论
1
57
1
2
3
4
5
6
7
8
9
0
关闭 热点推荐上一条 /4 下一条