реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Выход компаратора
777777
сообщение Aug 25 2009, 18:04
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Нет ли среди обычных (не xmega) АВРок такой, у которой выход компаратора выведен наружу?
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 25 2009, 18:44
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



К сожалению нет. А что Вы хотели соорудить?


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Aug 26 2009, 00:17
Сообщение #3


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Цитата(Rst7 @ Aug 26 2009, 03:44) *
К сожалению нет. А что Вы хотели соорудить?

Скорее всего, нужна экономия места на плате rolleyes.gif


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
dimka76
сообщение Aug 26 2009, 04:29
Сообщение #4


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(777777 @ Aug 25 2009, 22:04) *
Нет ли среди обычных (не xmega) АВРок такой, у которой выход компаратора выведен наружу?


Как уже сказали - нет. Но ведь можно и программно сделать. По прерыванию дергать ножкой. Правда быстродействие эквивалентного компаратора несколько упадет.


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
777777
сообщение Aug 26 2009, 06:55
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(haker_fox @ Aug 26 2009, 04:17) *
Скорее всего, нужна экономия места на плате rolleyes.gif

Нет, нужна экономия проводов. Есть мысль соорудить выносное устройство, питающееся по двум проводам и по ним же управляющееся. То есть на фоне питающего напряжения 12 В передавать сигнал UARTа с амплитудой, например, 1 В. В приборе его надо выделить и преобразовать в логический уровень после чего подать на вход UARTа.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 26 2009, 07:03
Сообщение #6


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Сделайте софтовый UART на прием wink.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
dimka76
сообщение Aug 26 2009, 07:06
Сообщение #7


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(777777 @ Aug 26 2009, 10:55) *
Нет, нужна экономия проводов. Есть мысль соорудить выносное устройство, питающееся по двум проводам и по ним же управляющееся. То есть на фоне питающего напряжения 12 В передавать сигнал UARTа с амплитудой, например, 1 В. В приборе его надо выделить и преобразовать в логический уровень после чего подать на вход UARTа.


Но установка отдельного компаратора на плате, не добавит проводов к вашему устройству. А если вы собираетесь применять это для UART, то для его скоростей задержки, связанные с формированием программного выхода компаратора не окажут большого влияния на процесс передачи данных.


Цитата(Rst7 @ Aug 26 2009, 11:03) *
Сделайте софтовый UART на прием wink.gif


Уж лучше софтовый выход компаратора. Меньше вычислительной нагрузки на контроллер.


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 26 2009, 07:09
Сообщение #8


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Уж лучше софтовый выход компаратора. Меньше вычислительной нагрузки на контроллер.


Вы ошибаетесь.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
prottoss
сообщение Aug 26 2009, 07:17
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(777777 @ Aug 26 2009, 14:55) *
Нет, нужна экономия проводов. Есть мысль соорудить выносное устройство, питающееся по двум проводам и по ним же управляющееся. То есть на фоне питающего напряжения 12 В передавать сигнал UARTа с амплитудой, например, 1 В. В приборе его надо выделить и преобразовать в логический уровень после чего подать на вход UARTа.
Сделайте на подобии того, как организовано питание датчиков в 1-ware. Т.е. в отсутствии сигнала у Вас по линии связи идет питающее напряжение. На линию питания надо будет поставить инвертор, он же будет выполнять роль компаратора/преобразователя уровня.


--------------------
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 26 2009, 07:27
Сообщение #10


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
На линию питания надо будет поставить инвертор, он же будет выполнять роль компаратора/преобразователя уровня.


Зачем? Для аля-1-wire и UART инвертор не нужен. Хватит делителя с + питания на прямо на соответствующий пин проца. Если питание 12В, а проц от 5ти вольт, то два резистора килоом по 10 решат вопрос.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
dimka76
сообщение Aug 26 2009, 08:58
Сообщение #11


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(Rst7 @ Aug 26 2009, 11:09) *
Вы ошибаетесь.


настраиваем прерывание от компаратора на режим Comparator Interrupt on Output Toggle.
в самом прерывании
Код
push  tmp
push  tmp_2

in      tmp,  ACSR
bst    tmp,  ACO
in      tmp_2, PORTx
bld    tmp_2, нужный разряд
out    PORTx, tmp_2

pop   tmp_2
pop   tmp
reti



17 тактов + вход в прерывание, даже SREG сохранять не надо wink.gif


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 26 2009, 09:07
Сообщение #12


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
настраиваем прерывание от компаратора на режим Comparator Interrupt on Output Toggle.
в самом прерывании
...
17 тактов + вход в прерывание, даже SREG сохранять не надо


Ужос. Мало того, что в Вашем коде налицо принципиальные ошибки и дикий оверхед, так такой подход еще и принципиально приведет к дупе, если состояние компаратора (например, от помехи) будет меняться чаще, чем проц обработает прерывание wink.gif


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
dimka76
сообщение Aug 26 2009, 09:19
Сообщение #13


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(Rst7 @ Aug 26 2009, 13:07) *
Ужос. Мало того, что в Вашем коде налицо принципиальные ошибки и дикий оверхед, так такой подход еще и принципиально приведет к дупе, если состояние компаратора (например, от помехи) будет меняться чаще, чем проц обработает прерывание wink.gif



Бог с ними, с ошибками, железо бы выявило все ошибки, это эскиз.

Помеху бы и для программного UART надо было бы фильтровать. Поэтому из сранительного анализа можно это исключить.

А раз присутствует дикий оверхед, значит код может быть еще компактнее.

А какой размер получится у программного UART ? Уж не пять строчек это точно.

Исправил ошибку )))


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 26 2009, 09:29
Сообщение #14


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Помеху бы и для программного UART надо было бы фильтровать. Поэтому из сранительного анализа можно это исключить.


Неверно. Программный UART в простой реализации в независимости от сигнала на компараторе приведет к 1(от компаратора)+8(биты данных от таймера)+1(проверка стоп-бита от таймера) прерываний. А Ваш способ может привести к полной загрузке процессора.

Цитата
А какой размер получится у программного UART ? Уж не пять строчек это точно.


При правильном подходе - немного.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
dimka76
сообщение Aug 26 2009, 09:40
Сообщение #15


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(Rst7 @ Aug 26 2009, 13:29) *
Неверно. Программный UART в простой реализации в независимости от сигнала на компараторе приведет к 1(от компаратора)+8(биты данных от таймера)+1(проверка стоп-бита от таймера) прерываний. А Ваш способ может привести к полной загрузке процессора.


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

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


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 20:08
Рейтинг@Mail.ru


Страница сгенерированна за 0.01481 секунд с 7
ELECTRONIX ©2004-2016