Mega32 Timer/Counter как внешний счетчик

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Mega32 Timer/Counter как внешний счетчик

Сообщение o_serg » 29 июн 2009, 16:36

помогите разобраться с счетчиком Mega32 вот инициализация:
Код: Выделить всё
// Timer/Counter 1 initialization
// Clock source: T1 pin Rising Edge
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Rising Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x07;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

T1 (PORTB.1) замыкаю на - , нога настроена на вход с включенным подтягивающим резистором
Читаю TCNT1L - счетчик не считает, что делаю не так, подскажите?
o_serg
 
Сообщения: 62
Зарегистрирован: 23 май 2006, 23:14
Откуда: Kostroma

Re: Mega32 Timer/Counter как внешний счетчик

Сообщение avr123.nm.ru » 29 июн 2009, 17:10

Это в реале или в симуляторе ?

Попробуйте настроить таймер мастером компилятора ICC - в нем настройка таймеров AVR ИМХО более наглядна и понятна чем в мастере CVAVR - пример и скриншоты там http://avr123.nm.ru/z6.htm


У вас "райзин едж" - т.е. фронт считает - из 0 в 1 вот потыкал в мастере CVAVR для спада - "фолин эдж" - но не проверял в PROTEUS

Код: Выделить всё
// Timer/Counter 1 initialization
// Clock source: T1 pin Falling Edge
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x06;

далее все нули ...
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Re: Mega32 Timer/Counter как внешний счетчик

Сообщение o_serg » 29 июн 2009, 17:19

это реальный девайс, с такими настройками тоже пробовал - результат тот же, хотя по моему с райз тоже должно срабатывать, ведь я замыкаю уровень = 0, убираю перемычку и он должен сработать?
ICC когда выбираю falling или rising edge всегда пишет ошибку в поле Actual value, что нужно при этом писать в Desired value не понимаю
Значение счетчика нужно из TCNT1L считывать?
o_serg
 
Сообщения: 62
Зарегистрирован: 23 май 2006, 23:14
Откуда: Kostroma

Re: Mega32 Timer/Counter как внешний счетчик

Сообщение avr123.nm.ru » 29 июн 2009, 17:23

В PROTEUS у меня работает - считает аки бешеный. Вот в архиве CVAVR PROTEUS
Вложения
m32_T1.rar
(74.13 КиБ) Скачиваний: 11
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11