barbus | Дата: Воскресенье, 15.04.2012, 14:00 | Сообщение # 1 |
Лейтенант
Группа: Пользователи
Сообщений: 53
Статус: Offline
| На этом сайте http://picprojects.org.uk/projects/counter/counter.htm есть схема счетчика импульсов. Помогите в коде этого счетчика добавить режим для управления выходом. Нужно чтобы когда счетчик доходит до заданного значения и не включен режим удержания, выход включался на заданное время и отключался, не реагируя на дальнейшие сигналы на входе, до следующего раза когда он дойдет до заданного значения. Когда включен режим удержания то при достижении до заданного значения счет останавливается и выход остается на высоком уровне, то есть нагрузка остается включенным до того времени пока в ручную не сбросить счетчик.
За ранее всем спасибо за помощь.
Сообщение отредактировал barbus - Воскресенье, 15.04.2012, 14:01 |
|
| |
barbus | Дата: Среда, 18.04.2012, 19:09 | Сообщение # 2 |
Лейтенант
Группа: Пользователи
Сообщений: 53
Статус: Offline
| Добавил вот такой код но, он работает не коректно
counter2009.asm cnt1 cnt2 ST
counter_functions.inc
_upNoHold call _resetCounter bsf indLED, overflow bsf overflowPulse call _TIM_1S bcf indLED, overflow bcf overflowPulse goto _exitInt
--------------
_TIM01 Movlw .65 movwf cnt1 movlw .255 movwf cnt2 _dloop clrwdt decfsz cnt2, f goto $ 2 decfsz cnt1, f goto _dloop return ; ---------------------------- _TIM_1S Movlw .5 movwf ST call _TIM01 clrwdt decfsz ST, f goto $ -3 return
Можете просматреть в чем проблема, чип рестартует.
|
|
| |