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

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

Ответ:

Отправлено Тумблер (62.176.13.156) 07 августа 2018, г. 18:59
В ответ на: Ответ: отправлено Exp_t 07 августа 2018, г. 16:01

Что именно нужно, я описал в 1-м сообщении - однако, опишу подробнее.
---
Таймер работает в "в нормальном" режиме (все биты WGMxx равны 0).
Тактовая серия - внешняя, 1 мГц (от кварцевого генератора).
Внешним импульсом (1 [шт] за 10 [сек]) взводится
внешний триггер 74HC74.
(Триггер взводится импульсом аппаратно, а сбрасывается программно по переполнению таймера 1.)
Внешний импульс синхронен с тактовой серией 1 мгц.
Взведение триггера открывает "ворота" и 1 мГц поступает
на вход таймера 1. В регистры OCR1A/OCR1B занесены уставки времени (в тактах). В момент равенства кодов T1CNT и OCR1A/OCR1B на выходах OC1A(PD5)/OC1B(PE2) появляется сигнал, в соответствии с указанным в битах 7-4 TCCR1A.
Может быть установлена 1, может 0, может произойти инверсия
текущего состояния (toggle). Всё вышеописанное устойчиво работает.
Однако, необходимо выполнять эту работу постоянно, а не 1 раз.
Для этого выходы OC1A/OC1B надо вернуть в первоначально состояние, т.е. "сбросить".
После переполнения таймера 1 в процедуре прерывания я это делаю.
И вот это - не работает в режиме установки 1, установки 0. В режиме "toggle" всё работает по документации. Исходники я привёл в одном из сообщений.

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

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

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


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

Ответы


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

Сообщение:

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

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

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

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