Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Ответ: как то так, но отсюда мало что видно..

Отправлено Тумблер (62.176.13.156) 07 августа 2018, г. 13:18
В ответ на: Дык... отправлено Точка опоры 07 августа 2018, г. 11:05

Инициализация была такая:
Toggle - это то, что удалось добиться по описанию
Auto - способ решения проблемы

....
// инициализаци таймера 1
TCNT1 = 0;

#ifdef T1MODE_TOGGLE
TCCR1A = 0x50;
// спрограммируем моду "toggle", и по прерыванию таймера установим биты.
#endif

#ifdef T1MODE_AUTO
TCCR1A = 0xF0;
#endif

TCCR1B = 0x07;//внешняя серия

#ifdef T1MODE_TOGGLE
OCR1A = 2-1;
OCR1B = 3-1;
#endif

#ifdef T1MODE_AUTO
OCR1A = 3-1;
OCR1B = 4-1;
#endif

#ifdef T1MODE_AUTO
o1st=0;
#endif

// разрешаем прерывание таймеру 1
ITT1_EN

// разрешим все прерывания
EI

...


//---------------------------------------------------------------
// прерывания от таймера 1
//
interrupt [TIMER1_OVF1_vect] void t1_tim (void)
{
#ifdef T1MODE_TOGGLE

//#define T1CLK_EN PORTT1RESET |= T1RESET_BIT;
//#define T1CLK_DIS PORTT1RESET &= ~T1RESET_BIT;
//#define T1CLK_RES T1CLK_DIS T1CLK_EN

T1CLK_RES // запрет внешней серии сбросом внешнего триггера
// устанавливается внешним импульсом
TCNT1 = 0;

//#define OCR1ARES if(PIND & (PD5)) {TCCR1A |= FOC1A;}
//#define OCR1BRES if(PINE & (PE2)) {TCCR1A |= FOC1B;}

OCR1ARES
OCR1BRES

// SCOP1
// SCOP0
#endif

#ifdef T1MODE_AUTO
switch(o1st)
{
case 0:
TCCR1B = 0;
TCCR1A = 0xA0;
OCR1A = 0xFFFE;
OCR1B = 0xFFFE;
TCNT1 = 0xFFFD;
TCCR1B = 0x07;
o1st=1;
break;
case 1:
T1CLK_RES
TCNT1 = 0;
OCR1A = 3-1;
OCR1B = 4-1;
TCCR1A = 0xF0;
o1st=0;
break;
default: o1st=0;break;
}
// SCOP1
// SCOP0
#endif

}
//----------------------------------------------------------------



Если вы - "Тумблер", то можете присоединить файл к сообщению.

Имя*:    Пароль*: 
Максимальный размер файла: 65536 байт.
Разрешённые форматы: png gif pdf jpg jpeg zip rar

(* - обязательные поля)


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 234:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru