Нужна помощь в программировании

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
R3PB
Родился
Сообщения: 7
Зарегистрирован: Чт апр 20, 2023 13:09:00

Очень низкая яркость

Сообщение R3PB »

Добрый день!
Залил прошивку для версии часов без транзисторов, на монодисплее.
Часы работают, но яркость сегментов очень низкая.
Автоматическая регулировка яркости не работает.
Подскажите что мне с этим делать?

Версия прошивки STC_15F204EA_simple.hex
Аватара пользователя
Zhuk72
Сверлит текстолит когтями
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку
Контактная информация:

Re: Очень низкая яркость

Сообщение Zhuk72 »

[uquote="R3PB",url="/forum/viewtopic.php?p=4403939#p4403939"]Часы работают, но яркость сегментов очень низкая.
Автоматическая регулировка яркости не работает.[/uquote]
Попробуйте отключить АРЯ (последнее сообщение на стр.2):
Для отключения/включения авторегулировки яркости обессточьте часы, нажмите и удерживайте НК (FUNC) с последующей подачей питания. После этого кнопку отпустите.
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
R3PB
Родился
Сообщения: 7
Зарегистрирован: Чт апр 20, 2023 13:09:00

Re: Очень низкая яркость

Сообщение R3PB »

[uquote="Zhuk72",url="/forum/viewtopic.php?p=4404372#p4404372"][uquote="R3PB",url="/forum/viewtopic.php?p=4403939#p4403939"]Часы работают, но яркость сегментов очень низкая.
Автоматическая регулировка яркости не работает.[/uquote]
Попробуйте отключить АРЯ (последнее сообщение на стр.2):
Для отключения/включения авторегулировки яркости обессточьте часы, нажмите и удерживайте НК (FUNC) с последующей подачей питания. После этого кнопку отпустите.
[/uquote]

Это делал. Не помогает. АРЯ у меня не работает.
Пробовал пересобрать код с отключенным ADC_CONTR и его различными состояниями - безуспешно.
Изображение
Так же попробовал функцию t1set() использовать без условий;
Изображение
Яркое свечение всех сегментов можно увидеть только при зажатых кнопках при включении часов.
Похоже у меня код этой в части не работает, по какой то причине.
Вложения
Снимок экрана 2023-04-24 014449.png
(26.34 КБ) 169 скачиваний
Снимок экрана 2023-04-24 014105.png
(40.24 КБ) 146 скачиваний
Аватара пользователя
Zhuk72
Сверлит текстолит когтями
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку
Контактная информация:

Re: Очень низкая яркость

Сообщение Zhuk72 »

[uquote="R3PB",url="/forum/viewtopic.php?p=4405931#p4405931"]Пробовал пересобрать код с отключенным ADC_CONTR и его различными состояниями - безуспешно.
Так же попробовал функцию t1set() использовать без условий;
Яркое свечение всех сегментов можно увидеть только при зажатых кнопках при включении часов.
Похоже у меня код этой в части не работает, по какой то причине.[/uquote]
Странно :shock:
А какой в ваших часах МК? 204ЕА? При прошивке частоту генератора выставляете правильную (11.0592 МГц)?
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
inode
Родился
Сообщения: 1
Зарегистрирован: Пн апр 24, 2023 12:26:16

Re: Нужна помощь в программировании

Сообщение inode »

Добрый день. Порекомендуйте номинал токоограничительных резисторов в цепях сегментов белых индикаторов, чтобы уберечь от перегорания. Вариант часов с транзисторными ключами, резисторы по 330 ом. Яркость и алгоритм регулировки яркости устраивают, но на второй день работы в третьем разряде сгорел один сегмент. На mysku.ru рекомендовали 2.2 кОм, но там человек считал яркость завышенной и таким номиналом снизил яркость до устраивющей его. А мне хотелось бы яркость максимально сохранить, но светодиоды уберечь. Плата не очень любит перепайки - дорожки отслаиваются и метаализация вынимается - не наменяешься индикаторов.
R3PB
Родился
Сообщения: 7
Зарегистрирован: Чт апр 20, 2023 13:09:00

Re: Очень низкая яркость

Сообщение R3PB »

[uquote="Zhuk72",url="/forum/viewtopic.php?p=4405997#p4405997"][uquote="R3PB",url="/forum/viewtopic.php?p=4405931#p4405931"]Пробовал пересобрать код с отключенным ADC_CONTR и его различными состояниями - безуспешно.
Так же попробовал функцию t1set() использовать без условий;
Яркое свечение всех сегментов можно увидеть только при зажатых кнопках при включении часов.
Похоже у меня код этой в части не работает, по какой то причине.[/uquote]
Странно :shock:
А какой в ваших часах МК? 204ЕА? При прошивке частоту генератора выставляете правильную (11.0592 МГц)?[/uquote]

У меня 404AS
Частота 11.0592 МГц
Аватара пользователя
Zhuk72
Сверлит текстолит когтями
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку
Контактная информация:

Re: Очень низкая яркость

Сообщение Zhuk72 »

[uquote="R3PB",url="/forum/viewtopic.php?p=4406449#p4406449"]У меня 404AS[/uquote]
Не знаю по какой причине, но на него я писал отдельно.
Только что заглянул в исходники и нашел ваш чип.
Полностью отличия в исходниках изучать совсем не хочется, только заметил, что в 404-м для АРЯ используется Т2 вместо Т1.
Просто залейте прошивку из папки STC15W_clock. Исходники там же.
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
R3PB
Родился
Сообщения: 7
Зарегистрирован: Чт апр 20, 2023 13:09:00

Re: Очень низкая яркость

Сообщение R3PB »

[uquote="Zhuk72",url="/forum/viewtopic.php?p=4407133#p4407133"][uquote="R3PB",url="/forum/viewtopic.php?p=4406449#p4406449"]У меня 404AS[/uquote]
Не знаю по какой причине, но на него я писал отдельно.
Только что заглянул в исходники и нашел ваш чип.
Полностью отличия в исходниках изучать совсем не хочется, только заметил, что в 404-м для АРЯ используется Т2 вместо Т1.
Просто залейте прошивку из папки STC15W_clock. Исходники там же.[/uquote]

Перепробовал все прошивки. Нашёл в одной из прошивок define для 204 и 404. Использовал 404. Но так как у меня часы с упрощённой схемой, без транзисторов на анодах индикатора, то получил краказябры.
Чтобы от них избавиться поправил биты в timer0_isr - вывод на индикатор:

anode &= ~0x3C; //anode |= 0x3C; // Р3[5:2] - clear anode pins to switch off LEDs
//катод - не трогал.
anode |= (1 << (digit + 2)); //anode &= ~(1 << (digit + 2)); // Включаем разряд.

Также исправил в timer2_isr - остановка T2
anode &= ~0x3C; //anode |= 0x3C; // Отключение индикатора.

Яркость с этой прошивкой регулируется - автоматическая и ручная, но она низкая. То есть, максимальная яркость дисплея низкая, и регулируется в сторону уменьшения.
Проблема в том что на анодах устанавливается 0.5 вольт при максимальной яркости - это для схемы с транзисторными ключами как раз... В моём случае схема без них.
Как увеличить это напряжение на анодах я не разобрался.
Прошу помощи!

У меня такая схема часов без транзисторов Изображение

и вот этот индикатор с общими анодами Изображение
R3PB
Родился
Сообщения: 7
Зарегистрирован: Чт апр 20, 2023 13:09:00

Re: Нужна помощь в программировании

Сообщение R3PB »

Разобрался. Сделал. Теперь яркость дисплея высокая как и было раньше. Днём всё видно.
Изображение

Несколько дней штудирования мануала МК этой серии дали свой результат. Нашёл вот что: "...Перед преобразованием ADC также должны быть соответствующим образом сконфигурированы порты ввода вывода (GPIO), чтобы они работали только как входы, либо только как выход с открытым стоком, на который выведена лог. 1. Тогда схема портов не окажет влияния на результат преобразования сигнала на входе АЦП. ..."
Внёс очередную правку в код в этой части и теперь всё заработало как надо.
Изображение
Правда теперь, на нормальной яркости, мерцание дисплея заметно. Желательно поправить.
Всего несколько исправлений сделано с учётом схемы дисплея без транзисторов:
1 - Битовая маска для включения анода - сделал инверсию.
2 - В прерывании при отключении анода, так же инверсию сделал.
3 - Отключил преобразование символов для перевёрнутого вниз головой сегмента - это неактуально для моей версии дисплея, поскольку у меня монодисплей с двоеточием.
4 - В ADC установил пара-бит M1, M0 для анодных портов в quasi-bidirectional mode.
В общем, у кого вариант часов 15W404AS без транзисторов на монодисплее 2481BS он же 8041BPC, тому эта прошивка.
Спасибо Zhuk72 за исходники Вашей прошивки, за комментарии оставленные в коде. Это очень помогло. Спасибо за ваш труд!
Вложения
new_clear_2.hex
Обновлён 05.05.2023 23:40
Исправил неработающие кнопки.
(8.3 КБ) 168 скачиваний
Последний раз редактировалось R3PB Пт май 05, 2023 23:41:04, всего редактировалось 1 раз.
Аватара пользователя
Zhuk72
Сверлит текстолит когтями
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку
Контактная информация:

Re: Нужна помощь в программировании

Сообщение Zhuk72 »

[uquote="R3PB",url="/forum/viewtopic.php?p=4411212#p4411212"]Разобрался. Сделал.
...
Спасибо Zhuk72 за исходники Вашей прошивки, за комментарии оставленные в коде. Это очень помогло. Спасибо за ваш труд![/uquote]
Рад, что смогли разобраться с проблемой. У меня на 204ЕА и у 404AS (вашей в том числе), фото- и терморезисторы висели на Р1.6 и Р1.7. Соответственно я и конфигурировал порты с учетом АЦП (open drain):

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

  
  P1M1 = 0xC0;  // Set Port 1 in quasi-bidirectional mode.
  P1M0 = 0xC0;  // Except for P1.6 (photoresistor) and P1.7 (thermistor) as open-drain output.
Конфиги же остальных портов просто обнулил, т.е. сделал quasi-bidirectional. У меня это работало.
А вы сделали push-pull. Видимо и мне так следовало сделать. Не знаю даже, почему я выбрал именно тот режим. Скорее всего он у меня заработал и я закрыл этот вопрос. Хотя позже у кого-то на упрощенном варианте возникла проблема с DS1302 из-за отсутствия на сигналах подтяжек (у меня они были) и моей неправильной конфигурации порта.

У меня там много чего было странного и неправильного. Это вообще был мой первый в жизни 8051 и первый проект на Си. До этого я имел дело только с ПИКами на асме. Поэтому я так тщательно все комментировал и пояснял, чтобы и самому разобраться, и позже не запутаться :)
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
R3PB
Родился
Сообщения: 7
Зарегистрирован: Чт апр 20, 2023 13:09:00

Re: Нужна помощь в программировании

Сообщение R3PB »

Нашёл баг который не сразу заметил. После отключения программатора кнопки перестали реагировать на нажатие. Эта ошибка была незамеченной так как программатор был подключен и не отключался в течении суток после успешного результата. Когда отключил понял что не работает управление кнопками.
Поправил.
Обновление выгрузил.
Вложения
new_clear_2.hex
(8.3 КБ) 168 скачиваний
сокол
Вымогатель припоя
Сообщения: 602
Зарегистрирован: Сб июл 07, 2012 23:01:25

Re: Нужна помощь в программировании

Сообщение сокол »

Всем доброго дня коллектив! Ребята мне надо в исходнике поправить порог АЦП под разное напряжение.Помогите пожалуйста кто понимает в этом деле. Что бы мне поправили ,до Автора не достучался,ранее он мне ответил так:
в архиве есть исходники программы и Вы можете сами менять порог. Делается это в файле "led_voltage/main.c" в 14 строке "#define TRH2 1064+CORRECTION // 16В (1.143В)".
Здесь 1064 является порогом, получить его можно из файла "Расчет порога АЦП.xlsx" : меняете значение "Порог напряжения" и получаете "Порог АЦП".
у меня контроллер ATtiny13A. Подскажите пожалуйста в какой программе или чем то другим как я могу получить порог АЦП для напряжения : 1 вольт/ 12,59в/12,6в.
СпойлерИзображение
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15545
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Нужна помощь в программировании

Сообщение BOB51 »

AVR Studio версии 4.19 или более поздняя версия этой IDE (включая микрочип студию).
8)
Аватара пользователя
-danger-
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Пн май 04, 2015 16:42:01

Re: Нужна помощь в программировании

Сообщение -danger- »

[uquote="R3PB",url="/forum/viewtopic.php?p=4411212#p4411212"]В общем, у кого вариант часов 15W404AS без транзисторов на монодисплее 2481BS он же 8041BPC, тому эта прошивка.[/uquote]

15W404AS
часы такие https://img.mysku-st.net/uploads/images ... 7914fb.jpg
Может есть у кого-то родная прошивка для них? Я так и не понял как в STC ее сдампить.
Дайте пожалуйста скрин фьюзов и прочего
Мерцание просто вырви глаз. Вернулся бы на родную.
Аватара пользователя
Shuspano
Грызет канифоль
Сообщения: 270
Зарегистрирован: Вс окт 20, 2019 13:03:56

Re: Нужна помощь в программировании

Сообщение Shuspano »

-danger- писал(а):Я так и не понял как в STC ее сдампить.
Никак, просто не предусмотрено.
Аватара пользователя
-danger-
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Пн май 04, 2015 16:42:01

Re: Нужна помощь в программировании

Сообщение -danger- »

Подскажите или дорисуйте пожалуйста, как можно часы 15W404AS переделать под 14 ног индикатор. Китайцы прислали 14 ног вместо 12 ног.
Вроде все работает, но доветочие не могу задействовать, мигает вместо него 1 точка что под двоеточием.
Можно это как-то колхозно перемычками поправить?
Вложения
15W404AS_1.jpg
(112 КБ) 172 скачивания
led14.png
(140.16 КБ) 164 скачивания
led12.png
(179.07 КБ) 164 скачивания
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: Нужна помощь в программировании

Сообщение Martian »

у 14-выводного: 7 соединить с 11, вместо 3 подключить 8.
но никакие больше точки у цифр светиться не смогут, они нужны?

Или так: 7 соединить с 11, 3 соединить с 8. Тогда получится как по схеме для 12-лапового, но она странная: всегда будут три точки моргать, невозможно десятичную от двоеточия зажечь отдельно.
Аватара пользователя
-danger-
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Пн май 04, 2015 16:42:01

Re: Нужна помощь в программировании

Сообщение -danger- »

Нужна еще последняя точка (она индицирует будильник)
Спасибо, завтра попробую - добавлю ответ. Я типа пока подключил без 7-8 ног (которые как раз 2 точки).
Вложения
led.png
(27.91 КБ) 150 скачиваний
R3PB
Родился
Сообщения: 7
Зарегистрирован: Чт апр 20, 2023 13:09:00

Re: Нужна помощь в программировании

Сообщение R3PB »

[uquote="-danger-",url="/forum/viewtopic.php?p=4448456#p4448456"]Подскажите или дорисуйте пожалуйста, как можно часы 15W404AS переделать под 14 ног индикатор. Китайцы прислали 14 ног вместо 12 ног.
Вроде все работает, но доветочие не могу задействовать, мигает вместо него 1 точка что под двоеточием.
Можно это как-то колхозно перемычками поправить?[/uquote]

Наверное поздно, но вот тут тот самый дисплей 12 ног с общим анодом с точками и двоеточием - https://www.wildberries.ru/catalog/1780 ... etail.aspx
Aggarti
Родился
Сообщения: 2
Зарегистрирован: Вт дек 19, 2023 18:12:07

Re: Нужна помощь в программировании

Сообщение Aggarti »

Zhuk72,
Приветствую!
Попытался прошить часы, аналогичные в статье "Китайские "сделай сам" часы на микроконтроллере STC15F204EA", Автор: Zhuk72. В итоге - светится только последняя цифра и точка. Часы без фото и терморезистора, с перевёрнутым третьим знаком, мк 20 ног.
Вопрос к автору статьи: "Уважаемый Zhuk72, вы написали - если будут вопросы пишите. Я пишу - не подскажите, что дальше делать?"
Ответить

Вернуться в «Разные вопросы по МК»