Не запускается TM1637
-
- Сержант
- Сообщения: 259
- Зарегистрирован: 07 дек 2023, 07:35
- Имя: Александр
- Благодарил (а): 20 раз
- Поблагодарили: 11 раз
Не запускается TM1637
Залил пробный скетч от Gyver. Всё пошло! Засветилось, заморгало и т.д.
[spoiler]/*
Пример вывода на дисплей с регистром TM1637
показывает все возможности библиотеки GyverTM1637
AlexGyver Technologies http://alexgyver.ru/
*/
#define CLK 2
#define DIO 3
#include "GyverTM1637.h"
GyverTM1637 disp(CLK, DIO);
uint32_t Now, clocktimer;
boolean flag;
void setup() {
Serial.begin(9600);
disp.clear();
disp.brightness(7); // яркость, 0 - 7 (минимум - максимум)
}
void loop() {
runningText();
scrolls();
scrollClock();
twists();
twistClock();
ints();
bytes();
fadeBlink();
normClock();
}
void twists() {
// скручивание массив ЦИФР
byte digs[4] = {3, 5, 7, 1};
disp.twist(digs, 50); // скорость прокрутки 100
delay(1000);
// скручивание прицельно (ячейка, БАЙТ, скорость)
disp.twistByte(0, _1, 50);
delay(1000);
// скручивание прицельно (ячейка, ЦИФРА, скорость)
disp.twist(0, 8, 70);
delay(1000);
disp.clear();
delay(200);
for (byte i = 0; i < 10; i++) {
disp.twist(3, i, 20);
delay(200);
}
// скручивание массива БАЙТ
byte troll[4] = {_t, _r, _o, _l};
disp.twistByte(troll, 50);
delay(1000);
// прицельное скручивание БАЙТА (ячейка, байт, скорость)
disp.twistByte(2, _G, 50);
delay(1000);
}
void twistClock() {
byte hrs = 21, mins = 55;
uint32_t tmr;
Now = millis();
while (millis () - Now < 10000) { // каждые 10 секунд
yield();
if (millis() - tmr > 500) { // каждые полсекунды
tmr = millis();
flag = !flag;
disp.point(flag); // выкл/выкл точки
if (flag) {
// ***** часы! ****
mins ++;
if (mins > 59) {
mins = 0;
hrs++;
if (hrs > 24) hrs = 0;
}
// ***** часы! ****
disp.displayClockTwist(hrs, mins, 35); // выводим время
}
}
}
disp.point(0); // выкл точки
}
void scrolls() {
// прокрутка массив ЦИФР
byte digs[4] = {3, 5, 7, 1};
disp.scroll(digs, 100); // скорость прокрутки 100
delay(1000);
// прокрутка прицельно (ячейка, ЦИФРА, скорость)
disp.scroll(0, 8, 200);
delay(1000);
disp.clear();
delay(1000);
for (byte i = 0; i < 10; i++) {
disp.scroll(3, i, 50);
delay(400);
}
// прокрутка массива БАЙТ
byte troll[4] = {_t, _r, _o, _l};
disp.scrollByte(troll, 100);
delay(1000);
// прицельная прокрутка БАЙТА (ячейка, байт, скорость)
disp.scrollByte(2, _G, 50);
delay(1000);
}
void bytes() {
// выводим байты из массива
byte troll[4] = {_t, _r, _o, _l};
disp.displayByte(troll);
delay(1000);
// выводим байты напрямую (4 в скобках)
disp.displayByte(_L, _O, _L, _empty);
delay(1000);
// выводим байты "прицельно"
disp.displayByte(3, _O); // 3 ячейка, буква О
delay(1000);
// выводим цифры из массива
byte hell[4] = {6, 6, 6, 6};
disp.display(hell);
delay(1000);
// выводим цифры напрямую (4 в скобках)
disp.display(1, 2, 3, 4);
delay(1000);
// выводим цифры "прицельно"
disp.display(0, 9); // 0 ячейка, цифра 9
delay(1000);
}
void fadeBlink() {
// пишем HELL
disp.displayByte(_H, _E, _L, _L);
Now = millis();
while (millis () - Now < 3000) { // 3 секунды
yield();
for (int i = 7; i > 0; i--) {
disp.brightness(i); // меняем яркость
delay(40);
}
for (int i = 0; i < 8; i++) {
disp.brightness(i); // меняем яркость
delay(40);
}
}
}
void scrollClock() {
byte hrs = 15, mins = 0;
uint32_t tmr;
Now = millis();
while (millis () - Now < 10000) { // каждые 10 секунд
yield();
if (millis() - tmr > 500) { // каждые полсекунды
tmr = millis();
flag = !flag;
disp.point(flag); // выкл/выкл точки
if (flag) {
// ***** часы! ****
mins ++;
if (mins > 59) {
mins = 0;
hrs++;
if (hrs > 24) hrs = 0;
}
// ***** часы! ****
disp.displayClockScroll(hrs, mins, 70); // выводим время
}
}
}
disp.point(0); // выкл точки
}
void normClock() {
byte hrs = 15, mins = 0;
uint32_t tmr;
Now = millis();
while (millis () - Now < 10000) { // каждые 10 секунд
yield();
if (millis() - tmr > 500) { // каждые полсекунды
tmr = millis();
flag = !flag;
disp.point(flag); // выкл/выкл точки
// ***** часы! ****
mins ++;
if (mins > 59) {
mins = 0;
hrs++;
if (hrs > 24) hrs = 0;
}
// ***** часы! ****
disp.displayClock(hrs, mins); // выводим время функцией часов
}
}
disp.point(0); // выкл точки
}
void ints() {
// тупо отправляем цифры
disp.displayInt(-999);
delay(500);
disp.displayInt(-99);
delay(500);
disp.displayInt(-9);
delay(500);
disp.displayInt(0);
delay(500);
disp.displayInt(6);
delay(500);
disp.displayInt(66);
delay(500);
disp.displayInt(666);
delay(500);
disp.displayInt(6666);
delay(500);
}
void runningText() {
byte welcome_banner[] = {_H, _E, _L, _L, _O, _empty, _empty,
_e, _n, _j, _o, _y, _empty, _empty,
_1, _6, _3, _7, _empty, _d, _i, _S, _P, _l, _a, _y
};
disp.runningString(welcome_banner, sizeof(welcome_banner), 200); // 200 это время в миллисекундах!
}[/spoiler]
Поделитесь, пожалуйста, рабочим проектом на FLPog.
[
[spoiler]/*
Пример вывода на дисплей с регистром TM1637
показывает все возможности библиотеки GyverTM1637
AlexGyver Technologies http://alexgyver.ru/
*/
#define CLK 2
#define DIO 3
#include "GyverTM1637.h"
GyverTM1637 disp(CLK, DIO);
uint32_t Now, clocktimer;
boolean flag;
void setup() {
Serial.begin(9600);
disp.clear();
disp.brightness(7); // яркость, 0 - 7 (минимум - максимум)
}
void loop() {
runningText();
scrolls();
scrollClock();
twists();
twistClock();
ints();
bytes();
fadeBlink();
normClock();
}
void twists() {
// скручивание массив ЦИФР
byte digs[4] = {3, 5, 7, 1};
disp.twist(digs, 50); // скорость прокрутки 100
delay(1000);
// скручивание прицельно (ячейка, БАЙТ, скорость)
disp.twistByte(0, _1, 50);
delay(1000);
// скручивание прицельно (ячейка, ЦИФРА, скорость)
disp.twist(0, 8, 70);
delay(1000);
disp.clear();
delay(200);
for (byte i = 0; i < 10; i++) {
disp.twist(3, i, 20);
delay(200);
}
// скручивание массива БАЙТ
byte troll[4] = {_t, _r, _o, _l};
disp.twistByte(troll, 50);
delay(1000);
// прицельное скручивание БАЙТА (ячейка, байт, скорость)
disp.twistByte(2, _G, 50);
delay(1000);
}
void twistClock() {
byte hrs = 21, mins = 55;
uint32_t tmr;
Now = millis();
while (millis () - Now < 10000) { // каждые 10 секунд
yield();
if (millis() - tmr > 500) { // каждые полсекунды
tmr = millis();
flag = !flag;
disp.point(flag); // выкл/выкл точки
if (flag) {
// ***** часы! ****
mins ++;
if (mins > 59) {
mins = 0;
hrs++;
if (hrs > 24) hrs = 0;
}
// ***** часы! ****
disp.displayClockTwist(hrs, mins, 35); // выводим время
}
}
}
disp.point(0); // выкл точки
}
void scrolls() {
// прокрутка массив ЦИФР
byte digs[4] = {3, 5, 7, 1};
disp.scroll(digs, 100); // скорость прокрутки 100
delay(1000);
// прокрутка прицельно (ячейка, ЦИФРА, скорость)
disp.scroll(0, 8, 200);
delay(1000);
disp.clear();
delay(1000);
for (byte i = 0; i < 10; i++) {
disp.scroll(3, i, 50);
delay(400);
}
// прокрутка массива БАЙТ
byte troll[4] = {_t, _r, _o, _l};
disp.scrollByte(troll, 100);
delay(1000);
// прицельная прокрутка БАЙТА (ячейка, байт, скорость)
disp.scrollByte(2, _G, 50);
delay(1000);
}
void bytes() {
// выводим байты из массива
byte troll[4] = {_t, _r, _o, _l};
disp.displayByte(troll);
delay(1000);
// выводим байты напрямую (4 в скобках)
disp.displayByte(_L, _O, _L, _empty);
delay(1000);
// выводим байты "прицельно"
disp.displayByte(3, _O); // 3 ячейка, буква О
delay(1000);
// выводим цифры из массива
byte hell[4] = {6, 6, 6, 6};
disp.display(hell);
delay(1000);
// выводим цифры напрямую (4 в скобках)
disp.display(1, 2, 3, 4);
delay(1000);
// выводим цифры "прицельно"
disp.display(0, 9); // 0 ячейка, цифра 9
delay(1000);
}
void fadeBlink() {
// пишем HELL
disp.displayByte(_H, _E, _L, _L);
Now = millis();
while (millis () - Now < 3000) { // 3 секунды
yield();
for (int i = 7; i > 0; i--) {
disp.brightness(i); // меняем яркость
delay(40);
}
for (int i = 0; i < 8; i++) {
disp.brightness(i); // меняем яркость
delay(40);
}
}
}
void scrollClock() {
byte hrs = 15, mins = 0;
uint32_t tmr;
Now = millis();
while (millis () - Now < 10000) { // каждые 10 секунд
yield();
if (millis() - tmr > 500) { // каждые полсекунды
tmr = millis();
flag = !flag;
disp.point(flag); // выкл/выкл точки
if (flag) {
// ***** часы! ****
mins ++;
if (mins > 59) {
mins = 0;
hrs++;
if (hrs > 24) hrs = 0;
}
// ***** часы! ****
disp.displayClockScroll(hrs, mins, 70); // выводим время
}
}
}
disp.point(0); // выкл точки
}
void normClock() {
byte hrs = 15, mins = 0;
uint32_t tmr;
Now = millis();
while (millis () - Now < 10000) { // каждые 10 секунд
yield();
if (millis() - tmr > 500) { // каждые полсекунды
tmr = millis();
flag = !flag;
disp.point(flag); // выкл/выкл точки
// ***** часы! ****
mins ++;
if (mins > 59) {
mins = 0;
hrs++;
if (hrs > 24) hrs = 0;
}
// ***** часы! ****
disp.displayClock(hrs, mins); // выводим время функцией часов
}
}
disp.point(0); // выкл точки
}
void ints() {
// тупо отправляем цифры
disp.displayInt(-999);
delay(500);
disp.displayInt(-99);
delay(500);
disp.displayInt(-9);
delay(500);
disp.displayInt(0);
delay(500);
disp.displayInt(6);
delay(500);
disp.displayInt(66);
delay(500);
disp.displayInt(666);
delay(500);
disp.displayInt(6666);
delay(500);
}
void runningText() {
byte welcome_banner[] = {_H, _E, _L, _L, _O, _empty, _empty,
_e, _n, _j, _o, _y, _empty, _empty,
_1, _6, _3, _7, _empty, _d, _i, _S, _P, _l, _a, _y
};
disp.runningString(welcome_banner, sizeof(welcome_banner), 200); // 200 это время в миллисекундах!
}[/spoiler]
Поделитесь, пожалуйста, рабочим проектом на FLPog.
[
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- montirovka
- Капитан
- Сообщения: 735
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 43 раза
- Поблагодарили: 174 раза
-
- Сержант
- Сообщения: 259
- Зарегистрирован: 07 дек 2023, 07:35
- Имя: Александр
- Благодарил (а): 20 раз
- Поблагодарили: 11 раз
Не запускается TM1637
Нет. Сейчас попробую.montirovka писал(а): 07 мар 2024, 17:10 А какой вы заливали что не работает?
Из той темыTM1637 заливали?
IDE ругается....
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Не запускается TM1637
Этот попробуйтеAstreet писал(а): 07 мар 2024, 17:43Нет. Сейчас попробую.montirovka писал(а): 07 мар 2024, 17:10 А какой вы заливали что не работает?
Из той темыTM1637 заливали?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Сержант
- Сообщения: 259
- Зарегистрирован: 07 дек 2023, 07:35
- Имя: Александр
- Благодарил (а): 20 раз
- Поблагодарили: 11 раз
Не запускается TM1637
Приехал с работы домой, собрал ещё один модуль на TM1637.
Для проверки работоспособности залил в него скетч от Gyver. Всё пашет.
Не пошёл. Ничего непоказывает.
Отправлено спустя 5 минут 14 секунд:
Попробовал на домашней сборке. Удалил лишнее и оставил только вот так...
И вот, что показало!
Отправлено спустя 47 минут 4 секунды:
Ещё раз пробую на работе залить скетч. Опять ругается.... Не пойму, что ему нужно.....
Отправлено спустя 1 час 12 минут 8 секунд:
Нашел ещё один работающий блок TM1637. Имя файла TEST 18B20. Где брал - непомню. Факт то, что он работает.
Автор Boroda.
Модификация Labu55.
Отправлено спустя 12 минут 19 секунд:
Как (где) можно найти блоки, созданные Boroda?
Для проверки работоспособности залил в него скетч от Gyver. Всё пашет.
Не пошёл. Ничего непоказывает.
Отправлено спустя 5 минут 14 секунд:
montirovka писал(а): 07 мар 2024, 17:10 А какой вы заливали что не работает?
Из той темыTM1637 заливали?
Попробовал на домашней сборке. Удалил лишнее и оставил только вот так...
И вот, что показало!
Отправлено спустя 47 минут 4 секунды:
Ещё раз пробую на работе залить скетч. Опять ругается.... Не пойму, что ему нужно.....
Отправлено спустя 1 час 12 минут 8 секунд:
Нашел ещё один работающий блок TM1637. Имя файла TEST 18B20. Где брал - непомню. Факт то, что он работает.
Автор Boroda.
Модификация Labu55.
Отправлено спустя 12 минут 19 секунд:
Как (где) можно найти блоки, созданные Boroda?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- montirovka
- Капитан
- Сообщения: 735
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 43 раза
- Поблагодарили: 174 раза
Не запускается TM1637
В проекта, что выше (будильник), оставил только TM1637. Что на дисплее?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Сержант
- Сообщения: 259
- Зарегистрирован: 07 дек 2023, 07:35
- Имя: Александр
- Благодарил (а): 20 раз
- Поблагодарили: 11 раз
Не запускается TM1637
Ничего.montirovka писал(а): 08 мар 2024, 12:05 В проекта, что выше (будильник), оставил только TM1637. Что на дисплее?
- montirovka
- Капитан
- Сообщения: 735
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 43 раза
- Поблагодарили: 174 раза
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Не запускается TM1637
Первый был рабочий, а второй у меня не пошел, и разницы не увидел.
Последний раз редактировалось SergeyShikal 08 мар 2024, 14:10, всего редактировалось 1 раз.
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Не запускается TM1637
Рабочее Флпрог_7.3.8 Ардуино иде 1.8.15 [spoiler] [/spoiler][spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- montirovka
- Капитан
- Сообщения: 735
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 43 раза
- Поблагодарили: 174 раза
Не запускается TM1637
Мне кажется у вас что то с подключениями плат. Раскидайте все, а потом заново соберите. Проверьте правильность пинов,
Повторно от Гайвера скетч залейте.
По фото не видно как подключена плата ТМ 1637.
Из того что заливали из FLProg какой нибудь проект сюда рабочий скинте.
Повторно от Гайвера скетч залейте.
По фото не видно как подключена плата ТМ 1637.
Из того что заливали из FLProg какой нибудь проект сюда рабочий скинте.
-
- Сержант
- Сообщения: 259
- Зарегистрирован: 07 дек 2023, 07:35
- Имя: Александр
- Благодарил (а): 20 раз
- Поблагодарили: 11 раз
Не запускается TM1637
montirovka писал(а): 08 мар 2024, 14:56 Мне кажется у вас что то с подключениями плат. Раскидайте все, а потом заново соберите. Проверьте правильность пинов,
Повторно от Гайвера скетч залейте.
По фото не видно как подключена плата ТМ 1637.
Я повторюсь, TM1637 работает только с блоком TM1637D4_b6. Другие блоки при заливке в Ардуино - не работают. (Я сейчас говорю про эксперименты на рабочем компе).
Меня устраивает, как он (блок) работает, но мне нужно 2 входа, часы и минуты.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- montirovka
- Капитан
- Сообщения: 735
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 43 раза
- Поблагодарили: 174 раза
Не запускается TM1637
В скетче Гайвера CLK 2, DIO 3. Часы с таймером рабочие.flp CLK 9, DIO 8. А когда вы заливали проекты что выше вы меняли пины?
-
- Сержант
- Сообщения: 259
- Зарегистрирован: 07 дек 2023, 07:35
- Имя: Александр
- Благодарил (а): 20 раз
- Поблагодарили: 11 раз
Не запускается TM1637
А как же?!montirovka писал(а): 08 мар 2024, 15:33 В скетче Гайвера CLK 2, DIO 3. Часы с таймером рабочие.flp CLK 9, DIO 8. А когда вы заливали проекты что выше вы меняли пины?
- montirovka
- Капитан
- Сообщения: 735
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 43 раза
- Поблагодарили: 174 раза
-
- Сержант
- Сообщения: 259
- Зарегистрирован: 07 дек 2023, 07:35
- Имя: Александр
- Благодарил (а): 20 раз
- Поблагодарили: 11 раз
- montirovka
- Капитан
- Сообщения: 735
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Благодарил (а): 43 раза
- Поблагодарили: 174 раза
Не запускается TM1637
Я даже и не знаю что подсказать. У меня нет в наличии TM1637. А проверить нет возможности не с Нано, а к примеру UNO?
Прочел вот эту тему 1637
Там есть упоминание о кондерах. Может они являются виной проблем?
Ютуб1637
Прочел вот эту тему 1637
Там есть упоминание о кондерах. Может они являются виной проблем?
Ютуб1637
- SergeyShikal
- Лейтенант
- Сообщения: 593
- Зарегистрирован: 30 авг 2018, 17:15
- Откуда: Иркутская область
- Имя: Сергей
- Благодарил (а): 2 раза
- Поблагодарили: 1 раз
Не запускается TM1637
Сменил на пины как у вас 8 и 9 все работает. Пробуйте другую версию программы.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя