Замена 7ми сегментн. на 1602

Что бы еще такого сделать?... Предлагайте! Обсудим все!!!
Ответить
Arthurios
Родился
Сообщения: 2
Зарегистрирован: Ср сен 06, 2017 09:08:42

Замена 7ми сегментн. на 1602

Сообщение Arthurios »

Имеется скетч для паяльника на 7ми сегментнике, хотелось бы изменить его для работы с 1602 с I2C, но не знаю где и что....
Куски кода, имеющие отношение к сегментнику.
Спойлер

Код: Выделить всё

#include "TM1637.h"
#define CLK 3//pins definitions for TM1637 and can be changed to other ports   
----------------
TM1637 tm1637(CLK,DIO);

volatile unsigned long failingTime=0;
volatile bool value_b=0;
volatile byte prevA=0;
volatile unsigned long pulseLen=0;
volatile int increment = 0;   //Стартовое значение на сегментах

//int indicator = 1; // 0 = Катод  1 = Анод  Выбрать под Ваш индикатор !!!!

//byte  digits[] = {
//  B00001000,B11101010,B00110000,B10100000,B11000010,B10000001,B00000001,B11101000,B00000100,B10000000};
//  0           1         2         3         4         5         6         7          8        9

//int digit_common_pins[]={16,15,12};  // пины для разрядов сегментов(при изменении убедитесь что Ваш порт не используется)
//int refresh_delay = 2;
int count_delay = 1000; // COUNTING SECONDS IF count_delay = 1000 //Влияет на время отображения значения регулировки (переменная increment)
long actual_count_delay = 0;
long actual_refresh_delay = 0;

int max_digits =3;  //  Кол-во знакомест
int current_digit=max_digits-1;
int increment_max = pow(10,max_digits);
--------------------
void setup(){

  tm1637.init();
  tm1637.set(5);//BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;
-------------------
void loop() {
   
  show(increment);   // Вывести значение переменной на экран(LED)
--------------------
void show(int value) { //------------------------------- подпрограмма для вывода на сегменты   - лучше не изменять ---------------------------------------------

 tm1637.display(increment);


Реклама
bolek
Сверлит текстолит когтями
Сообщения: 1180
Зарегистрирован: Пт авг 21, 2009 03:22:12

Re: Замена 7ми сегментн. на 1602

Сообщение bolek »

В конце куска кода русским по белому написано:
void show(int value) { //------------------------------- подпрограмма для вывода на сегменты - лучше не изменять ---------------------------------------------

tm1637.display(increment);
Вот оно самое и есть.
По tm1637 можно посмотреть например в первом попавшемся http://arduino.on.kg/show/221 - данные передаются по двум проводам, т.е. по количеству требуемых от ардуины ног I2C подойдет.
Осталось почитать, как работать с I2C индикатором и переписать процедуру вывода.
Реклама
Ответить

Вернуться в «Умные мысли»