Зарегистрированные. Простой таймер на PIC16F628A

Данный проект представляет собой лампу на основе светодиодной УФ ленты с таймером. Диапазон таймера от 1 до 9999 секунд (~2.8 часа). Как показала практика для засветки фоторезиста вполне хватает 90-120 секунд.

Для проекта понадобится:

Некоторые замечания:

  1. Обратите внимание, что для работы нужен индикатор конкретной модели: kem-5461ar. Если индикатора для данной модели нет придется переопределить цифры в коде, как это сделать см. "Разбор кода"
  2. Так же лучше взять не очень высокие электролиты, так как их можно "положить" на плату как можно увидеть на фото ниже.
  3. Микроконтроллер прошивается после распайки всех компонентов на плату, для этого предусмотрены контакты: MISO, SCK, MOSI
Принцип работы:

Питание "лампы" 12V. Вся логика работы завязана на МК atmega8а. Питание для микроконтроллера и индикатора 3.3V, подается через стабилизатор напряжения AMS1117 3.3V.
С помощью энкодера задается время экспонирования, затем по нажатию нижней кнопки запускается процесс засветки при этом управление через энкодер отключается. При истечении времени засветка прекращается. Верхняя кнопки - сброс. Сброс реализован просто замыканием контакта reset на землю.

Процесс разработки:

Вклеиваем ленту в рамку для фотографий:

Прототип я собирал на базе atmega8515 и все кнопки обрабатывались внешними прерываниями, но с переходом на младшую модель пришлось отказаться от одного прерывания, т.к. у atmega8 их 2 против 3 у 8515.

Проверка прототипа на обычной ленте:

С процессом разработки все стандартно: травим плату, сверлим отверстия, распаиваем компоненты начиная с SMD и заканчивая экраном и энкодером. Дополнительно на энкодер припеваем конденсаторы 104 (100nF) для того, что бы избежать дребезга контактов при срабатывании кнопок.

Разбор кода:

Проект можно скачать с github . Проект написан на C с использованием CVAVR.
Итак, если нужный индикатор найти не удалось необходимо изменить значения в данном массиве:

// Цифры для kem-5461ar unsigned char numbers = { //PB7...PB0 //FBGCDpDEA 0b11010111, //0 0b01010000, //1 0b01100111, //2 0b01110101, //3 0b11110000, //4 0b10110101, //5 0b10110111, //6 0b01010001, //7 0b11110111, //8 0b11110101, //9 0b00100000 //- };

Указанный массив представляет собой маску для порта B. Как можно понять из комментария к коду, здесь биты расположены от пина7 порта B до пина 0 порта B (//PB7...PB0). Так же в комментарии указано, какой пин какой сегмент зажигает (//FBGCDpDEA): 7-F, 6-B и т.д. Включение сегмента осуществляется подачей 5v на ногу. На примере "0" видно, что не горят сегменты G и Dp (точка). Порт B конфигурируем как выход:

// Port B initialization DDRB=(1<

За переключение разрядов отвечают биты 0-3 порта C. Конфигурируем порты следующим образом:

// Port C initialization DDRC=(0<

Создаем маску для включения разряда:

// Разряды. unsigned char digit = { 0b11111101, // 1 разряд слева. 0b11111011, // 2 разряд слева. 0b11110111, // 3 разряд слева. 0b11111110 // 4 разряд слева. };

Теперь что бы отображать все 4 числа на индикаторе нужно просто каждый цикл передавать на порт C один из элементов массива digit, например: PORTC = digit;, где step разряд, который нужно зажечь, а на порт B подать элемент нужный элемент массива numbers: PORTB = numbers, где digitByNumbers число от 0 до 10 - цифра, 11 - знак дефиса.

У микроконтроллера atmega8a есть возможность обрабатывать два внешних прерывания. Для этого нужно подключиться к ногам PD2, PD3. Внешние прерывания используются для работы с энкодером. На PD2 подключен контакт энкодера отвечающий за поворот. Срабатывание этого прерывания означает что энкодер был повернут. Что бы определить в какую сторону был повернут энкодер считываем значение с другого контакта. высокий или низкий уровень на этом контакте говорит о направлении вращения:

// External Interrupt 0 service routine interrupt void ext_int0_isr(void) { // Считываем значения порта D4 и если уровень высокий, // отнимаем единицу, если низкий, прибавляем единицу. if(PIND.4) { if(digitByNumbers < 9) { digitByNumbers++; } } else { if(digitByNumbers > 0) { digitByNumbers--; } } }

Второе прерывание отвечает за кнопку на энкодере и двигает разряды позволяя задавать 4-х значные числа. Переменная digitNumber в данном случае номер разряда:

// External Interrupt 1 service routine interrupt void ext_int1_isr(void) { if(digitNumber == 0) { digitNumber = 3; } else { digitNumber--; } }

Последние, что нужно сделать, включить внешние прерывания прерывания и разрешить их #asm("sei") . Включаем прерывания устанавливая в регистры GICR, MCUCR, GIFR следующие значения:

// External Interrupt(s) initialization // INT0: On // INT0 Mode: Rising Edge // INT1: On // INT1 Mode: Falling Edge GICR|=(1<

И наконец прерывание по таймеру. Таймер включается при нажатии на кнопку старт. Т.к. для обработки кнопки старт внешних прерываний не хватило, проверяем постоянно уровень на ноге микроконтроллера и в случае его изменения включаем таймер.

Рассказать в:
Автор - Шабаров Андрей aka htscooter.Опубликовано 25.06.2009.Наглядевшись на просторах интернета печатных плат, изготовленных с помощью фоторезиста, я тоже надумал его попробовать. Естественно, сразу возникло несколько проблем. Ну такие проблемы, как отсутствие фоторезиста, УФ ламп, решались на рынке и в магазине. Конечно нужно тратить денюжку, ну а что поделаешь - если фоторезист еще можно сделать самому, то УФ лампу ну никак. Ну наконец, все есть, можно приступать. И вот тут стал вопрос подбора выдержек засветки. На этапе тестовых полосок с этим успешно справились часы с секундной стрелкой. Но для постоянного использования меня, очччень ленивого кота, это ну никак не устраивало. Было сформировано ТЗ и начался поиск и анализ существующих схем (ну я ж ленивый - самому придумывать). Поиск результатов не дал, я ж кот не только ленивый, но и придирчивый, пришлось все делать самому.

Техзадание довольно простое, но адаптированное под нужды фоторезистивной технологии:
- пределы выдержки 00м 05с -99м 55с;
- управление как лампами, так и компрессором для вакуумного прижима;
- световая и звуковая индикация режимов работы;
- простота управления;
- имеющиеся в наличии или недорогие комплектующие.

По мотивам ТЗ была нарисована примерная схема, и началась доводка устройства на макетке, окончательная схема которого на рисунке ниже:Собственно, все очень просто, ATMega8 или ATMega8L в качестве управляющего элемента, несколько кнопок, четырехразрядный индикатор в динамической индикации и горстка резисторов и транзисторов. В качестве силовых элементов я применил симисторы, включенные через оптосимисторы. Это, конечно вопрос сугубо личный, они у меня были, я их и поставил. Там можно применить и реле, в общем - что есть. Включение оптосимисторов по даташиту, никаких изысков. Единственное, при желании можно исключить RC-цепочку (39 Ом + 0,1мкФ), ее отсутствие не смертельно. Питание схемы тоже максимально простое, транс, диодный мост, электролиты, кренка на 5 вольт. Pullup на кнопки тоже по желанию, ноги порта к плюсу притянуты, на макетке я отлаживал без внешних резисторов. Ну что еще по схеме? Резисторы в базах - плюс-минус какие есть, токоограничивающие по сегментам - в зависимости от индикатора. Кому-то 510 Ом будет ярко, а у меня 150 Ом, так яркости не хватает, индикаторы старые, неяркие. Бузер со встроенным генератором, на 5 вольт. Транзисторы npn на ток порядка 100мА - ВС547, ВС847, КТ3102, КТ315. Питание - трансформатор ТП-112-18, диодный мост на 1А. Вот с симисторами я немножко поволновался - ВТ136 не выдержал пылесоса (1300W), пришлось менять на ВТ140. Для тех котов, кто тоже поставит симисторы и будет использовать пылесос, должен отметить, что радиатор надо ставить побольше, а не то можно обжечь лапы (шутка, лапами к этому радиатору лезть не стоит, с электричеством шутки плохи). Больше 10-ти минутной выдержки мой радиатор не потянет, но поскольку я планирую для этих целей использовать вентилятор, я не сильно переживаю.

Ну теперь по функционалу и работе. Управление выполняется пятью кнопками, из них три - это изменение/установка выдержек, две остальных - включение компрессора и запуск таймера. При запуске таймера включаются и компрессор и подсветка, но компрессор можно принудительно включить в режиме ожидания чтобы подготовить плату с шаблоном к засветке. Для этого и пришлось выводить отдельную кнопку "воздух" для управления компрессором. В режиме ожидания кнопками плюс/минус выбираются сохраненные установки (я сделал три, больше просто нет смысла). При нажатии кнопки "уст" начинают мигать минуты, кнопками плюс/минус меняется значение минут с шагом в 1 минуту (от 0 до 99); второе нажатие "уст" сохраняет значение минут и начинают мигать секунды, их значение меняется таким же образом, но с шагом 5 сек (от 0 до 55). Шаг в 5 секунд был выбран как наиболее оптимальный - при шаге в 1 сек и 10 сек уже не очень комфортно изменять значения. При шаге в 1 сек слишком медленно, а при шаге в 10 - слишком быстро меняются значения. Третье нажатие кнопки "уст" сохраняет значение секунд и таймер переходит в режим ожидания, показывая свежеизмененную выдержку. Запуск таймера происходит по нажатию кнопки "пуск". При этом включается компрессор и засветка, на индикаторе происходит обратный отчет и мигает децимальная точка между минутами и секундами. После окончания выдержки засветка и компрессор выключаются, на экране загорается надпись "OFF" и звучит прерывистый сигнал бузера до тех пор, пока повторно не нажмется кнопка "пуск", после чего таймер опять переходит в режим ожидания, показывая значение выбранной выдержки. Из недостатков работы таймера следует отметить погрешность в 1,5-2 секунды при выдержке в 10 минут. Но поскольку это не часы, то я не стал что-либо с этим делать, для меня такая погрешность некритична.

Печатные платы таймера делались "под себя" на двух односторонних платах - основная с контроллером, питанием и симисторами, и плата с индикатором, кнопками и светодиодами - на переднюю панель. Кстати, если светодиоды не нужны, вместо них нужно поставить резисторы номиналом 510-1000 Ом, иначе оптопары работать не будут. Платы соединяются плоским 20-ти пиновым шлейфом. Применены как SMD, так и DIP компоненты. Внимание! На плате ATMega8 в SMD корпусе, а в схеме распиновка для DIP корпуса! Не перепутайте! Все это я рассчитываю поставить в установку для засветки, корпус как таковой не планировался. Прошивки для индикаторов как с ОК, так и с ОА. При прошивке нужно установить фьюзы на внутренний генератор 8 MHz (впрочем можно и на внешний кварц такого номинала, соответствующие ножки контроллера я не трогал). Прошивки состоят из двух файлов - Flash и EEPROM. Если программа-прошивальшик шьет только одним файлом, это не смертельно, все будет работать и так, но при первом включении нужно будет каждую из предустановок вручную "погонять" для приведения в должный вид.И, естественно, фотки.
Платы в сборе:
Таймер в режиме ожидания:
И в работе (выдержка 2 мин, прошло 10 сек):
Файлы:
Печатная плата в формате SL5.0
Прошивки МКВсе вопросы - в Форум. Раздел:

Светит незнакомая звезда,
снова мы оторваны от дома,
травим мы «печатки» до утра…

Одна старая песня.



Сегодня я расскажу о своей реализации УФ светового прибора для работы с фоторезистом. Законченное устройство я решил сделать года полтора назад. До этого как таковой установки у меня не было, был светильник с УФ-лампой и стекло, извлекаемое из фоторамки на время изготовления ПП.

С карандашом в руках я хорошенько подумал над тем, какой должна быть моя установка, вырисовался примерный концепт. Затем я заказал ящик у знакомого в небольшой мебельной мастерской. Там раскроили и отторцевали ЛДСП по моему эскизу.

Ящик

Чертежей ящика нету, так как делалось всё по карандашному эскизу. Внешние габариты ящика 300×300х400. Стенки соединены между сбой мебельными стяжками (конфирматами). Крышка крепится к ящику обычными рояльными петлями.




В торце ящика я сделал прямоугольный вырез для установки блока электроники.

По внутренним поверхностям с небольшим отступом сверху в ящике имеется 4 глухих отверстия 5 мм. В них устанавливаются мебельные полкодержатели с силиконовыми прокладками - специально для стекла.

Схема таймера для засветки фоторезиста

Функции таймера:
Цифровая индикация отсчёта и задание времени работы
Отключение нагрузки (УФ-ламп) по истечению времени
Звуковая сигнализация состояний: включение прибора, запуск, конец работы
Запуск таймера без включения нагрузки (УФ-ламп)


Индикацию я сделал на четырёхразрядном семисегментном LED-индикаторе, который попался под руку. В качестве органа управления использовал энкодер с кнопкой. Управляющий МК ATtiny2313.
Для звуковых оповещений стоит миниатюрный динамик (буззер) со встроенным генератором. Ну и реле для коммутации нагрузки с катушкой на 5 Вольт.
Для питания схемы взял готовый импульсный блок питания от ЗУ сотового телефона.

Работа таймера

При включении таймера в сеть, динамик издаёт звук, мол, я живой! На индикаторе отображается время работы таймера в минутах, заданное при последнем сеансе. Вращением ручки энкодера изменяется значение таймера в диапазоне 1-99 минут. Значение запоминается в EEPROM и считывается при следующем включении прибора.

Я предусмотрел два режима включения таймера: без включения ламп (короткое нажатие кнопки энкодера) и с включением ламп (длительное, порядка 2 с, нажатие кнопки энкодера). Без включения ламп таймер можно использовать для прочих нужд, по истечении времени будет обычный сигнал, а лампы зря гореть не будут.

Есть возможность выключить таймер в любой момент двойным нажатием кнопки энкодера.

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

Update 12/08/2015
По просьбам трудящихся я реализовал в таймере дополнительный диапазон в секундах . Режим установки времени переключается двойным нажатием кнопки энкодера, когда таймер остановлен. При установке в минутах индикация значения с точкой. При установке в секундах - индикация без точки.
Режим установки времени также запоминается в EEPROM. Максимальное значение в секундах - 999, в минутах - 99, как и прежде. Остальное без изменений.

Печатная плата таймера



Чертежи в DipTrace берите в разделе файлов.

УФ-лампы и силовая часть


Я поставил 4 лампы Feron FLU10 T8 10W G13 Black. Лампы подключены к пуско-регулирующему аппарату (ПРА) ETL-418-A2, который рассчитан на четыре лампы типа Т8, до 18W каждая. Лампы подключаем по схеме указанной на крышке ПРА, а нам остаётся подключить ~220 В через контакты реле таймера.

Сборка установки


Установка ПП, вид снаружи


Вид изнутри

Кусок оргстекла мне досталось от разбомбленных электронных часов с автозаправки. Изнутри обклеено чёрной самоклейкой и сделаны вырезы для индикатора. Да, с царапинами стекло, ну и пусть - не на выставку же.


Не вошло по высоте реле, пришлось немного попортить экстерьер

Крепим два уголка с установленными держателями для УФ-ламп


Держатели трофейные, сняты со старых потолочных светильников «Армстронг».
С учётом держателей ламп и уголков, расстояние от ламп до стекла ~23 см. Большое расстояние от ламп до ПП необходимо для получения равномерной засветки.

Крепим поролон на крышку для прижатия ПП


Клеем полоски двухстороннего скотча



Отрываем защитную бумажку



Прижимаем крышкой - готово!!!

В качестве предметного стекла применил обычное оконное. Мощности ламп достаточно для надёжного и равномерного засвета, поэтому кварцевое стекло искать не стал (хотя его можно выкорчевать из старого сканера).

Видео установки в работе

Резюме

Установка получилась вполне симпатичная, функциональная и безопасная. Готовое устройство для домашней мастерской.

Фьюзы

Low: 0xE4; High: 0xDF; Extended: 0xFF;


Файлы

Проект в DipTrace (схема и печатка), прошивка для микроконтроллера.

12/08/2015 - Обновлена прошивка, добавлен диапазон секунд.
🕗 12/08/15 ⚖️ 2,25 Kb ⇣ 81 Здравствуй, читатель! Меня зовут Игорь, мне 45, я сибиряк и заядлый электронщик-любитель. Я придумал, создал и содержу этот замечательный сайт с 2006 года.
Уже более 10 лет наш журнал существует только на мои средства.

Хорош! Халява кончилась. Хочешь файлы и полезные статьи - помоги мне!

Для засветки фоторезиста в домашних условиях, решил использовать сканер формата А4, который у меня благополучно «скон-чался», да и приобрести бу-шный для этой цели, например можно, начиная от 100 целковых (пачка сигарет дороже стоит, а неисправный и так могут отдать).
В общем решил вдохнуть в сканер "вторую жизнь", тем более, что там стоит кварцевое стекло, которое очень хорошо пропускает ультрафиолет (простое оконное, как нам известно - максимум 10%). Ещё преимущества данного способа - это равномерный прижим платы к стеклу крышкой сканера и постоянное расстояние до источника ультрафиолета, благодаря которому стаёт и постоянным время засветки, которое можно зафиксировать простым таймером.
В итоге вот что получилось:

Рисунок 1.
Приспособление для засветки ПП с фоторезистом.

Разобрал сканер, выкинул внутренности и установил на их место четыре лампы. Использовал для этой цели фурнитуру от обыкновенных люминесцентных ламп, только лампы установил УФ (все это продаётся в магазинах хоз. товаров). Может быть вполне хватило бы и двух ламп, платы всё равно не очень большие в основном, но, как говорится - запас не тянет, поэтому решил, что делать, так уж делать с видом на будущее (для платы формата А4), поэтому и установил четыре, да и время засветки в этом случае будет меньше.
Для управлением процессом засветки используюсь таймером с обратным отсчётом времени, который собрал на микроконтроллере PIC16F628. В итоге весь процесс засветки данной конструкции занимает 30-40 секунд....

Рисунок 2.
Конструкция устройства.

Кто-то может быть скажет, что можно было бы собрать таймер внутри сканера и не заморачиваться с корпусом. Не спорю, вполне кому-то подойдёт и этот вариант, но вдруг мне таймер будет нужен отдельно, для каких то других целей, поэтому решил делать его в собственном корпусе и в виде отдельной законченной конструкции.

Рисунок 3.
Схема таймера.

В интернете, если чуть покопаться, выложено много различных схем всевозможных таймеров. Я остановился на этой схеме, просто у меня PIC16F628 был в наличии, и я решил пустить его в дело.
Может быть Вам понравится другая схема таймера - это Ваш выбор, я просто рассказываю сам процесс, ну и даю описание своих конструкций.

Рисунок 4.
Схема таймера, силовая часть.

Рисунок 5.
Таймер в корпусе.

Рисунок 6.
Силовая часть.

Рисунок 7.
Платы и соединения.

Максимальное время, которое можно установить на таймере - 12 ч 00 м 00 с. После установки времени и нажатии кнопки "Пуск/Стоп" - включается нагрузка и начинается отсчёт времени в обратном порядке от установленного. За 10 секунд до окончания времени - подается короткий звуковой сигнал на «пищалку».
Когда остается 3 секунды до завершения времени - включается «пищалка» до окончания времени. По окончанию времени нагрузка выключается, время на таймере устанавливается то, которое было установлено в начале кнопками.

Теперь кратко опишу сам процесс изготовления печатных плат при помощи фоторезиста. Всё, что описано выше, предназначалось для упрощения данного процесса.
Для работы я использую плёночный негативный фоторезист. Негативный, значит шаблон для его засветки нужно печатать в негативе, то есть те места, где будут дорожки - должны быть прозрачные, а там, где дорожек (фольги) быть не должно - наносится тонер. Если Вы будете использовать позитивный фоторезист, то естественно фотошаблон нужно будет печатать в позитиве.

Распечатываем шаблон через программу для проектирования плат в негативе на прозрачной пленке (я применяю пленку "LOMOND" для струйных принтеров) на струйном принтере. Пробовал на лазерном, только получалось как-то блекло, черноты не было, и платы получались не совсем качественные.
Говорят, что можно гораздо улучшить качество таких плат, если напечатать на лазерном принтере два шаблона на плёнке, затем вырезать их и совместить (т.е. сделать из двух - один).
Ещё можно распечатать рисунок платы лазерным принтером на обычной бумаге. Чем тоньше бумага, тем лучше. Далее, для повышения контрастности (если она не достаточна) на доли секунды погрузить его в банку с растворителем (например автомобильный 647). Дать ему подсохнуть, и потом пропитать подсолнечным маслом, чтобы сделать прозрачным для ультрафиолета, правда я так не пробовал.

Подготавливаем заготовку нашей будущей платы по размерам чуть больше, чем требуется. Затем фольгу необходимо подготовить для приклеивания фоторезиста.
Как всё это делается - нет смысла повторяться, так как этот процесс описан на десятках сайтов. Просто наберите в поисковике "изготовление пп с помощью фоторезиста", и у Вас выскочит куча вариантов, после прочтения пары из них, у Вас наметится вариант, который подойдёт именно для Вас.

Будем считать, что плата уже подготовлена и фоторезист наклеен (или нанесён из баллончика) на нашу плату.
Прикладываем шаблон к плате. Как правило шаблон прилегает к плате плотно. И кладем на стекло сканера с УФ лампами. Засвечиваем. Убираем засвеченную заготовку в темное место и готовим раствор для проявления, в качестве которого я пользуюсь кальцинированной содой (продается в хоз. магазинах применяется для смягчения воды и стоит копейки).
Для этого чайную ложку соды с горкой, растворяем в литре воды (если плата большая), или ложку без горки в 0,5 литре воды.
Берем нашу плату из тёмного места, снимаем верхнюю защитную плёнку с фоторезиста и кладем её в наш раствор с разведенной содой и ждем примерно секунд 30. Потом берем кисточку и начинаем ей водить по нашей плате для того, что бы ускорить процесс смывания фоторезиста с ненужных нам участков. Там где фоторезист смылся, поверхность меди светлая и блестящая. После того как смыли весь ненужный фоторезист, вытаскиваем плату из раствора соды и промываем под струей воды.

Рисунок 8.
Печатная плата, подготовленная для травления.

После того как промыли, просушиваем плату. Осматриваем. Может такое случится что есть протравы (там, где фоторезист не был хорошо приклеен). Используем маркер для рисования печатных плат. Где необходимо ретушируем. На фото №8 видно, что там, где фоторезист не качественный, (срок годности у моего уже вышел) те места подретушированы чёрным маркером.

В прикреплении ниже, собраны файлы для изготовления таймера. Исходник, прошивка, пп.

Архив для статьи.

Это схема простого таймера построенного на микроконтроллере PIC16F628A и индикаторе LCD 1602. Идея таймера позаимствована с одного португальского сайта по радиоэлектронике.

Микроконтроллер PIC16F628A в данной схеме тактируется от внутреннего генератора, который является достаточно точным для данного случая, но поскольку выводы 15 и 16 остаются незанятыми, то можно было бы использовать внешний кварцевый резонатор для большей точности.

Таймер на PIC16F628A. Описание работы

Как уже было сказано ранее, этот проект создан на основе уже существующего проекта, но на самом деле обе схемы отличаются друг от друга, и поэтому код был практически полностью переписан. В таймере для управления есть три кнопки: «START/STOP», «MIN» и «SEC»

  1. «START/STOP» — для запуска и приостановки таймера.
  2. «MIN» — для установки минут. Количество минут устанавливаются от 0 до 99, а затем все начинается снова с 0.
  3. «SEC» — для установки секунд. Секунду также устанавливаются от 0 до 59 и потом снова с 0.

Одновременное нажатие на «MIN» и «SEC» приводит к сбросу таймера во время работы.

Когда время на таймере достигает 00:00, раздается звуковой сигнал (3 коротких и 1 длинный звуковой сигнал) и светодиод HL1 загорается. В качестве звукоизлучателя применен зуммер электромагнитного типа. После этого, при нажатии одной из кнопок, происходит сброс таймера и выключение светодиода HL1.

Когда таймер производит обратный отсчет на выводе 13 (RB7) находится высокий уровень, а при остановке таймера появляется низкий логический уровень. Данный вывод можно использовать для управления внешними исполнительными устройствами. питание таймера осуществляется от cстабилизированного источника на .

Перемычка J1 предназначена для калибровки таймера. При ее замыкании таймер входит в режим настройки. С помощью кнопок «MIN» и «SEC» можно увеличить/уменьшить значение внутреннего параметра, который позволяет замедлять или ускорять работу таймера. Это значение сохраняется в EEPROM. Если находясь в этом режиме нажать кнопку «START/STOP», то этот параметр будет сброшен до значения по умолчанию.

Код написан и скомпилирован с mikroC PRO для PIC.

Параметры проекта:

  • Генератор: INTOSC
  • Частота генератора: 4 МГц
  • Сторожевой Таймер: отключен
  • Power-up таймер: включен
  • RA5/MCLR/VPP: отключен
  • Brown-out: включен

Фото готового таймера.

В продолжение темы:
Компоненты

Казалось бы, что сложного в установке драйверов на ноутбуке, ведь сама операционная система при первичной инсталляции или при ее замене, по идее, выполняет установку...