Вход
Поиск
Последние темы
Статистика
Всего зарегистрированных пользователей: 13Последний зарегистрированный пользователь: Василий68
Наши пользователи оставили сообщений: 32 в 10 сюжете(ах)
Прибор температуры на ардуино и олед дисплее
Участников: 2
ФОРУМ по РАДИОЭЛЕКТРОНИКЕ :: Начало :: АВТО :: АРДУИНО
Страница 1 из 1
Прибор температуры на ардуино и олед дисплее
Ардуино это платформа всяких разных возможностей , с помощью Ардуино можно сделать много чего интересного.Первый мой прибор на АРДУИНО конечно мой скетч это сляпаны воедино два разных .
Сам скетч:
// Для дисплея
#include <spi.h>
#include <wire.h>
#include <adafruit_GFX.h>
#include <adafruit_SSD1306.h>
// звонок
int byze = 2;
//Подключаем дисплей к ардуино NANO V3:
#define OLED_MOSI 9
#define OLED_CLK 10
#define OLED_DC 11
#define OLED_CS 12
#define OLED_RESET 5
Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);
//разрешение картинки в пикселях
#define lada_sb_logo_width 73
#define lada_sb_logo_height 32
//картинка в формате ХВМ
static const unsigned char PROGMEM lada_sb_logo_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xfa, 0xff, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x0b,
0x0e, 0xa0, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x1e, 0x00,
0xf0, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x7c, 0x3e, 0x00, 0x00, 0x0e,
0x00, 0x00, 0x00, 0x18, 0xe0, 0x3f, 0x3f, 0x00, 0x08, 0x70, 0x00, 0x00,
0x00, 0x06, 0xfc, 0x3f, 0x7f, 0x00, 0xfc, 0xc0, 0x01, 0x00, 0x80, 0x81,
0xff, 0x3f, 0x7f, 0x00, 0xfc, 0x03, 0x06, 0x00, 0x60, 0xe0, 0xff, 0x3f,
0x3f, 0x00, 0xfe, 0x0f, 0x0c, 0x00, 0x30, 0xf8, 0xff, 0x9f, 0x3f, 0x00,
0xfe, 0x3f, 0x10, 0x00, 0x08, 0xfc, 0xff, 0x9f, 0x3f, 0x00, 0xff, 0x7f,
0x20, 0x00, 0x0c, 0xfe, 0xff, 0x9f, 0x3f, 0x00, 0xff, 0xff, 0x41, 0x00,
0x04, 0xff, 0xff, 0xdf, 0x1f, 0x80, 0xff, 0xff, 0x81, 0x00, 0x82, 0xff,
0xff, 0xcf, 0x1f, 0xc0, 0xff, 0xff, 0x83, 0x00, 0x82, 0xff, 0xff, 0xcf,
0x0f, 0xe0, 0xff, 0xff, 0x87, 0x01, 0x82, 0xff, 0xff, 0xcf, 0x07, 0xe0,
0xff, 0xff, 0x07, 0x01, 0x81, 0xff, 0xff, 0xe7, 0x07, 0xf8, 0xff, 0xff,
0x07, 0x01, 0x82, 0xff, 0xff, 0xe7, 0x03, 0xfc, 0xff, 0xff, 0x83, 0x01,
0x82, 0xff, 0xff, 0xe7, 0x01, 0xfe, 0xff, 0xff, 0x83, 0x00, 0x04, 0xff,
0xff, 0x67, 0x00, 0xff, 0xff, 0xff, 0x81, 0x00, 0x04, 0xfe, 0xff, 0x33,
0xc0, 0xfb, 0xff, 0xff, 0x41, 0x00, 0x08, 0xfc, 0xff, 0x03, 0x30, 0x80,
0xff, 0x7f, 0x20, 0x00, 0x30, 0xf8, 0xff, 0x07, 0x7c, 0xd0, 0xff, 0x3f,
0x10, 0x00, 0x60, 0xe0, 0xff, 0x8f, 0xff, 0xe0, 0xff, 0x0f, 0x0c, 0x00,
0x80, 0x81, 0xff, 0xff, 0xff, 0xc0, 0xff, 0x03, 0x06, 0x00, 0x00, 0x07,
0xfe, 0x01, 0x00, 0xc0, 0xff, 0xc0, 0x01, 0x00, 0x00, 0x18, 0xe0, 0x1f,
0x00, 0xf8, 0x1f, 0x70, 0x00, 0x00, 0x00, 0xe0, 0x00, 0xfc, 0xff, 0xff,
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0xe0, 0x01,
0x00, 0x00, 0x00, 0x00, 0xf0, 0x07, 0x00, 0x80, 0x1f, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
#include <onewire.h>
OneWire ds(7);
void setup(){
pinMode (2,OUTPUT); //иннициализация звонка
Serial.begin(9600);
display.begin(SSD1306_SWITCHCAPVCC); // инициализация дисплея (for the 128x64)
display.clearDisplay();
display.drawXBitmap(128 /2 — lada_sb_logo_width / 2, 0, lada_sb_logo_bits, lada_sb_logo_width, lada_sb_logo_height, 1);// рисуем ладу
display.display();
delay(10000);
display.clearDisplay();
}
void loop() {
//работа датчика температуры
byte data[2];
ds.reset();
ds.write(0xCC);
ds.write(0x44,1);
delay(100);
ds.reset();
ds.write(0xCC);;
ds.write(0xBE);
data[0] = ds.read();
data[1] = ds.read();
float Temp ;
Temp = (data[1]*256. + data[0])/16;//преобразование температуры
//работа дисплея вывод информации
display.clearDisplay();
display.setCursor(15,5);
display.setTextSize(3);
display.setTextColor(WHITE);
display.print(Temp);
display.display();
delay(1000);
// программа звонка
if (Temp>30)
digitalWrite(2,HIGH);
delay (500);
digitalWrite(2,LOW);
delay (500);
}
звонок срабатывает когда температура больше 30 градусов еще хочу сделать что бы экран моргал и шрифт поменять и будет все в ШОКОЛАДЕ
Сам скетч:
// Для дисплея
#include <spi.h>
#include <wire.h>
#include <adafruit_GFX.h>
#include <adafruit_SSD1306.h>
// звонок
int byze = 2;
//Подключаем дисплей к ардуино NANO V3:
#define OLED_MOSI 9
#define OLED_CLK 10
#define OLED_DC 11
#define OLED_CS 12
#define OLED_RESET 5
Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);
//разрешение картинки в пикселях
#define lada_sb_logo_width 73
#define lada_sb_logo_height 32
//картинка в формате ХВМ
static const unsigned char PROGMEM lada_sb_logo_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xfa, 0xff, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x0b,
0x0e, 0xa0, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x1e, 0x00,
0xf0, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x7c, 0x3e, 0x00, 0x00, 0x0e,
0x00, 0x00, 0x00, 0x18, 0xe0, 0x3f, 0x3f, 0x00, 0x08, 0x70, 0x00, 0x00,
0x00, 0x06, 0xfc, 0x3f, 0x7f, 0x00, 0xfc, 0xc0, 0x01, 0x00, 0x80, 0x81,
0xff, 0x3f, 0x7f, 0x00, 0xfc, 0x03, 0x06, 0x00, 0x60, 0xe0, 0xff, 0x3f,
0x3f, 0x00, 0xfe, 0x0f, 0x0c, 0x00, 0x30, 0xf8, 0xff, 0x9f, 0x3f, 0x00,
0xfe, 0x3f, 0x10, 0x00, 0x08, 0xfc, 0xff, 0x9f, 0x3f, 0x00, 0xff, 0x7f,
0x20, 0x00, 0x0c, 0xfe, 0xff, 0x9f, 0x3f, 0x00, 0xff, 0xff, 0x41, 0x00,
0x04, 0xff, 0xff, 0xdf, 0x1f, 0x80, 0xff, 0xff, 0x81, 0x00, 0x82, 0xff,
0xff, 0xcf, 0x1f, 0xc0, 0xff, 0xff, 0x83, 0x00, 0x82, 0xff, 0xff, 0xcf,
0x0f, 0xe0, 0xff, 0xff, 0x87, 0x01, 0x82, 0xff, 0xff, 0xcf, 0x07, 0xe0,
0xff, 0xff, 0x07, 0x01, 0x81, 0xff, 0xff, 0xe7, 0x07, 0xf8, 0xff, 0xff,
0x07, 0x01, 0x82, 0xff, 0xff, 0xe7, 0x03, 0xfc, 0xff, 0xff, 0x83, 0x01,
0x82, 0xff, 0xff, 0xe7, 0x01, 0xfe, 0xff, 0xff, 0x83, 0x00, 0x04, 0xff,
0xff, 0x67, 0x00, 0xff, 0xff, 0xff, 0x81, 0x00, 0x04, 0xfe, 0xff, 0x33,
0xc0, 0xfb, 0xff, 0xff, 0x41, 0x00, 0x08, 0xfc, 0xff, 0x03, 0x30, 0x80,
0xff, 0x7f, 0x20, 0x00, 0x30, 0xf8, 0xff, 0x07, 0x7c, 0xd0, 0xff, 0x3f,
0x10, 0x00, 0x60, 0xe0, 0xff, 0x8f, 0xff, 0xe0, 0xff, 0x0f, 0x0c, 0x00,
0x80, 0x81, 0xff, 0xff, 0xff, 0xc0, 0xff, 0x03, 0x06, 0x00, 0x00, 0x07,
0xfe, 0x01, 0x00, 0xc0, 0xff, 0xc0, 0x01, 0x00, 0x00, 0x18, 0xe0, 0x1f,
0x00, 0xf8, 0x1f, 0x70, 0x00, 0x00, 0x00, 0xe0, 0x00, 0xfc, 0xff, 0xff,
0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0xe0, 0x01,
0x00, 0x00, 0x00, 0x00, 0xf0, 0x07, 0x00, 0x80, 0x1f, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
#include <onewire.h>
OneWire ds(7);
void setup(){
pinMode (2,OUTPUT); //иннициализация звонка
Serial.begin(9600);
display.begin(SSD1306_SWITCHCAPVCC); // инициализация дисплея (for the 128x64)
display.clearDisplay();
display.drawXBitmap(128 /2 — lada_sb_logo_width / 2, 0, lada_sb_logo_bits, lada_sb_logo_width, lada_sb_logo_height, 1);// рисуем ладу
display.display();
delay(10000);
display.clearDisplay();
}
void loop() {
//работа датчика температуры
byte data[2];
ds.reset();
ds.write(0xCC);
ds.write(0x44,1);
delay(100);
ds.reset();
ds.write(0xCC);;
ds.write(0xBE);
data[0] = ds.read();
data[1] = ds.read();
float Temp ;
Temp = (data[1]*256. + data[0])/16;//преобразование температуры
//работа дисплея вывод информации
display.clearDisplay();
display.setCursor(15,5);
display.setTextSize(3);
display.setTextColor(WHITE);
display.print(Temp);
display.display();
delay(1000);
// программа звонка
if (Temp>30)
digitalWrite(2,HIGH);
delay (500);
digitalWrite(2,LOW);
delay (500);
}
звонок срабатывает когда температура больше 30 градусов еще хочу сделать что бы экран моргал и шрифт поменять и будет все в ШОКОЛАДЕ
5DARKSIDERS6- Сообщения : 13
Очки : 32
Репутация : 5
Дата регистрации : 2016-03-12
Возраст : 35
Re: Прибор температуры на ардуино и олед дисплее
Спасибо но это еще не предел
5DARKSIDERS6- Сообщения : 13
Очки : 32
Репутация : 5
Дата регистрации : 2016-03-12
Возраст : 35
ФОРУМ по РАДИОЭЛЕКТРОНИКЕ :: Начало :: АВТО :: АРДУИНО
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|
Пт 16 Сен 2016, 08:43 автор Admin
» Модуль плавного регулирования оборотов автомобильного электро- вентилятора системы охлаждения двигателя «Смерч-7»
Чт 26 Май 2016, 14:11 автор 5DARKSIDERS6
» Давление масла
Вт 10 Май 2016, 10:40 автор Admin
» Указатель уровня топлива (бакометр 2)
Пт 22 Апр 2016, 16:22 автор 5DARKSIDERS6
» Приборка в ВАЗ-2106 от ГАЗ-3110
Ср 13 Апр 2016, 10:25 автор Admin
» Стробоскопы
Пн 04 Апр 2016, 17:18 автор 5DARKSIDERS6
» DipTrace программа для создания печатных плат
Ср 16 Мар 2016, 03:58 автор 5DARKSIDERS6
» Датчик буста на сенсоре MPX4250AP
Ср 16 Мар 2016, 03:54 автор 5DARKSIDERS6
» Прибор температуры на ардуино и олед дисплее
Ср 16 Мар 2016, 02:10 автор 5DARKSIDERS6