[Atmel] mbed环境下SAMR21开发板7:外部中断

[复制链接]
 楼主| ddllxxrr 发表于 2016-2-14 19:02 | 显示全部楼层 |阅读模式
根据用户指导,SAMR21的按键在PA28脚上,在我的印象里,SAM的每一个管脚都有中断的功能。

所以用它来产生外部中断:

mbed的外部中断对象如下:

类名
方法
用途
InterruptIn
InterruptIn(PinName pin);
构造函数,把pin管脚设成中断处理管脚
int read();
读取管脚的当前状态
void rise(void (*fptr)(void));
设置管脚上升沿触发的中断处理函数
void fall(void (*fptr)(void));
设置管脚下降沿触发的中断处理函数
void mode(PinMode pull);
设置管脚的模式,一般来说,上升沿处理应设成PullDown,下降沿触发设成PullUp








程序如下:

  1. #include "mbed.h"
  2. DigitalOut led(LED1);

  3. InterruptIn btn(PA28);

  4. void flip()

  5. {

  6.     led=!led;

  7. }

  8. int main() {

  9.     btn.fall(&flip);

  10.     while (1)

  11.                         ;

  12. }


把上述程序编译后下进SAMR21板子,按下按钮后LED反转一下:




本帖子中包含更多资源

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

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

2403

主题

6994

帖子

68

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