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

 
 
 
Reply to this topicStart new topic
> Согласование уровней сигнала SPI, Не знаю как правильно согласовать уровни сигнала
peroid
сообщение Sep 17 2015, 18:30
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 6-05-15
Пользователь №: 86 555



Доброго всем времени суток.
Проблема следующего характера:
Пытаюсь вкрячить джойстик от PS2 dualshock в связку с stm32f4discovery.
В инете нарыл информацию, что уровень логической единицы у SPI джойстика = 3.3 Вольт, а у SPI stm32f4 уровень единицы = 3.0 вольт.
Там же нашел девайс для согласования уровней - CMOS HEX buffer (CD4050B).
Правильно ли я понимаю, что это некий неинвертирующий логический элемент с возможностью усиления уровня напряжения?
Просто никак не могу подобрать аналог, чтобы точно быть уверенным что это он. Уже подумал присобачить какой нибудь транзистор для развязки, но микруха вроде как-то кошернее.
Go to the top of the page
 
+Quote Post
smalcom
сообщение Sep 17 2015, 20:15
Сообщение #2


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

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



Цитата
а у SPI stm32f4 уровень единицы = 3.0 вольт

это где такое написано?

пардон за
bb-offtopic.gif
но мне надо найти выход из состояния когнитивного диссонанса: как можно писать программу для stm32f4, и программу не простую, а для устройства ввода с обратной связью и при этом спрашивать про применение простейшего буфера?
Go to the top of the page
 
+Quote Post
peroid
сообщение Sep 17 2015, 20:53
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 6-05-15
Пользователь №: 86 555



Цитата(smalcom @ Sep 17 2015, 21:15) *
это где такое написано?

пардон за
bb-offtopic.gif
но мне надо найти выход из состояния когнитивного диссонанса: как можно писать программу для stm32f4, и программу не простую, а для устройства ввода с обратной связью и при этом спрашивать про применение простейшего буфера?

А в чем собственно проблема? Ну вот не знаю я как это организовать физически, через этот самый буфер. Точнее как его подобрать, чтобы не облажаться.
Прочитал про уровни вот тут: http://virtual-shed.blogspot.ru/2013/03/pl...erface.html?m=1
И еще, я слышал где-то, что эта ветка для новичков или что-то типа этого.
Моей фантазии пока хватило на оптопару, вместо буфера sm.gif
Go to the top of the page
 
+Quote Post
Plain
сообщение Sep 17 2015, 21:08
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



Резисторов 100 Ом, последовательно со всеми, кроме общего провода, линиями, вполне достаточно для такого согласования.
Go to the top of the page
 
+Quote Post
peroid
сообщение Sep 17 2015, 21:20
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 6-05-15
Пользователь №: 86 555



Цитата(Plain @ Sep 17 2015, 22:08) *
Резисторов 100 Ом, последовательно со всеми, кроме общего провода, линиями, вполне достаточно для такого согласования.

У мастера на борту 3 В максимум, а у слейва минимум 3.3 В для восприятия единицы.
Бытует мнение, что данное соединение должно просто ограничить ток, но никак не поможет мне в согласовании разного напряжения.

Нашел txb0104. Думаю, что это оно.

Спасибо за помощь.

Сообщение отредактировал peroid - Sep 17 2015, 21:49
Go to the top of the page
 
+Quote Post
HardEgor
сообщение Sep 17 2015, 22:12
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925



Цитата(peroid @ Sep 18 2015, 00:30) *
В инете нарыл информацию, что уровень логической единицы у SPI джойстика = 3.3 Вольт, а у SPI stm32f4 уровень единицы = 3.0 вольт.

У SPI stm32f4 уровень логической единицы от 2В до напряжения питания, преобразователь уровней не нужен.
По-простому, обычно, если напряжение питания устройств одинаковое, то логические уровни совпадают.
Go to the top of the page
 
+Quote Post
peroid
сообщение Sep 17 2015, 22:21
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 6-05-15
Пользователь №: 86 555



Цитата(HardEgor @ Sep 17 2015, 23:12) *
У SPI stm32f4 уровень логической единицы от 2В до напряжения питания, преобразователь уровней не нужен.
По-простому, обычно, если напряжение питания устройств одинаковое, то логические уровни совпадают.

Спасибо.
Вот только не понятно. Я питаюсь от usb, цепляю осциллограф к ножками SPI1 и наблюдаю 2.997 Вольт.
Попробую завтра запитать его через пин 5В.
Go to the top of the page
 
+Quote Post
peroid
сообщение Sep 18 2015, 08:07
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 6-05-15
Пользователь №: 86 555



Цитата(HardEgor @ Sep 17 2015, 22:12) *
У SPI stm32f4 уровень логической единицы от 2В до напряжения питания


Добрался я до платки, вот выкладываю то, что получилось:

На плату поступает питание 5 Вольт от источника питания
[attachment=95419:IMAG0106.jpg]



Вот что имеем на выходе ноги PA5 (SPI1_SCK)
[attachment=95421:IMAG0105.jpg]

Не выходит каменный цветок.

Сообщение отредактировал peroid - Sep 18 2015, 08:09
Go to the top of the page
 
+Quote Post
Plain
сообщение Sep 18 2015, 10:38
Сообщение #9


Гуру
******

Группа: Участник
Сообщений: 6 776
Регистрация: 5-03-09
Из: Москва
Пользователь №: 45 710



Да, мы что-то видим. Загрузили на форум 2,5 МБайта мусора.
Go to the top of the page
 
+Quote Post
peroid
сообщение Sep 19 2015, 11:34
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 6-05-15
Пользователь №: 86 555



Цитата(HardEgor @ Sep 17 2015, 22:12) *
если напряжение питания устройств одинаковое, то логические уровни совпадают.

У джойстика минимум 3.3 Вольта на питание.
Go to the top of the page
 
+Quote Post
agregat
сообщение Sep 19 2015, 12:21
Сообщение #11


Знающий
****

Группа: Свой
Сообщений: 790
Регистрация: 6-02-14
Из: Омск
Пользователь №: 80 379



Вы зря беспокоитесь. По уровням разницы нет что 3.0V что 3.3V у Вас все будет работать без проблем.
Ставите резисторы 100 ом на каждую цепь между мастером и джойстиком.

PS: На совершенно идиотский вопрос "а как же с логикой 3.3V если там 3.0V есть простой ответ "согласно правилам цифровой логики если на входе уровень больше 2.0V это логическая единица и уже неважно 3.0 V или 3.3V".
Go to the top of the page
 
+Quote Post
peroid
сообщение Sep 19 2015, 13:22
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 6-05-15
Пользователь №: 86 555



Цитата(agregat @ Sep 19 2015, 12:21) *
Вы зря беспокоитесь. По уровням разницы нет что 3.0V что 3.3V
PS: На совершенно идиотский вопрос "а как же с логикой 3.3V если там 3.0V есть простой ответ "согласно правилам цифровой логики если на входе уровень больше 2.0V это логическая единица и уже неважно 3.0 V или 3.3V".


Спасибо большое за разъяснения! Собственно именно идиотский вопрос и не давал мне покоя.
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Sep 20 2015, 20:27
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(agregat @ Sep 19 2015, 15:21) *
PS: На совершенно идиотский вопрос "а как же с логикой 3.3V если там 3.0V есть простой ответ "согласно правилам цифровой логики если на входе уровень больше 2.0V это логическая единица и уже неважно 3.0 V или 3.3V".

Что это за "правила цифровой логики" такие? Где Вы такое взяли? Первый попавшийся пример- обычная 74HC серия уже нарушает эти Ваши "правила".

А правила (в смысле, уровни переключения и максимально допустимые величины)- они в конкретной документации описаны, на конкретную микросхему и конкретный вход, так как никаких общих правил не существует в природе, и даже в рамках одной микросхему видов входов может быть много разных.
Go to the top of the page
 
+Quote Post

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

 


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


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