打印
[PIC®/AVR®/dsPIC®产品]

【8月晒板卡】+ 步步为营之开启定时器篇

[复制链接]
1149|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hu9jj|  楼主 | 2019-10-16 20:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hu9jj 于 2019-10-17 09:42 编辑

     之前曾发帖说过找不到定时器在哪设置,后来照EEWORLD论坛的帖子终于了解到在MCC中定时器的名称是TCA和TCB,在ATemge4809中有TCA0和TCB0~3共五个定时器,本次测试仅仅启用了TCA0(见下图):


    这个设置比较简单,只要设置延时的时间就行了,在默认主频下,延时可在600ns至19.661ms之间任意设置,后来在浏览坛友帖子后才知道只要设置主频的分频系统就可以改变延时的范围(参见下图):



    例如我们将主频进行1024分频,最大的延时就可以达到秒级。本次测试我设置的定时是10毫秒。
    然后在下面的Global Interrupt Enable打勾:



    之后在TCA0——OVFI后面打勾,配置就基本完成了,生成基本代码后,就可以添加用户代码了。我在主程序中定义了一个全局变量ten_ms,然后在tca0.c文件中的下面函数中添加ten_ms_++语句:

void TCA0_DefaultOVFIsrCallback(void)
{
    //Add your ISR code here
    ten_ms++;
}


    之后就可以在主循环中对ten_ms变量进行判断,达到预定值之后就改变LED的状态,实现LED的闪烁了:

        if((ten_ms*100)>delays){
            IO_PF5_Toggle();
            ten_ms = 0;
        }

    这样就实现了用定时器计数的方式达到延时目的,避免了使用低效率的空循环延时。


Timer_03.jpg (408.51 KB )

Timer_03.jpg

使用特权

评论回复
沙发
hu9jj|  楼主 | 2019-10-16 21:06 | 只看该作者
    这是定时器测试的项目压缩包,这个测试包括可以通过按键来调节LED闪烁的频率,每按一次键就改变一次延时时间,从100毫秒、200毫秒、400毫秒、到800毫秒四档变化。

Timer_example_1.X.rar (305.11 KB)

使用特权

评论回复
板凳
xuanhuanzi| | 2019-10-17 15:33 | 只看该作者
楼主还在继续,牛B

使用特权

评论回复
地板
hu9jj|  楼主 | 2019-10-17 22:16 | 只看该作者
xuanhuanzi 发表于 2019-10-17 15:33
楼主还在继续,牛B

还有中断、ADC等预定外设没有完成。

使用特权

评论回复
5
lcczg| | 2019-10-18 10:59 | 只看该作者
厉害了

使用特权

评论回复
6
xuanhuanzi| | 2019-10-21 22:58 | 只看该作者
楼主很赞,应该每次的板子都给楼主一个

使用特权

评论回复
7
hu9jj|  楼主 | 2019-10-22 09:20 | 只看该作者
xuanhuanzi 发表于 2019-10-21 22:58
楼主很赞,应该每次的板子都给楼主一个

谢谢夸奖!我会继续努力的。

使用特权

评论回复
8
CoolSilicon| | 2019-10-22 10:12 | 只看该作者
加油加油!!!看好你哦!

使用特权

评论回复
9
semonwong| | 2019-10-23 09:02 | 只看该作者
楼主有时间研究研究COG PRG CLC 比较器等等 方便的话加个qq  一起学习交流 我最近做项目也在捣鼓PIC

使用特权

评论回复
10
hu9jj|  楼主 | 2019-10-23 09:53 | 只看该作者
semonwong 发表于 2019-10-23 09:02
楼主有时间研究研究COG PRG CLC 比较器等等 方便的话加个qq  一起学习交流 我最近做项目也在捣鼓PIC ...

MCC还在学习中,还不熟练,其他插件暂时怕没有精力去学习,等以后准备学习时再向您请教。

使用特权

评论回复
11
characteristic| | 2019-10-24 15:41 | 只看该作者
图形化编辑界面很好用哇

使用特权

评论回复
12
hu9jj|  楼主 | 2019-10-24 19:23 | 只看该作者
等稍空时再了解一下,这段时间忙于做一个智能小车,目前还没有找到自动定位的方法。

使用特权

评论回复
13
夜晚小树林| | 2019-11-1 13:56 | 只看该作者
楼主 你是江西人吗? 我是江西吉安的,目前在深圳上班。

使用特权

评论回复
14
hu9jj|  楼主 | 2019-11-1 14:02 | 只看该作者
夜晚小树林 发表于 2019-11-1 13:56
楼主 你是江西人吗? 我是江西吉安的,目前在深圳上班。

我曾经在安福工作了10年,现在定居在上饶,咱们算是老乡了。

使用特权

评论回复
15
夜晚小树林| | 2019-11-1 14:17 | 只看该作者
hu9jj 发表于 2019-11-1 14:02
我曾经在安福工作了10年,现在定居在上饶,咱们算是老乡了。

是老乡 也是同行啊,我也是做单片机开发这一块的。  方不方便加个微信?

使用特权

评论回复
16
hu9jj|  楼主 | 2019-11-1 16:01 | 只看该作者
夜晚小树林 发表于 2019-11-1 14:17
是老乡 也是同行啊,我也是做单片机开发这一块的。  方不方便加个微信? ...

同行不敢当,我只是业余爱好,而且是刚入门,还得多向您学习。

使用特权

评论回复
17
夜晚小树林| | 2019-11-1 16:31 | 只看该作者
hu9jj 发表于 2019-11-1 16:01
同行不敢当,我只是业余爱好,而且是刚入门,还得多向您学习。

您太客气啦,你很有钻研精神啊,向您学习! 方便加下我QQ?192512985,方便交流

使用特权

评论回复
18
小明的同学| | 2019-11-4 09:07 | 只看该作者
做的不错,学习学习。

使用特权

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

本版积分规则

认证:Microchip
简介:让我们来为您提供帮助。我们可提供各种资源来帮助您解决一切问题。是否需要与我们的客户支持团队联系?您可以通过电话、在线聊天功能或电子邮件与他们联系。

151

主题

1059

帖子

11

粉丝