打印
[Atmel]

mbed环境下SAMR21开发板12:定时器5

[复制链接]
643|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我们在使用Ticker对象的过程中还可以随时对Ticker设定的间隔进行更改,更改后的时间是即时生效的,如下面的代码,我们发现,用户每按一次按钮,led1的闪烁频率就会加快一倍。


下面的程序,充分利用SAM R21板子上的用户按键和LED。每当按下一次LED闪的速度就快一倍。




程序如下:


#include "mbed.h"
DigitalOut led1(LED1);

InterruptIn btn(PA28);

Ticker timer_led1;

float interval;

void led1flip()

{

    led1=!led1;

}

void changefred()

{

    interval=interval /2.0;

    timer_led1.attach(&led1flip,interval);

}

int main() {

    interval=2;

    btn.fall(&changefred);

    timer_led1.attach(&led1flip,interval);

    while (1);



}




以下是程序下载的截图:


下载后,每按一下用户按钮,LED闪的速度就快一倍,验证程序成功。

相关帖子

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

本版积分规则

个人签名:http://shop34182318.taobao.com/ http://shop562064536.taobao.com

2398

主题

6955

帖子

67

粉丝