RTC часы на синей таблетке с четырьмя сегментами 7

ун
Сб 6 мая 2017 г. 15:44
Привет, недавно я закончил смесительный уродливый код для мультиплексированных четырех 7 сегментов .Дешевый и простой способ построить это... Только что припаяна напрямую (!О, не делай этого! : oops: ) на синей таблетке STM32.
Изображение
«Ингредиенты и процедура пасты:»
конфигурация Нет JTAG !! в коде, но
конфигурация Нет сериала USB !!...
Найти файл usb_serial.CPP и прокомментировал содержание Usbeserial :: Begin That void USBSerial::begin(void) { #if BOARD_HAVE_SERIALUSB // usb_cdcacm_enable(BOARD_USB_DISC_DEV, BOARD_USB_DISC_BIT); // usb_cdcacm_set_hooks(USB_CDCACM_HOOK_RX, rxHook); // usb_cdcacm_set_hooks(USB_CDCACM_HOOK_IFACE_SETUP, ifaceSetupHook); #endif }

ун
Пн, 3 июля 2017 г., 17:34
Привет снова... Небольшое обновление с DS18B20 и новым параметром для отображения...
TDV = от 0 до 30 секунд .Значение дисплея времени отображение альтернативно или температура (-40*c, +99*c) за 1-30 секунд в минуту
DS18B20 имеет подтягивающий резистор 4K7 (не критические значения для короткого кабеля).
Изображение

Пито
Пн, 3 июля 2017 г., 19:56
Какое значение вы используете в анодах дисплея?

ZMEMW16
Пн, 3 июля 2017 г., 8:20 вечера
В этом возрасте SMD и т. Д. Вы все еще можете получить 16 -контактный корпус DIL 8 отдельных резисторов, 1->16, 2->15....8->9 и т.д & Вам нужен только один : D
Стивен

ун
Пн, 3 июля 2017 г. 20:37
Нет резисторов!(Конечно, подтягивание для датчика DS18B20 должно быть) Все булавки 7 сегментов ЖК-дисплее... Программное обеспечение делает все. Мультиплексирование и таймер фальшивый шин...

ZMEMW16
Пн, 3 июля 2017 г., 8:51 вечера
Дело в том, что должно быть.
Это предотвратит, возможно, превышение комбинированного предела MA для чипа.
Это также будет работать для объединения интенсивности сегментов дисплея.
Стивен

Пито
Пн, 3 июля 2017 г. 20:59
Вот почему я спросил :) Должны быть резисторы в анодах, иначе вы перегружаете максимальный выход STM32, конечно.
Это может работать в течение некоторого времени, но это определенно неправильный подход (не использовать резисторы анода, 8 ПК.).
Давно назад я сделал это следующим образом:
1. Когда не мультиплексирование сегментов, выберите R1-8, такие сегменты дисплея нормально зажжены (т.е. 3ma ток как сегмент необходим, таким образом, резисторы = (3.3V-1.6 В)/0.003a = 566om)
2. При мультиплексировании 4 цифр, 8 резисторов (7 сегментов + точка) должны быть 566/4 = ~ 150om каждый..
Или что -то в этом роде.

ун
Пн, 3 июля 2017 г., 21:22
Платите приспособление к булавкам, когда вы паяете ЖК -дисплей, и если хотите, мой друг, поместите 120...220 Ом резисторов на выводах Dig1, Dig2, Dig3, Dig4. Я также экспериментировал с Arduino Mini в прошлом. Все работает хорошо много месяцев. Почему? Потому что между шипом это нейтральное время.
Следующий шаг - это реле и кнопки.
Старый проект [YouTube]https: // www.YouTube.com/watch?v = flritulokiy[/youtube].
Спасибо, что прочитали мой уродливый проект...искренне!

AG123
Втюл 04 июля 2017 г. 6:27
Я предполагаю, что STM32F103 может потребоваться немало злоупотреблений (со светодиодами), я просто осветил свой LCD -светодиод ILI9341
Но для 7 сегмента светодиодов лучше быть в безопасности и добавить некоторые резисторы, в противном случае я, вероятно, играл в кости с Magic Smoke Monster
Казалось, в этом случае это несколько «безопасно», так как мультиплексирование заставляет его работать, как какой -то ШИМ, предотвращая слишком много тепла на STM32
:ржу не могу:

Пито
Вт, 04 июля 2017 г. 8:36 утра
К вашему сведению - возможно, стоит поместить на вики:
от STM32F103C8 DataShing (Maplemini, Bluepill и другие): DOCID13587 Rev 17 Page 65/117 - Электрические характеристики

Выходная движущаяся ток

GPIOS (входы/выходы общего назначения) могут погрузиться или источник до ± 8 мА, а также ракорить или источник до ± 20 мА (с расслабленным Vol/VOH), за исключением PC13, PC14 и PC15, которые могут погрузиться или источник до +/// -3ma. При использовании GPIOS PC13 -PC15 в режиме выхода скорость не должна превышать 2 МГц с максимальной нагрузкой 30 пФ.

В пользовательском приложении количество контактов ввода/вывода, которые могут привести к управлению током, должно быть ограничено уважением абсолютного максимального рейтинга, указанного в разделе 5.2:
• Сумма течений, полученных всеми вводом/ОС при VDD, плюс максимальное потребление прогона MCU, полученное на VDD, не может превышать абсолютный максимальный рейтинг IVDD [150 мА] (см. Таблицу 7).
• Сумма токов, потопленных всем вводом/ОС на VSS, плюс максимальное потребление пробега MCU, потопленное на VSS, не может превышать абсолютный максимальный рейтинг IVS [150MA] (см. Таблицу 7).

ZMEMW16
Вт, 04 июля 2017 г. 10:23 утра
@Pito 2. При мультиплексировании 4 цифр, 8 резисторов (7 сегментов + точка) должны быть 566/4 = ~ 150om каждый..
Или что -то в этом роде.
Вы бы хотели переосмыслить это ?
мультиплекс - ездить по одному за раз, достаточно быстро, чтобы они не мерцали.
Стивен

Пито
Втюж 04 июля 2017 г. 10:28 утра
Почему???
Мышление делает меня большой болью.. :рулон:
Обычные катоды (4 в данном случае) также требуют также внешнего переключателя - максимальный ток, в частности, общий катод будет 8x i_per_segment, который также не является пределами, конечно..

ZMEMW16
Втюж 04 июля 2017 г. 10:37 утра
дисплеи все используют одни и те же цифровые диски A-F & точка.
дисплеи мультиплексированы, поэтому только один активен одновременно.
Стивен

Пито
Втюж 04 июля 2017 г. 10:42
@Stephen: Но ум в статическом режиме будет постоянно «на» (то есть все 8 сегментов), но в лечении и 4 цифрах сегменты активной цифры будут «только в 1/4 времени (приблизительно, Повышение расходов здесь не подсчитывает), поэтому вам нужен ~ 4 раза больше тока в одиночку, чтобы достичь той же «визуальной яркости», что и в статическом режиме - поэтому резисторы 8 анода (мы говорим здесь об общей настройке катода) должны быть в 4 раза меньше (опять же Не рассматривая нелинейное соотношение яркости/тока светодиода).. ;)

И, конечно, вам нужны внешние переключатели для общих катодов (т.е. с низкой боковой транзистором NPN или NFET), поскольку токи активных сегментов подводят сумму, и в худшем случае катодный ток конкретной цифры будет 8x Isegment, далеко от предела тока STM32.

PS: Популярный MAX7219 не требует резисторов в сегментах, поскольку он использует «источник тока» в сегментах (и эти токи программируемые). Это другой сценарий для нашего STM32, так как STM32 не обладает такой способностью «тока».

ZMEMW16
Вт
Какой статический режим ? который упомянул статичный ?
О, для установки часов, увеличьте ШИМ для текущей цифры и уменьшите ее для других цифр.
Яркий для установленной цифры, потускнел для остальных.
Стивен

Fredbox
Вт
Легкий способ получить небольшой 4-значный 7-сегментный тактовой дисплей-использовать один из модулей TM1637 от Ali или eBay. Две линии данных, мощность и земля, небольшое количество кода, и вы хороши. Эти дисплеи достаточно просты, чтобы вы могли бить без библиотеки - см этот пример.

Если вам нужно 8 цифр, есть много недорогих модулей MAX7219 семи сегмента.

Но я согласен с тем, что интересно провести индивидуальные дисплеи и писать код, чтобы он работал.

ун
Пн 24 июля 2017 г. 18:01
Да, есть много способов осветить ЖК -дисплей 7 сегментов, и спасибо за все хорошие советы !

Теперь Luckylight на столе...
Luckylight KW4563ASA Общий анод
Нет особой изменения требований библиотеки USB просто отменить функцию JTAG
Один ряды булавок припаяют непосредственно к печатной плате
DS18B20 Senzor Display
HMI на серийном USB Maple Port, проверьте HMI с +++;
DFU все еще не работает хорошо
Время TDV для чередования отображения часов или температуры в EEPROM, значение 1-30 секунд
Ссылка на новую версию этих часов RTC:
https: // drive.Google.com/drive/folders/ ... sp = совместное использование


Изображение

STM32 Webradio Player

Рабочая библиотека для SSD1306