Here the hold code and my aia file
#include <SimpleDHT.h>
int pinDHT11 = 22;
SimpleDHT11 dht11 (pinDHT11);
#include <Adafruit_Sensor.h>
#include <Stepper.h>
#include "BluetoothSerial.h"
#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)
#error Bluetooth is not enabled! Please run `make menuconfig` to and enable it
#endif
BluetoothSerial SerialBT;
//#include <Servo.h>
#define max_char 12
char message[max_char]; // stores you message
char r_char; // reads each character
byte cindex = 0; // defines the position into your array
int i;
//RGB PWM
#define LED_R 25 // Define LED_R as 25 for LED Blue
// setting PWM properties
const int LED_PWM_Channel_1 = 1; // define LED_PWM_Channel_1 as
#define LED_G 26 // Define LED_G as 26 for LED Blue
// setting PWM properties
const int LED_PWM_Channel_2 = 2; // define LED_PWM_Channel_2 as
#define LED_B 27 // Define LED_B as 27 for LED Blue
// setting PWM properties
const int LED_PWM_Channel_3 = 3; // define LED_PWM_Channel_3 as 3
const int freq = 1000; // 1kHz flash
const int resolution = 8; // set resolution as 8 bit. That is 255 levels.
//RGB PWM
*/
bool testmode=1;
void setup() {
Serial.begin(115200);
SerialBT.begin("WongYatHei");
//RGB red PWM
ledcSetup(LED_PWM_Channel_1, freq, resolution); // set PWM channel, frequency and resolution as above defined
ledcAttachPin(LED_R, LED_PWM_Channel_1); // map LED_R(25, red LED) to PWM Channel 1
//RGB green PWM
ledcSetup(LED_PWM_Channel_2, freq, resolution); // set PWM channel, frequency and resolution as above defined
ledcAttachPin(LED_G, LED_PWM_Channel_2); // map LED_G(26, green LED) to PWM Channel 2
//RGB blue PWM
ledcSetup(LED_PWM_Channel_3, freq, resolution); // set PWM channel, frequency and resolution as above defined
ledcAttachPin(LED_B, LED_PWM_Channel_3); // map LED_B(27, blue LED) to PWM Channel 3
//pin for direction
pinMode(19, OUTPUT); //motor1
pinMode(21, OUTPUT); //motor1
pinMode(4, OUTPUT); //motor2
pinMode(16, OUTPUT); //motor2
pinMode(13, OUTPUT);
pinMode(15, OUTPUT);
pinMode(22, OUTPUT);
pinMode(25, OUTPUT);
pinMode(26, OUTPUT);
pinMode(27, OUTPUT);
pinMode(32, OUTPUT);
pinMode(33, OUTPUT);
pinMode(12, OUTPUT);
pinMode(14, OUTPUT);
}
void loop() {
if (SerialBT.available()) {
char rxdata = SerialBT.read();
Serial.write(rxdata);
if(rxdata == 't') {
byte temperature = 0;
byte humidity =0;
int err = SimpleDHTErrSuccess;
if ((err = dht11.read(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
Serial.print("Read DHT11 failed, err="); Serial.print(SimpleDHTErrCode(err));
Serial.print(","); Serial.println(SimpleDHTErrDuration(err)); delay(1000);
return;
}
Serial.print((int)humidity);
SerialBT.print((int)humidity);
Serial.print((int)temperature);
SerialBT.print((int)temperature);
}
if (rxdata == 'l') digitalWrite(13, !digitalRead(13));
if (rxdata == 'r') digitalWrite(15, !digitalRead(15));
if (rxdata == '1') digitalWrite(25, !digitalRead(25));
if (rxdata == '2') digitalWrite(26, !digitalRead(26));
if (rxdata == '3') digitalWrite(27, !digitalRead(27));
if (rxdata == '4') digitalWrite(14, !digitalRead(14));
if (rxdata == '5') digitalWrite(12, !digitalRead(12));
//for direction
if (rxdata == '+'){
digitalWrite(16, LOW);
digitalWrite(19, LOW);
digitalWrite(21, LOW);
digitalWrite(4, LOW);
digitalWrite(16, HIGH);
delay(1500);
digitalWrite(19, HIGH);
delay(1500);
}
if (rxdata == '-') {
digitalWrite(16, LOW);
digitalWrite(19, LOW);
digitalWrite(21, LOW);
digitalWrite(4, LOW);
digitalWrite(21, HIGH);
delay(1500);
digitalWrite(4, HIGH);
delay(1500);
}
if (rxdata == 'L'){
digitalWrite(19, LOW);
digitalWrite(21, LOW);
digitalWrite(4, LOW);
digitalWrite(16, HIGH);
delay(1500);
}
if (rxdata == '8'){
digitalWrite(19, LOW);
digitalWrite(4, LOW);
digitalWrite(16, HIGH);
delay(1500);
digitalWrite(21, HIGH);
delay(1500);
}
if (rxdata == 'R'){
digitalWrite(16, LOW);
digitalWrite(21, LOW);
digitalWrite(4, LOW);
digitalWrite(19, HIGH);
delay(1500);
}
if (rxdata == '9'){
digitalWrite(21, LOW);
digitalWrite(16, LOW);
digitalWrite(19, HIGH);
delay(1500);
digitalWrite(4, HIGH);
delay(1500);
}
if (rxdata == 'S'){
digitalWrite(19, LOW);
digitalWrite(21, LOW);
digitalWrite(4, LOW);
digitalWrite(16, LOW);
}
if (rxdata == 'f'){
digitalWrite(25, LOW);
digitalWrite(26, LOW);
digitalWrite(27, LOW);
digitalWrite(13, LOW);
digitalWrite(15, LOW);
}
//RGB red PWM
for (int ColorLevel=0; ColorLevel < 255; ColorLevel++) {
ledcWrite(LED_PWM_Channel_1, ColorLevel); // set LED bright level
delay(10);
};
ledcWrite(LED_PWM_Channel_1, 100); // set LED bright level 100/255
delay(1000); // hold 1 second
ledcWrite(LED_PWM_Channel_1, 30); // set LED bright level 30/255
delay(2000); // hold 2 second
//RGB green PWM
for (int ColorLevel=0; ColorLevel < 255; ColorLevel++) {
ledcWrite(LED_PWM_Channel_2, ColorLevel); // set LED bright level
delay(10);
};
ledcWrite(LED_PWM_Channel_2, 100); // set LED bright level 100/255
delay(1000); // hold 1 second
ledcWrite(LED_PWM_Channel_2, 30); // set LED bright level 30/255
delay(2000); // hold 2 second
//RGB blue PWM
for (int ColorLevel=0; ColorLevel < 255; ColorLevel++) {
ledcWrite(LED_PWM_Channel_3, ColorLevel); // set LED bright level
delay(10);
};
ledcWrite(LED_PWM_Channel_3, 100); // set LED bright level 100/255
delay(1000); // hold 1 second
ledcWrite(LED_PWM_Channel_3, 30); // set LED bright level 30/255
delay(2000); // hold 2 second
}
}
WongYatHei_BTcar_project.aia (799.9 KB)