Экономичные игральные кости на PIC12F629

Эта поделка реализует электронную версию 2-х стандартных игральных костей с помощью 14 светодиодов, образующих при свечении аналог 2-х игральных костей и микроконтроллере PIC12F629. Как и в обычных не электронных костях, например, для игры в «нарды», выдаются два случайных и независимых значения от 1 до 6 одновременно. Расположение светодиодов стилизовано под стандартные кости.

При нажатии на кнопку, в течении 3 сек. выдается очередная комбинация, потом светодиоды гаснут до следующего нажатия кнопки. Если кнопка не нажата в течении 15 секунд, прибор переходит в спящий режим с током потребления не более 1 мкА по тестеру. При последующем нажатии на кнопку, работа устройства продолжается в обычном режиме. У прибора нет выключателя питания, он всегда готов к использованию и включается сразу при нажатии кнопки. Простой расчет показывает, что при питании от 3-х дешевых солевых батареек, заряда хватит на 10000 «бросаний» костей (средний ток при свечении светодиодов — 15 мА). А в спящем режиме он может находиться годы…

В силу ограниченного числа выводов, применена динамическая индикация — каждая «кость» зажигается в течении 10 мс попеременно с другой. Каждая «кость» состоит из светодиодов, собранных в три группы (1, 2 и 4 светодиода), комбинацией свечения которых получаются все шесть значений. Одноименные группы соединены вместе и подключены к портам GP0 — GP2 микроконтроллера через токоограничительные резисторы R2-R4. Все светодиоды, кроме D4 и D11, включены попарно последовательно. В цепи D4, D11 (здесь не два последовательных, а один светодиод в группе) для выравнивания яркости свечения разных групп при напряжении питания 3.5 — 4.7 В, введены диоды VD1 и VD2. С той же целью сопротивление резистора R2 уменьшена в два раза (в группе две параллельных цепочки светодиодов). Объединенные катоды светодиодов, образующих каждую «кость», подключены соответственно к портам GP4 и GP5. Частота динамической индикации — 50 Гц. Кнопка S1 подключена к входу GP3, сконфигурированному как обычный вход.

Случайность выдаваемых значений обеспечивается следующим образом. Таймер TMR1 тактируется частотой 1 Мгц, а значит переполняется раз в 0.065 сек. При нажатии кнопки, фиксируется состояние таймера и оно абсолютно случайно из-за субъективного характера периодичности нажатия кнопки. Значение одной «кости» вычисляется из младшего байта таймера, а другой — из старшего.

Прибор питается от 3-х элементов АА, напряжением 4.5 В. Свечение светодиодов остается достаточно ярким до напряжения батареи в 3.5 В. Из-за дороговизны и дефицитности стабилизаторов с собственным потреблением в единицы микроампер, было решено применить непосредственное подключение прибора к батарее питания. Это приводит к некоторому снижению яркости в конце срока ее службы, но позволяет получить сверхнизкое потребление тока в режиме ожидания.

Прибор собран на печатной плате размерами 50мм на 60мм.

Светодиоды применены диаметром 3 мм, потому что они визуально ярче и больше похожи на точки игральных костей. VD1, VD2 типа КД521. На плате предусмотрено место для непосредственного впаивания тактовой кнопки. В случае применения выносной кнопки, она подключается к плате двумя отрезками проводов.

Исходный код написан и откомпилирован в среде MikroC. Исходный код, прошивка, проект Proteus и чертеж платы в формате LAY приведены во вложении.

P.S. Всякие моргания на видео — результат биений частот камеры и ДИ. В реале все стабильно.


Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

DD1
МК PIC 8-битPIC12F6291
VD1, VD2
ДиодКД521Д2
КД522D1-D14
СветодиодКрасный 3мм14
R1
Резистор10 кОм1
0.125ВтR2
Резистор100 Ом1
R3
Резистор200 Ом1
R4
Резистор220 Ом1
C1
Электролитический конденсатор47мкФ 10В1
S1
КнопкаKAN-06111
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.