1391|1

1万

帖子

15

资源

版主

[ESP32-Audio-Kit音频开发板测评]六、按键测试 [复制链接]

我发现Arduino的例程比较有意思,你可以把它考出来,另起个命,或放到自己的文件夹下。

我就把按键中断那个考出来。到我自己的目录下,这样好改。

查了一下原理图:

esp3210.jpg

 

查到KEY5,KEY6,对应着IO18和IO5,那还糊途什么改写如下:

#include <Arduino.h>
#include <FunctionalInterrupt.h>

#define BUTTON1 18
#define BUTTON2 5

class Button
{
public:
	Button(uint8_t reqPin) : PIN(reqPin){
		pinMode(PIN, INPUT_PULLUP);
		attachInterrupt(PIN, std::bind(&Button::isr,this), FALLING);
	};
	~Button() {
		detachInterrupt(PIN);
	}

	void IRAM_ATTR isr() {
		numberKeyPresses += 1;
		pressed = true;
	}

	void checkPressed() {
		if (pressed) {
			Serial.printf("Button on pin %u has been pressed %u times\n", PIN, numberKeyPresses);
			pressed = false;
		}
	}

private:
	const uint8_t PIN;
    volatile uint32_t numberKeyPresses;
    volatile bool pressed;
};

Button button1(BUTTON1);
Button button2(BUTTON2);


void setup() {
    Serial.begin(115200);
}

void loop() {
	button1.checkPressed();
	button2.checkPressed();
}

运行结果:

esp326.jpg

 

深深感到Arduino是个不错的东东,缺点是不能JTAG调试,只能调它的万能的库。

此帖出自RF/无线论坛
个人签名http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr

回复

2万

帖子

339

资源

版主

Arduino确实个不错的开源东西,功能现在很强了


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

最新文章 更多>>
    关闭
    站长推荐上一条 1/8 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表