Обсуждаем цифровые устройства...
Ответить

Re: Таймер обратного отсчета.

Пт май 21, 2021 21:24:08

при нетронутых фьюзах, всё будет перепрошиваться

Re: Таймер обратного отсчета.

Пт май 21, 2021 21:36:44

Я только две последние конструкции собрал на АВР, до этого пользовал ПИКи. С ними проще, все в программе, биты конфигурации прописаны сразу. Тем более, что последние программаторы сохраняют константу.

А что сподвигло перейти на АВР ? ))

Re: Таймер обратного отсчета.

Пт май 21, 2021 22:22:01

Да я и не переходил. Поскольку пробовал программировать ПИКи, то и собирал конструкции на них. Понравились конструкции на АВР - собрал. Попробую программировать АВР в БАСКОМе, может получится.

Re: Таймер обратного отсчета.

Пт май 21, 2021 22:47:01

Еще вопрос: если после прошивки микроконтроллера с фьюзами по умолчанию таймер не захочет "фунциклировать", перепрограммировать можно? Не нужно обращаться к доктору фьюзов?

Ну, если вы фьюзы не трогаете, а именно от них зависит, в каком режиме будет "фунциклировать" МК, то почему он должен перестать перепрошиваться?
МК может не прошиваться в трёх основных случаях-
изменили SPIEN
изменили RSTDISBL
установили (неправильно установили) тактирование от внешнего генератора или от кварца
И то- в случае, если поставили тактирование от кварца, это достаточно легко лечится, а "внутрисхемно" вы этого можете даже не заметить, если кварц или внешний генератор есть, то он и будет работать.

Re: Таймер обратного отсчета.

Пт май 21, 2021 22:48:08

Ну... Удачи ! А БАСКОМЕ - это что ?

Re: Таймер обратного отсчета.

Пт май 21, 2021 23:40:04

А БАСКОМЕ - это что ?

https://ru.wikipedia.org/wiki/Bascom-avr
Bascom-AVR - интегрированная среда разработки программ для микроконтроллеров семейства Atmel AVR на языке высокого уровня (Basic).
"удобнопонимаема", хотя и с тудом, тем, кто когда- то изучал бейсик - он входил в пакет "МС-ДОС", присутствовал в спектрумах, и ещё в каких- то бытовых компьютерах.. Наши программисты на С от него "попу морщат", а вот поляки и немцы на баскоме писать очень любят..

Re: Таймер обратного отсчета.

Сб май 22, 2021 00:04:47

Ну всё понятно ! ещё одна среда разработки ! )) А бейсик то вообще чем отличается ? Я на спектруме немного юзал его ... давно это было ... Ну и как бы разница бейсика от других , как я понял - это не надо специально обьявлять переменные , их объявление, и тип ... не важен . Там писали LET a=10 и даже точку с запятой не надо было ...

Re: Таймер обратного отсчета.

Сб май 22, 2021 00:20:32

Ну, в общем- то отличается, хотя общий принцип более- менее понятен. И ещё есть много учебников по баскому..
Есть тонкости, плюс ещё- в чём я никак не разберусь - задаётся тип чипа, но там не всегда срабатывают установки по умолчанию, надо корректировать, а принцип я не понял. Этим надо заниматься, а, если "раз в год по обещанию" - даже если раз разобрался, то забываешь..
И ещё- в отличии от простого бейсика, баском не умеет делать несколько арифметических действий в одной строке- если что- то считать, то надо всю формулу разбивать на отдельные строки. :facepalm:

Попробовал смоделировать этот "минутник" в протеусе.. РАБОТАЕТ, но, если я правильно понял, бит SKDIV8 от установки "по умолчанию" нужно поменять на противоположный (выключить делитель на 8 ) иначе "процесс" происходит в 8 раз мееееееееедленнее :)))
Зуммер нужен АКТИВНЫЙ, (со встроенным генератором) типа такого, например:
https://www.chipdip.ru/product/hcm1203x

зы.. В статье даны ДВЕ прошивки:
timer.hex и Minutnik_2313_bat_sleep.hex, работает ВТОРАЯ (Minutnik........)
Первая (timer) "дёргает" лапками МК, но, то ли под неё другая схема, то ли ещё что, протеус рисует "конфликты по сигналам"..

Re: Таймер обратного отсчета.

Сб май 22, 2021 07:20:35

Спасибо, АлександрЛ! Печатку нарисовал, энкодер проверил. Вот только индикаторов таких нет. Есть или без часовой "дроби", или децимальные точки не горят. Что-то китайцы экономят. В общем - приступаю к процессу.
Кстати, о галочках-фьюзах, в какой программе-программаторе эту галочку (бит SKDIV8) инвертировать?

Re: Таймер обратного отсчета.

Сб май 22, 2021 08:11:59

в той, которой будете прошивать.....сначала читаете фьюзы, а потом один этот изменяете....
===
(или вы только пишите, не читая и не интересуясь, что там внутри ???....))))))....)

Re: Таймер обратного отсчета.

Сб май 22, 2021 17:05:33

Печатку нарисовал, энкодер проверил. Вот только индикаторов таких нет. Есть или без часовой "дроби", или децимальные точки не горят.

Реально там децимальные точки не нужны, там светится только одна точка после секунд, и больше ничего..
Да, вообще- то, для уменьшения чувствительности к помехам, неплохо бы добавить резисторов от выходов энкодера и кнопки на плюс питания, от 10 кОм (если не жалко батарейки), до 51 кОм, если "жалко" :))) ) а то тех "внутренних резисторов" как- то не очень хватает..

На счёт SKDIV8 уже написали- программатором считываете фьюзы, меняете SKDIV8 и записываете фьюзы обратно.
Фьюзы.png
(56.57 KiB) Скачиваний: 110

Я пользуюсь вот таким "калькулятором"-
http://homes-smart.ru/fusecalc/?prog=av ... ATtiny2313

зы.. У вас какой программой "обслуживается" программатор?

Re: Таймер обратного отсчета.

Пн май 24, 2021 14:58:51

Разрешите показать свой таймер. Он 6 канальный, аналог ВЛ65.. :oops:
Описание
АтМега8, 4хзначный 7 сегментник ОА, 3 кнопки + СТАРТ(с фиксацией)
Ассемблер
Время идет ВПЕРЕД от 0 до 999 сек. На каждой секунде сравнивается с уставками 6 таймеров. Если время больше установленного и
нажата "СТАРТ" и время <999сек - выход включен.
Таймеры хранятся в ЕЕПРОМ, при каждом старте оттуда читаются.
Есть контроль целостности ЕЕПРОМ
Короткое нажатие Ентер покажет установленное время таймера (его номер показывает 1й разряд)
Нажатие вверх/вниз изменяет номер таймера и показывает его установленное время.
Длинное (2,5сек) нажатие Ентер = вход в установки таймеров.
В установках-
вверх/вниз изменяет время, длительное нажатие ускоряет набор
Короткое Ентер - переход к следующему таймеру
Длинное (2,5сек) нажатие Ентер - запись всех таймеров в ЕЕПРОМ и выход
Возможно изменение установок таймеров "на ходу", однако это может привести к сработке/выключению канала.
При разрушении данных в ЕЕПРОМ высвечивается Егг

Это на работе развалились все таймеры, вот и сделал
Кстати, никогда не работал с OSSCAL, протей предупреждает, что слишком резво изменяю частоту генератора. Как сделать правильно? :?
Проект пока на "бумаге"
6Chan_Timer.zip
(124.55 KiB) Скачиваний: 149

Re: Таймер обратного отсчета.

Вт май 25, 2021 22:16:03

Все эти таймеры можно сделать на С ! Ассемблер это конечно круто ... )) Но нафиг не нужно !

Re: Таймер обратного отсчета.

Вт май 25, 2021 22:39:37

Можно и на беисике, Паскале, и даже, наверное, на алголе. Ну вот не начинайте полемику асм или Си. Я вот вижу, что делаю на асме, а Си только «читаю со словарём».
Мне не пришло бы в голову делать таймер вообще, просто обстоятельства так сложились. Просто поделился.

Re: Таймер обратного отсчета.

Ср июн 16, 2021 18:19:05

зы.. У вас какой программой "обслуживается" программатор?

Прошу прощения, АлександрЛ, долго не заглядывал на форум, вовремя не ответил на Ваш вопрос. АВРДУД и СинаПрог. Изготовление этого таймера было временно приостановлено, доводил до ума агрегат, ради которого и сделал два других таймера. Теперь очередь таймера с энкодером.
1en2-1, как-то я не вникал глубоко, что там внутри, на данном этапе мне важно сделать то, что хочу, вникать буду по мере возникновения вопросов. Это будет только третья конструкция на АВР, так что все впереди.
Ответить