Перейти к содержанию
    

Подскажите доступный расширитель ввода-вывода с SPI-интерфейсом

Сам пользуюсь расширителями на МК - периферийными контроллерами. Обновление прошивки нужно, но с каких пор это проблема?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 часов назад, adnega сказал:

Сам пользуюсь расширителями на МК - периферийными контроллерами.

Именно. Делаю в них простейший функционал, за 5 лет ни разу не надо было обновлять, хотя интерфейс там посложнее spi будет)))

В 29.11.2023 в 14:15, Arlleex сказал:

Их исторически клепали с I2C. Зачем именно SPI?

Может просто не хотят гемороится с i2c, ибо довольно геморный интерфейс, конечно 1wire ему фору даст, но все-таки)) ИМХО.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 29.11.2023 в 12:44, Alex Kuritsyn сказал:

Активно применял MCP23S17, это 16-бит расширитель ввода-вывода с SPI-интерфейсом. в котором индивидуально настраивается направление каждого выхода. Сейчас он труднодоступен либо конская цена.

Да не так уж и дорого по нашим временам - 76 руб + 158 руб доставка.

https://aliexpress.ru/item/1005006181526011.html

Это у нашей почты нынче доставка стала дорогой. Но все равно дешевле, чем делать самим, программируя для этой цели микроконтроллер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

(Вспомнив MCP2200). Как бы "под капотом" там не оказался какой-то PIC с однократной прошивкой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо откликнувшимся, поясню проблему. У меня система, в которой есть материнская плата, шина с SPI и чипселектами, но без I2C. Под эту материнку есть множество периферийных плат, а в них используются эти вот MCP23S17. Там где это возможно, с удовольствием применяю расширители с I2C. Да, можно на сдвиговых регистрах слепить, но не хочется, ищу решение элегантнее. Решение на микроконтроллере тоже мне недоступно по организационно-бюрократическим причинам. В моей конторе, если в плате есть МК, то в стоимость устройства сразу закладываются немаленькие расходы на софт, даже если он тривиальный. Кроме того есть предубеждение вышестоящего руководства о недопустимости использовать МК, если нет возможности удаленно поменять прошивку. Повлиять на эти моменты я не могу.

Спасибо за вариант с CP2120. Только он в непролетарском QFN-20 с термопадом, стараюсь избегать, да и "недружественный" :)

В 30.11.2023 в 22:29, Xenia сказал:

Да не так уж и дорого по нашим временам - 76 руб + 158 руб доставка.

Пока что это лучший вариант, которым и пользуемся:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, Alex Kuritsyn сказал:

Кроме того есть предубеждение вышестоящего руководства о недопустимости использовать МК, если нет возможности удаленно поменять прошивку. Повлиять на эти моменты я не могу.

Это не "предубеждение", а "опыт". Коего у вас, очевидно, ещё нет. Но у вас ещё всё спереди - жизнь она научит.  :punish:

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

 

PS: И байки про "настолько тривиальное ПО, что не может содержать ошибки" - слышали много раз.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 01.12.2023 в 15:46, jcxz сказал:

Но у вас ещё всё спереди

Спасибо за такой оптимизм, было бы неплохо (хотя я уже в профессии 20+ лет:)

Я пожалуй соглашусь с вами процентов так на 90, пусть будет не "предубеждение", а "правило".

Изменено пользователем Alex Kuritsyn

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 01.12.2023 в 15:46, jcxz сказал:

когда наступите на грабли в прошивке, а обновить удалённо возможности не будет.

+1 Я везде закладываю возможность обновления прошивки. И после этого позволяю себе не боятся граблей в прошивке)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите расширитель ВВ с эмуляцией цикла параллельной шины без дрыгоножества. Типа загрузили адрес и данные по SPI или I2C, расширитель сам отработал цикл записи или чтения на шине типа 8080 или моторолы ( по выбору) и дернул внешнее прерывание, после которого можно делать прочитать данные и делать следующий цикл.

Можно в виде VHDL-Verilog проекта, но тогда на старые CPLD совместимые с 5 В шиной

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, khach said:

Подскажите расширитель ВВ с эмуляцией цикла параллельной шины без дрыгоножества.

Немного оффтоп, простите.

Подобное было на платах контроллеров от Fastwell. Там стояла ПЛИС, в которую программно можно было загрузить прошивки для разных чипов, например, 8255 или 8251. Помню, грузил в такую ПЛИС то ли 2, то ли 3 "чипа" 8255, после чего обращался к ним через IN-OUT. Удобно и очень быстро. Так и просится подобное, но через SPI.

Недавно трассировал плату, которая была узкая и длинная. Еле-еле развёл на ней 16DI по этой причине. Будь там чё-нить а-ля MCP23S017 было бы намного проще разводить, хоть 64DI развелось на раз-два. Поэтому поддержу вопрошающего:

2 hours ago, khach said:

Подскажите расширитель ВВ с эмуляцией цикла параллельной шины без дрыгоножества. Типа загрузили адрес и данные по SPI

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вопрос чисто в DI, то чем 74hc165 не угодили? можно и 64 набрать 🙂

У автора было желание каждый бит настравивать на вход или выход.

Мне кстати дюже нравятся MC33972 использую в проектах - очень удобные.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

30 minutes ago, mitya1698 said:

Если вопрос чисто в DI, то чем 74hc165 не угодили? можно и 64 набрать 🙂

У автора было желание каждый бит настравивать на вход или выход.

Мне кстати дюже нравятся MC33972 использую в проектах - очень удобные.

595 и 165 можно вместе в одну цепочку друг за дружкой поставить и будет IO в обе стороны,

делал так преобразователь SPI -> 24 x I2C

только направление будет задаваться группами по 8 ног, путем отключения выхода всего 595, а не на отдельные ноги как у готовых расширителей. но можно в эту же цепочку ещё и дополнительно 595 добавить и для индивидуального управления 125 буферами на каждую ногу. гулять так гулять, правда получившийся ужОс проще будет всё-таки готовым расширителем заменить пусть даже и подорожавшим.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 hours ago, _pv said:

получившийся ужОс проще будет всё-таки готовым расширителем заменить пусть даже и подорожавшим

Почему ужас? SPI для всего этого нужен будет один, переплата в виде одного-двух сигналов для защелкивания данных в/из буферные регистры практически мизерна. Уже при 16DI+16DO такое решение выглядит вполне симпатичным, особенно с учётом цены и доступности 165 и 595.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, tonyk_av said:

Почему ужас?

для 16 двунаправленных IO с индивидуальным контролем направления это будет 10 корпусов вместо одного, да доступнее, возможно даже чуть-чуть дешевле, но выглядит всё-таки довольно страшненько.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...