[PIC®/AVR®/dsPIC®产品] 【8月晒板卡】+ 步步为营之开启定时器篇

[复制链接]
1483|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;
        }

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


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| hu9jj 发表于 2019-10-16 21:06 | 显示全部楼层
    这是定时器测试的项目压缩包,这个测试包括可以通过按键来调节LED闪烁的频率,每按一次键就改变一次延时时间,从100毫秒、200毫秒、400毫秒、到800毫秒四档变化。



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
xuanhuanzi 发表于 2019-10-17 15:33 | 显示全部楼层
楼主还在继续,牛B
 楼主| hu9jj 发表于 2019-10-17 22:16 | 显示全部楼层
xuanhuanzi 发表于 2019-10-17 15:33
楼主还在继续,牛B

还有中断、ADC等预定外设没有完成。
lcczg 发表于 2019-10-18 10:59 | 显示全部楼层
厉害了
xuanhuanzi 发表于 2019-10-21 22:58 | 显示全部楼层
楼主很赞,应该每次的板子都给楼主一个
 楼主| hu9jj 发表于 2019-10-22 09:20 | 显示全部楼层
xuanhuanzi 发表于 2019-10-21 22:58
楼主很赞,应该每次的板子都给楼主一个

谢谢夸奖!我会继续努力的。
CoolSilicon 发表于 2019-10-22 10:12 | 显示全部楼层
加油加油!!!看好你哦!
semonwong 发表于 2019-10-23 09:02 | 显示全部楼层
楼主有时间研究研究COG PRG CLC 比较器等等 方便的话加个qq  一起学习交流 我最近做项目也在捣鼓PIC
 楼主| hu9jj 发表于 2019-10-23 09:53 | 显示全部楼层
semonwong 发表于 2019-10-23 09:02
楼主有时间研究研究COG PRG CLC 比较器等等 方便的话加个qq  一起学习交流 我最近做项目也在捣鼓PIC ...

MCC还在学习中,还不熟练,其他插件暂时怕没有精力去学习,等以后准备学习时再向您请教。
characteristic 发表于 2019-10-24 15:41 | 显示全部楼层
图形化编辑界面很好用哇
 楼主| hu9jj 发表于 2019-10-24 19:23 | 显示全部楼层
等稍空时再了解一下,这段时间忙于做一个智能小车,目前还没有找到自动定位的方法。
夜晚小树林 发表于 2019-11-1 13:56 | 显示全部楼层
楼主 你是江西人吗? 我是江西吉安的,目前在深圳上班。
 楼主| hu9jj 发表于 2019-11-1 14:02 | 显示全部楼层
夜晚小树林 发表于 2019-11-1 13:56
楼主 你是江西人吗? 我是江西吉安的,目前在深圳上班。

我曾经在安福工作了10年,现在定居在上饶,咱们算是老乡了。
夜晚小树林 发表于 2019-11-1 14:17 | 显示全部楼层
hu9jj 发表于 2019-11-1 14:02
我曾经在安福工作了10年,现在定居在上饶,咱们算是老乡了。

是老乡 也是同行啊,我也是做单片机开发这一块的。  方不方便加个微信?
 楼主| hu9jj 发表于 2019-11-1 16:01 | 显示全部楼层
夜晚小树林 发表于 2019-11-1 14:17
是老乡 也是同行啊,我也是做单片机开发这一块的。  方不方便加个微信? ...

同行不敢当,我只是业余爱好,而且是刚入门,还得多向您学习。
夜晚小树林 发表于 2019-11-1 16:31 | 显示全部楼层
hu9jj 发表于 2019-11-1 16:01
同行不敢当,我只是业余爱好,而且是刚入门,还得多向您学习。

您太客气啦,你很有钻研精神啊,向您学习! 方便加下我QQ?192512985,方便交流
小明的同学 发表于 2019-11-4 09:07 | 显示全部楼层
做的不错,学习学习。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

151

主题

1063

帖子

11

粉丝
快速回复 在线客服 返回列表 返回顶部