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

 
 
> Spartan II : Pullup - фантом
kaktus
сообщение Nov 20 2006, 12:36
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 52
Регистрация: 5-05-05
Из: Санкт-Петербург
Пользователь №: 4 756



Исходная схема до безобразия проста: кнопка при нажатии замыкает входную цепь Спартана, на землю. В Спартане стоит внутренняя подтяжка на питание. При нажатии кнопки (в частности) меняет окраску двуцветный светодиод, прицепленный к другим пинам Спартана.
Ситуация следующая: приносят мне 2 платы после испытаний на тепло и холод(всего параллельно в одной печке грелось и мерзло 6) : светодиоды в состоянии, как будто кнопки на них запали в нажатом состоянии. Проверяю кнопки - они в порядке - разомыкают и замыкают как надо. При поданном питании на входной цепи вольтметр (класс точности: китайский показометр) выдает 0.02В (т.е. подтяжки нет), при нажатой кнопке честные 0.00В. Естественно имеем эффект "запавшей" кнопки. Чтобы проверить работает ли вообще вход Спартана тыкаюсь проводочком (беру +3.3В с разъема JTAG) во входную цепь - светодиод меняет цвет - значит вход живой. НО после этого оживает и внутренний pullup! Нажатие кнопки теперь адекватно меняет цвет диода, причем положительный эффект сохраняется после выключения/включения питания, на входной цепи прибор показвывает +3.3В при отпущенной кнопке.
Платы были отправлены обратно в печку на продолжение пыток. Сегодня на одной из тех 2-х опять "запала" кнопка.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sazh
сообщение Nov 20 2006, 17:18
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804



В Спартанах слабые pull-up'ы.////////////////////
А где они сильные. Обычно это 50 кОм. Зачем омы, если надо вход подтянуть. Да и если их не использовать, зачем тогда они присутствуют. А если их море надо.
Надо дальше эксперименты продолжать. Может имеет смысл через триггер это пропустить.
Как то не хорошо напрямую. Да и дребезг у кнопки обычно снимают.
Пример у Титца и Шенка на страниые 359.
Только вот кнопка должна быть трехпозиционная (замыкает или слева контакт или справа)

module drebezg
(
input r_n, //Weak Pull-Up Resistor == on
input s_n, //Weak Pull-Up Resistor == on
output reg out
);

wire clk;
wire input_d;

assign clk = 1'b1;
assign input_d = 1'b1;

always@ (posedge clk or negedge r_n or negedge s_n)
begin
if (r_n == 1'b0) out <= 1'b0;
else if (s_n == 1'b0) out <= 1'b1;
else out <= input_d;
end

endmodule
Go to the top of the page
 
+Quote Post
makc
сообщение Nov 20 2006, 20:38
Сообщение #3


Гуру
******

Группа: Админы
Сообщений: 3 621
Регистрация: 18-10-04
Из: Москва
Пользователь №: 904



Цитата(sazh @ Nov 20 2006, 17:18) *
В Спартанах слабые pull-up'ы.////////////////////
А где они сильные. Обычно это 50 кОм. Зачем омы, если надо вход подтянуть. Да и если их не использовать, зачем тогда они присутствуют. А если их море надо.


Я их использую для шин адреса/данных, но никак не для управляющих сигналов. Их задача прекратить возможный дребезг по входу, который может привести к резкому росту потребляемой мощности в цепях ввода/вывода.

PS: Есть еще один элемент, созвучный PullUp'ам - Weak Keeper. smile.gif


--------------------
BR, Makc
В недуге рождены, вскормлены тленом, подлежим распаду. (с) У.Фолкнер.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 22:47
Рейтинг@Mail.ru


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