[an error occurred while processing this directive] [an error occurred while processing this directive]
Ответ:
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive]

Отправлено hotson 19 декабря 2001 г. 15:53
В ответ на: Дык..(+) отправлено Анатоль 19 декабря 2001 г. 15:14

Что-то похоже, я непонятно рассказал.
Вот что я имею сейчас безо всех задержек:


while(1) //Stay in this loop
{
while(ZERO_ == 1);
Pulse();
while(ZERO_ == 0);
Pulse();
}
____ ____
/ \_____/ \_____ На входе

|_|________|_|_________ На выходе


Так что я никак не могу привязаться к началу каждого полупериода.
Где здесь-то грабли разложены? Почему бы мог импульс со спада так уползти?
Ну хорошо, устав бороться хотел сделать так - беру за основу импульс в конце подъема и отсчитываю две задержки:


____ ____
/ \_____/ \_____ На входе

____|_____|____|_____|_ На выходе

| | |
dim half

Причем half - полпериода и ни от чего не зависит, а dim - переменный. Так нет - импульс в конце half получается только если я перекорежу задержки так, что он попадет на первый полупериод. Т.е. я не могу получить импульса в те полпериода, когда на входе - 0.

Ни хрена не понимаю.
Обычно как - пока письмишко пишешь, глядь - вот она, ошибочка-то :)! А тут - второй раз пишу - ничего не осеняет.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru