Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 30.03.2012, 19:16  
slavik.ksu
Частый гость
 
Регистрация: 20.02.2012
Сообщений: 30
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
slavik.ksu на пути к лучшему
По умолчанию Re: USB коннектор на AVR

Сообщение от a-fisher Посмотреть сообщение
Извините, если заумно... просто у Вас не ясно, "0" пришел, или остался с предыдущего периода.
к сожаленью я так не понимаю
в случае про который Вы говорите: в каждом перидое приходит сигнал , правильно я Вас понимаю? а
сигнал это либо логическая еденица либо логический ноль?
вот я хочу представить как это выглядит, чтобы понять в какие моменты делать две выборки?
Реклама:
slavik.ksu вне форума  
Непрочитано 30.03.2012, 20:52  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: USB коннектор на AVR

Сообщение от slavik.ksu Посмотреть сообщение
к сожаленью я так не понимаю
в случае про который Вы говорите: в каждом перидое приходит сигнал , правильно я Вас понимаю? а
сигнал это либо логическая еденица либо логический ноль?
вот я хочу представить как это выглядит, чтобы понять в какие моменты делать две выборки?
У вас не сказано, что за сигнал. Но в теме присутствует слово USB. Логично предположить, что сигнал цифровой. Максимальная частота равна 1,5 МГц. Скважность (в случае, если сигнал идёт с максимальной частотой) равна 2. Это значит, что сигнал состоит из пар "половинок". Каждая "половинка" может быть как 0, так и 1. Длительность этих элементарных "половинок" равна 333 нс.

Это означает, что сигнал может менять свой уровень, но не чаще чем через 333 нс. А может и не менять.

Когда делается выборка, в тот самый момент времени оцениваются входные сигналы. Если уровень больше верхнего порога - считается, что на входе 1. Если меньше нижнего порога - считается, что на входе 0. Если уровень между нижним и верхним порогом, то считаться может произвольная величина.

Из этого следует, что если вы делаете выборки каждые 333 нс, вы можете ошибочно считать сигнал, и этот ошибочно считанный сигнал будет выдан на выход с длительностью 333 нс. То есть, произойдёт искажение сигнала.

Если вы будете делать выборки каждые 10 нс, то ошибочный сигнал на выходе может продержаться всего 10 нс.

У вас же сказано, что выходной сигнал должен меняться одновременно. Это означает (но опять-таки нет точных цифр), что ошибочно считанные данные не должны быть выданы на выход.

Программно логики работы такова:

Мы, постоянно следим за сигналом. И вот наступил момент, когда на одном из входов (или на обоих сразу) он изменился.
Чтобы удостовериться, что мы считали правильно, мы ещё раз считываем сигнал. Если его состояние такое же, как и при предыдущем считывании, мы можем со спокойной душой отправлять его на выход.

Если же состояние олично от предыдущего, мы ещё раз считываем сигнал (то есть, предыдущий раз мы его считали в момент изменения). Убеждаемся, что сигнал такой же и его можно выводить на выход.

Чтобы такой алгоритм работал корректно, считывать состояние сигналов мы должны с большей частотой.

Частота выбирается такой, чтобы за интервал 333 нс мы могли считать сигнал, а также ещё два раза считать сигнал повторно. То есть, более чем в 2 раза больше (интервал менее 166 нс). Ну и ещё запасик оставить.

К тому же надо позаботиться о сохранении исходной длительности импульса. Для этого надо, чтобы цикл опроса всегда повторялся через один и тот же промежуток времени. А также, чтобы вывод сигнала на выход также осуществлялся через одинаковые промежутки времени. Желательно, чтобы на 333 нс помещалось цело число таких промежутков (исходя из вышесказанного - не менее 3). Лучше - 4. То есть, считывать надо с интервалом 66 нс.

Вот, вроде бы и всё. Ах да. Тут не было ни слова о кнопке и обработке "заморозки" сигнала. Это всё нужно только для того, чтобы правильно передать входной сигнал.

Последний раз редактировалось Godzilla82; 30.03.2012 в 21:07.
Godzilla82 вне форума  
Непрочитано 31.03.2012, 13:06  
slavik.ksu
Частый гость
 
Регистрация: 20.02.2012
Сообщений: 30
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
slavik.ksu на пути к лучшему
По умолчанию Re: USB коннектор на AVR

Сообщение от Godzilla82 Посмотреть сообщение
У вас не сказано, что за сигнал. Но в теме присутствует слово USB. Логично предположить, что сигнал цифровой. Максимальная частота равна 1,5 МГц. Скважность (в случае, если сигнал идёт с максимальной частотой) равна 2. Это значит, что сигнал состоит из пар "половинок". Каждая "половинка" может быть как 0, так и 1. Длительность этих элементарных "половинок" равна 333 нс.
Это означает, что сигнал может менять свой уровень, но не чаще чем через 333 нс. А может и не менять
Вот теперь понятно что представляет из себя сигнал! Спасибо за подробное объяснение!
только теперь не совсем уяснил что значит "ошибочный сигнал". Откуда появляется ошибочный
если мы считываем со входа? имеются ввиду помехи?(например рядом с нашим коннектором работает мощный двигатель и изза него идут какие то наводки). то есть устройство нам передает "0", а изза помех мы видим этот сигнал как “1” ? И чтобы уловить такие помехи мы опрашиваем вход не менее 3 раз за 333нс?
slavik.ksu вне форума  
Непрочитано 31.03.2012, 13:14  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: USB коннектор на AVR

Сообщение от slavik.ksu Посмотреть сообщение
что значит "ошибочный сигнал". Откуда появляется ошибочный если мы считываем со входа?
Ошибочный - если мы считываем в момент смены входного сигнала. Например, было 00, сменилось на 11, а мы прочитали 01.

Алгоритм не учитывает помехи. Считается, что помех нет.
Godzilla82 вне форума  
Непрочитано 31.03.2012, 13:28  
a-fisher
Прописка
 
Аватар для a-fisher
 
Регистрация: 15.11.2007
Адрес: СПБ
Сообщений: 214
Сказал спасибо: 37
Сказали Спасибо 42 раз(а) в 34 сообщении(ях)
a-fisher на пути к лучшему
По умолчанию Re: USB коннектор на AVR

По скольку судя по тз у нас сигнал дифференциальный, то он может быть или 01, или 10, любая другая считанная комбинация ошибочна (неважно, из-за чего).
a-fisher вне форума  
Непрочитано 31.03.2012, 13:37  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: USB коннектор на AVR

Сообщение от a-fisher Посмотреть сообщение
По скольку судя по тз у нас сигнал дифференциальный, то он может быть или 01, или 10, любая другая считанная комбинация ошибочна (неважно, из-за чего).
Если сигнал дифференциальный, смысл анализировать второй канал нет. Достаточно инвертировать первый. Это немного упрощает задачу.

Так как сигнал однонаправленный. То это не похоже на USB. С таким же успехом это могут быть две линии данных. Или линия данных и линия синхронизации. Надо уточнять.

Последний раз редактировалось Godzilla82; 31.03.2012 в 13:41.
Godzilla82 вне форума  
Непрочитано 31.03.2012, 13:50  
slavik.ksu
Частый гость
 
Регистрация: 20.02.2012
Сообщений: 30
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
slavik.ksu на пути к лучшему
По умолчанию Re: USB коннектор на AVR

Сообщение от Godzilla82 Посмотреть сообщение
Ошибочный - если мы считываем в момент смены входного сигнала. Например, было 00, сменилось на 11, а мы прочитали 01.
Имеется ввиду один вход? то есть в N периоде на первый вход пришло 00 а в N+1 периоде уже 11?
или на первом и втором входе были нули, потом на оба входа пришли две еденички?
slavik.ksu вне форума  
Непрочитано 31.03.2012, 13:53  
Godzilla82
Почётный гражданин KAZUS.RU
 
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
Godzilla82 на пути к лучшему
Сообщение Re: USB коннектор на AVR

Сообщение от slavik.ksu Посмотреть сообщение
Имеется ввиду один вход? то есть в N периоде на первый вход пришло 00 а в N+1 периоде уже 11?
или на первом и втором входе были нули, потом на оба входа пришли две еденички?
Нет. Имеется ввиду два входа. Один из которых (или оба) мы можем считать ошибочно.
Godzilla82 вне форума  
Непрочитано 31.03.2012, 13:54  
a-fisher
Прописка
 
Аватар для a-fisher
 
Регистрация: 15.11.2007
Адрес: СПБ
Сообщений: 214
Сказал спасибо: 37
Сказали Спасибо 42 раз(а) в 34 сообщении(ях)
a-fisher на пути к лучшему
По умолчанию Re: USB коннектор на AVR

Сообщение от slavik.ksu Посмотреть сообщение
Имеется ввиду один вход? то есть в N периоде на первый вход пришло 00 а в N+1 периоде уже 11?
или на первом и втором входе были нули, потом на оба входа пришли две еденички?
Имелось в виду, если мы производим чтение порта в момент смены входного сигнала, то мы можем прочитать что угодно.
a-fisher вне форума  
Непрочитано 31.03.2012, 14:07  
slavik.ksu
Частый гость
 
Регистрация: 20.02.2012
Сообщений: 30
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
slavik.ksu на пути к лучшему
По умолчанию Re: USB коннектор на AVR

значит строго говоря у нас сигнал имеет не такое(верхний рисунок) представление и такое(нижний рисунок)?
Длительность периодов не соблюдаю на рисунках
Миниатюры:
Нажмите на изображение для увеличения
Название: сигнал.png
Просмотров: 31
Размер:	6.8 Кб
ID:	33278  
slavik.ksu вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
usb джойстик на avr bobrozub Микроконтроллеры, АЦП, память и т.д 7 14.03.2012 20:24
USB клавиатура + AVR Serdgo96 Микроконтроллеры, АЦП, память и т.д 2 25.02.2010 22:55
USB Коннектор, разпиновка nerozero Информация по радиокомпонентам 2 05.10.2007 14:20
AVR...USB Edd-Layer Микроконтроллеры, АЦП, память и т.д 4 11.04.2007 21:37


Часовой пояс GMT +4, время: 04:13.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot