Cлучайные товары


Посмотреть товар в Магазине »

Мы в соц сетях

Подпишись на канал Мы на facebook

Форум Вопросы и темы по программированию Arduino, ESP8266, STM32, Digispark и пр.

Барометр на ардуино ВМР280 и ТМ1637

1 марта, 2019 - 22:09
Помогите вывести показания давления (Pressure) на ТМ1637 
Вместо 6,6,6,6 показать давление строки  в конце кода tm.display(0.6) и далее
код



#include <Adafruit_Sensor.h>

#include <Adafruit_BMP280.h>

#include "TM1637.h"

#include <SPI.h>

bool En;
String Value;
#define CLK 3 //pins definitions for TM1637 and can be changed to other ports

#define DIO 2

TM1637 tm1637(CLK,DIO);
float Pressure;
#define SEALEVELPRESSURE_HPA (1013.25)

//Adafruit_BMP280 bme; // I2C
#define BMP_SCK 13

#define BMP_MISO 12

#define BMP_MOSI 11

#define BMP_CS 10

//Adafruit_BMP280 bme; // работаем по шине I2C
//Adafruit_BMP280 bme(BMP_CS); // работаем по шине hardware SPI
Adafruit_BMP280 bme(BMP_CS, BMP_MOSI, BMP_MISO, BMP_SCK);
void setup()
{
tm1637.init();
tm1637.set(5);
if (!bme.begin()) {
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
while (1);
}
}
void loop()
{

Pressure = bme.readPressure() / 100.0F * 0.7500;


En= 1;
Value = ( _floatToStringWitRaz(Pressure,2));
tm1637.display(0,6);
tm1637.display(1,6);
tm1637.display(2,6);
tm1637.display(3,6);





}
String _floatToStringWitRaz(float value, int raz)
{

return String(value,raz);
}

Будущее за микроконтроллерами
Klif Klif Зарегистрирован:
1.03.2019
2 марта, 2019 - 18:41 #1
Аналогично как я делал к проекте : https://portal-pk.ru/news/74-arduino-chasy-video-2---podklyuchaem-k-arduino-semisegmentnyi.html
 int Pressureone = Pressure / 10;
int Pressuretwo = Pressure % 10;

Будущее за микроконтроллерами
Admin Admin Зарегистрирован:
3.07.2018
2 марта, 2019 - 23:13 #2
Admin пишет:
Аналогично как я делал к проекте : https://portal-pk.ru/news/74-arduino-chasy-video-2---podklyuchaem-k-arduino-semisegmentnyi.html
 int Pressureone = Pressure / 10;
int Pressuretwo = Pressure % 10

void loop(){
Pressure = bme.readPressure();// 100.0F * 0.7500;
//Pressure = bme.Pressure() / 100.0F * 0.7500;
//Pressure=temp
//int temp = Pressure;
int Pressureone = Pressure / 10;
int Pressuretwo = Pressure % 10;
int Pressurethree = Pressure % 10;
int Pressurefree = Pressure % 10;



//En= 1;
//Value = ( _floatToStringWitRaz(Pressure,4));
tm1637.display(0,Pressureone);
tm1637.display(1,Pressuretwo);
tm1637.display(2,Pressurethree);
tm1637.display(3,Pressurefree);

delay (5000);
Не получилось

на свете нет ужаснее напасти, чем идиот дорвавшийся до власти
Klif Klif Зарегистрирован:
1.03.2019
3 марта, 2019 - 17:12 #3
Не получилось
Правильно. Вы что такое сделали? 
Статью внимательно читали?
Выделяем из числа сотни. Десятки, единица и выводим на дисплей. Первый символ либо ноль либо букву. Например F Как я делал в той же статье. 
Это математика, а не программирование. Если конечно вы ученик младше 7 класса. Тогда пишите распишу подробнее. 

Будущее за микроконтроллерами
Admin Admin Зарегистрирован:
3.07.2018
18 марта, 2019 - 16:45 #7
void setup()
{
tm1637.init();
tm1637.set(7);
if (!bme.begin()) {
Serial.println("Could not find a valid BMP280 sensor, check wiring!");
while (1);
// delay (2000);
}
}
void loop(){
Pressure = bme.readPressure();// 100.0F * 0.7500;
//Pressure = bme.Pressure() / 100.0F * 0.7500;
//Pressure=temp
//int temp = Pressure;
int Pressureone = Pressure / 10;
int Pressuretwo = Pressure % 10;
int Pressurethree = Pressure % 10;
int Pressurefree = Pressure % 10;



//En= 1;
//Value = ( _floatToStringWitRaz(Pressure,4));
tm1637.display(0,Pressureone);
tm1637.display(1,Pressuretwo);
tm1637.display(2,Pressurethree);
tm1637.display(3,Pressurefree);

delay (5000);

на свете нет ужаснее напасти, чем идиот дорвавшийся до власти
Klif Klif Зарегистрирован:
1.03.2019
20 марта, 2019 - 09:16 #8
Но ничего не получилось

на свете нет ужаснее напасти, чем идиот дорвавшийся до власти
Klif Klif Зарегистрирован:
1.03.2019
20 марта, 2019 - 13:46 #9
Klif пишет:
Но ничего не получилось
 Понятно что не получилось. Вы даже то что я вам писал не прочитали
Admin пишет:
Не получилось
Правильно. Вы что такое сделали? 
Статью внимательно читали?
Выделяем из числа сотни. Десятки, единица и выводим на дисплей. Первый символ либо ноль либо букву. Например F Как я делал в той же статье. 
Это математика, а не программирование. Если конечно вы ученик младше 7 класса. Тогда пишите распишу подробнее. 
int Pressureone = 0;
int Pressuretwo = Pressure / 100;
int Pressurethree = (Pressure -Pressuretwo*100)/ 10;
int Pressurefree = (Pressure -Pressuretwo*100) % 10;

И код добавляйте в теги [code]

Будущее за микроконтроллерами
Admin Admin Зарегистрирован:
3.07.2018
11 июля, 2019 - 09:37 #10
ok great

jcmex
julio julio Зарегистрирован:
11.07.2019

Войдите или Зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Яндекс.Метрика

Top.Mail.Ru

Portal-PK (Портал ПК) © 2015 - 2019 Робототехника на F-studio.biz
Обратная связь
Подписаться на новости
RSS