Zdravím,jsem tu nový a obracím se na Vás s radou ohledně mého malého,jednoduchého projektu,který mne trápí.
Ač jde opravdu o jednoduchý sketch,tak stejně mám někde chybu a jelikož se teprve učím,tak bych potřeboval tuto chybu najít 🙂
Dělá to následující – posílá přes BT hodnoty z teploměru,jenže po chvíli se zřejmě resetují proměnné a pokud je zrovna třeba 20st,tak uloží do obou hodnot (min i max),tuto hodnotu, i když tam předtím bylo MIN třeba 15st.
Když k tomuto dojde,tak jsem si všiml,že zabliká asi 3x i LED na arduinu UNO
MOC děkuji za vyřešení!!
#include <OneWire.h>
#include <DallasTemperature.h>
#include <SoftwareSerial.h>
#undef int
#define ONE_WIRE_BUS 2
SoftwareSerial bluetooth(8, 9); // RX, TX
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
int vyssi=-100;
int nizsi=100;
void setup(void)
{
bluetooth.begin(115200); // The Bluetooth Mate defaults to 115200bps
bluetooth.print(„$“); // Print three times individually
bluetooth.print(„$“);
bluetooth.print(„$“); // Enter command mode
delay(100); // Short delay, wait for the Mate to send back CMD
bluetooth.println(„U,9600,N“); // Temporarily Change the baudrate to 9600, no parity
// 115200 can be too fast at times for NewSoftSerial to relay the data reliably
bluetooth.begin(9600); // Start bluetooth serial at 9600
// Start up the library
sensors.begin();
}
/*
* Main function, get and show the temperature
*/
void loop(void)
{
sensors.requestTemperatures();
int teplota = (sensors.getTempCByIndex(0));
int temp = teplota;
delay(1000);
if(vyssi < temp)
vyssi=teplota;
if(nizsi > temp)
nizsi=teplota;
bluetooth.print(„MAX : „);
bluetooth.println(vyssi);
bluetooth.print(„NYNI: „);
bluetooth.println(temp);
bluetooth.print(„MIN : „);
bluetooth.println(nizsi);
delay(5000);
}