- #include <OneWire.h>
- #include <DallasTemperature.h>
- // Data wire is plugged into port 2 on the Arduino
- #define ONE_WIRE_BUS 12
- int jia=6; //设定控制LED的数字IO脚
- int temPin=13;
- int huan=7;//设置控制按键的数字IO脚
- int shi=3;
- // Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
- OneWire oneWire(ONE_WIRE_BUS);
- DallasTemperature sensors(&oneWire);
- int i;//wen
- int j;//guang
- int t;
- char val;
- void setup( )
- {
- Serial.begin(9600);
- sensors.begin();
- pinMode(jia,OUTPUT);//设置数字IO引脚为输出模式
- pinMode(huan,OUTPUT);//设定数字IO口的模式,OUTPUT 为输出
- // start serial port
- pinMode(temPin,OUTPUT);
- }
- void loop()
- {
- int t=26;
- int i=0;
- int j=0;
- val=Serial.read();
- if(val=='A')
- {
- digitalWrite(shi,HIGH);
- delay(5000);
- digitalWrite(shi,LOW);
- }
- else if(val=='B')
- {
- digitalWrite(huan,HIGH);
- delay(60000);
- digitalWrite(huan,LOW);
- }
- else if(val=='C')
- {
- digitalWrite(jia,HIGH);
- delay(5000);
- digitalWrite(jia,LOW);
- }
-
- else if(val=='D')
- {
- sensors.requestTemperatures();
- Serial.print("Temperature for the device 1 (index 0) is: ");
- Serial.println(sensors.getTempCByIndex(0));
- }
- else if(val=='T')
- {
- Serial.print("SET Temperature is: ");
- Serial.println("t");
- }
- else if(val=='1')
- {
- t=21;
- }
- else if(val=='2')
- {
- t=22;
- }
- else if(val=='3')
- {
- t=23;
- }
- else if(val=='4')
- {
- t=24;
- }
- else if(val=='5')
- {
- t=25;
- }
- else if(val=='6')
- {
- t=26;
- }
- else if(val=='7')
- {
- t=27;
- }
- else if(val=='8')
- {
- t=28;
- }
- else if(val=='9')
- {
- t=29;
- }
- else if(val=='10')
- {
- t=30;
- }
- if(i>100)
- {
- digitalWrite(jia,HIGH);
- delay(5000);
- digitalWrite(jia,LOW);
- }
- if(j>100)
- {
- digitalWrite(huan,HIGH);
- delay(60000);
- digitalWrite(huan,LOW);
- }
-
- if(analogRead(12)>150)
- {i=i+1;}
- sensors.requestTemperatures();
- if(sensors.getTempCByIndex(0)<t)
- j=j+1;
- delay(5);
- }
复制代码
这是自己写的一个蓝牙控制程序,很粗糙,拷到arduino上后很不稳定,怎样优化一下呢
|