roboforum.ru

Технический форум по робототехнике.

Задача по SPI интерфейсу

Резисторы, транзисторы, конденсаторы, микросборки, чип компоненты ...
Вопросы согласования управляющих модулей с периферией.

Задача по SPI интерфейсу

Сообщение galex1981 » 22 окт 2009, 14:35

Возникла некая задача, я пока думаю варианты как ее решить. Собственно сама задача: У МК на интерфейс SPI нужно подключить больше 100 устройств (Slave). В описании на стандарт - явного ограничения на число устройств нет, но есть ограничение на ножку МК что можно подключить не более 20-30 ИС. Как можно наиболее дешево реализовать подключение 100-125 устройств на эту шину?
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Задача по SPI интерфейсу

Сообщение executer » 22 окт 2009, 14:44

более мощная микруха-повторитель логическая тебе должна помочь. На МК ограничение по току на 10-20 подключаемых микрух. Там линии однонаправленные, так что проблем не должно быть

MOSI - Master Output Slave Input
MISO - Master Input Slave Output
Аватара пользователя
executer
 
Сообщения: 784
Зарегистрирован: 30 янв 2009, 01:24
Откуда: Запорожье
прог. языки: Си, AvrASM, STL, САС, учу Си++
ФИО: Павел

Re: Задача по SPI интерфейсу

Сообщение galex1981 » 22 окт 2009, 14:48

Что то раньше вроде бы видел, а сейчас когда надо - найти не могу. Какие например микрухи повторители? (Или может быть на мощных транзисторах повторители делать)
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Задача по SPI интерфейсу

Сообщение SERGEY_M » 22 окт 2009, 14:52

CD74HC241
Аватара пользователя
SERGEY_M
 
Сообщения: 682
Зарегистрирован: 20 мар 2009, 12:45
Откуда: Украина, Одесса
ФИО: Сергей

Re: Задача по SPI интерфейсу

Сообщение galex1981 » 22 окт 2009, 15:25

Даташит ее скачал, только так и не пойму сколько ИС на выход ее подключить можно?

Добавлено спустя 33 секунды:
Даташит
Вложения
74hc241.pdf
(38.71 КиБ) Скачиваний: 7
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Задача по SPI интерфейсу

Сообщение Duhas » 22 окт 2009, 15:57

ну дык на входы на все вместе подавай.. а на выходы группы устройсвт вешай...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Задача по SPI интерфейсу

Сообщение galex1981 » 22 окт 2009, 16:00

Я в принципе так и думаю, на выходах по 10 устройств и еще 1 буффер с аналогичным подключением.
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Задача по SPI интерфейсу

Сообщение Duhas » 22 окт 2009, 16:05

еще 1 зачем ? 1 хватит выше крыши...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Задача по SPI интерфейсу

Сообщение SERGEY_M » 22 окт 2009, 16:17

только так и не пойму сколько ИС на выход ее подключить можно?

74hc241.jpg

смотрим сколько потребляют по входам подкл. устройства и считаем возможное к-во (конечно даем запас)

еще в начале ДШ есть строки
Fanout (Over Temperature Range)
- Standard Outputs . . . . . . . . . . . . . . . 10 LSTTL Loads
- Bus Driver Outputs . . . . . . . . . . . . . 15 LSTTL Loads

это если TTL, но я думаю что на сегодняшний день практически все CMOS
а у них входные токи мизерные :)
Аватара пользователя
SERGEY_M
 
Сообщения: 682
Зарегистрирован: 20 мар 2009, 12:45
Откуда: Украина, Одесса
ФИО: Сергей

Re: Задача по SPI интерфейсу

Сообщение boez » 22 окт 2009, 16:26

А вот интересно - выходы MOSI у неактивных устройств создают дополнительную нагрузку? Ведь это все равно входы, их значение доступно в регистре PINx слейва. Сможет ли активный слейв их прокачать, или на каждый слейв тоже надо вешать такую штуку? Или на мастер ставить мультиплексор, управляемый теми же CS сигналами что и слейвы?

А вообще - нагрузку современные чипы созают емкостную, так что эти все цифры еще и от скорости зависят. В статике (на "очень малой скорости") один выход атмеги к примеру потянет минимум 10000 входов других атмег :) (это я беру цифру 1 мкА из даташита и 10 ма расчетной нагрузки на выход). А в динамике - смотрим емкость входа и считаем.
boez
 
Сообщения: 1981
Зарегистрирован: 27 авг 2008, 10:45
Откуда: Харьков
прог. языки: С/С++

Re: Задача по SPI интерфейсу

Сообщение Duhas » 22 окт 2009, 16:34

по мне так собрать на 2 полевиках повторитель и все тут ) мб проще будет?
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Задача по SPI интерфейсу

Сообщение galex1981 » 22 окт 2009, 16:39

Мне тогда 4+8 повторителей нужно будет - не дешевле ли 2 CD74HC241 юзать?
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Задача по SPI интерфейсу

Сообщение Duhas » 22 окт 2009, 16:48

зачем 4-8? когда повторителем мона по идее и ампер раскачать ...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Задача по SPI интерфейсу

Сообщение galex1981 » 22 окт 2009, 16:50

Нет просто у меня проводов 4 от SPI интерфейса и 8 CSNN - выборы кристаллов всего 12 линий, соответственно или 12 повторителей надо или 2 ИС
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4363
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Задача по SPI интерфейсу

Сообщение Duhas » 22 окт 2009, 16:53

нафик?? писалось выше - ток нужен только там, где идет высокая частота... на линии чипселекта хватить должно токоограничительного резистора..

повторитель нужен на MOSI и CLK
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

След.

Вернуться в Электроника, электротехника

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 33