Помогите плз с программкой маленькой разобраться, написанной на С.
Контроллер PIC16F628, три кнопки, LCD дисплей – все это таймер 99мин 59 сек.
Проблема в том, что после отсчета установленного времени, таймер устанавливается в 00 00. А надо, чтобы было последнее установленное время. В программировании не силен, поэтому не могу понять, когда и что писать (считывать) в EEPROM.
На всякий случай исходник и схему прилагаю.
Заранее спасибо всем откликнувшимся!
Нужна помощь по таймеру.
Нужна помощь по таймеру.
- Вложения
-
- Timer (schematic).png
- (157.46 КБ) 356 скачиваний
-
- Timer (PIC16F628A).c
- (6.95 КБ) 307 скачиваний
- Реклама
Re: Нужна помощь по таймеру.
1) "Когда". Насколько я понял, пока не нажата кнопка "Start", можно изменять заданное время кнопками "Min" и "Sec". А кнопка "Start" нажимается, чтобы запустить отсчет, когда "заданное время" уже установлено. Значит, именно при нажатии кнопки "Start" нужно запомнить это "заданное время", чтобы оно потом могло использоваться повторно.tele13 писал(а):...когда и что писать (считывать) в EEPROM.
2) "Что" и "куда". Записать нужно будет значение переменных seconds и minutes. Можно записать просто в ОЗУ, т.е. создать переменные, например, seconds_set и minutes_set. Но они будут сохраняться только до выключения питания устройства. Можно записать их в ячейки EEPROM - тогда они сохраняться и при отсутствии питания.
3) Чтобы восстановить прежнее "заданное время" после окончания отсчета - нужно будет переменным seconds и minutes присвоить сохраненные значения seconds_set и minutes_set.
Re: Нужна помощь по таймеру.
2) "Что" и "куда". Записать нужно будет значение переменных seconds и minutes. Можно записать просто в ОЗУ, т.е. создать переменные, например, seconds_set и minutes_set. Но они будут сохраняться только до выключения питания устройства. Можно записать их в ячейки EEPROM - тогда они сохраняться и при отсутствии питания.tsb писал(а):1) ... Значит, именно при нажатии кнопки "Start" нужно запомнить это "заданное время",...tele13 писал(а):...когда и что писать (считывать) в EEPROM.
3) Чтобы восстановить прежнее "заданное время" после окончания отсчета - нужно будет переменным seconds и minutes присвоить сохраненные значения seconds_set и minutes_set.[/quote]
1. Писать надо при вводе min и sec - разобрался.
2. Только в EEPROM.
3. Согласен, логично вытекает из п.п. 1, 2
Всем, принявшим активное участие в помощи - СПАСИБО!
Тема закрыта
