|
本帖最后由 lmzsj123 于 2020-12-23 20:43 编辑
现在这个程序可以运行,下一步想加一个屏幕可以显示按键码,有没有大神可以帮忙改进一下代码。
屏幕是32位oled,I2C接口。
/* 徐老板共享代码不可商用
* 转发需取得徐老板同意并备注出处
*/
//先加载RCswitch射频库
#include <RCSwitch.h>
RCSwitch mySwitch = RCSwitch();
#define BLINKER_WIFI
#include <Blinker.h>
char auth[] = "********";
char ssid[] = "********";
char pswd[] = "********";
// 新建组件对象
BlinkerText Textcode("code"); //文件显示的数据键名
BlinkerButton btn_CODE("btn-CODE"); //发射按键
bool stu = 0;
void btn_CODE_callback(const String & state)
{
BLINKER_LOG("get button_state:",state);
mySwitch.send(state.toInt(), 24);//发送code按键中的数据
delay(1000);
}
void HEARTBEAT()
{
}
void setup() {
Blinker.begin(auth, ssid, pswd);
Serial.begin(9600);
mySwitch.enableReceive(5); // 433接收数据引脚( D1)
mySwitch.enableTransmit(13);// 发射数据引脚( D7)
BLINKER_DEBUG.stream(Serial);
pinMode(D0,OUTPUT);
digitalWrite(D0,HIGH);
btn_CODE.attach(btn_CODE_callback);
}
void loop() {
Blinker.run();
if (mySwitch.available()) {
//app显示数据
Textcode.print(mySwitch.getReceivedValue(), mySwitch.getReceivedBitlength());
//监视器显示数据
Serial.print("Received ");
Serial.print( mySwitch.getReceivedValue() );
Serial.print(" / ");
Serial.print( mySwitch.getReceivedBitlength() );
Serial.print("bit ");
Serial.print("Protocol: ");
Serial.println( mySwitch.getReceivedProtocol() );
mySwitch.resetAvailable();
}
}
|
|