2XSPI на Arduino

Efim
Offline
Зарегистрирован: 04.05.2018

Добрый вечер. Задача такая что данные от Master нужно перехватить и обработать в Arduino, после чего отправить их в Slave устройство. Желательно иметь возможность просматривать принимаемые данные по UART на компьютере и иметь возможность от туда же их отправить. Как это можно реализовать на Arduino?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

А что, по простому "в лоб" не заработало? Вроде, должно. В чём проблема-то? Показывайте, как делали.

Efim
Offline
Зарегистрирован: 04.05.2018

По простому это как? Нужно 2 SPI.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Зачем? 

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

Efim
Offline
Зарегистрирован: 04.05.2018

Вся проблема в том что на этой шине всего две линии (MOSI и SCK). То есть главный процессор (Master) передает данные только в одном направление (Slave). CS сигнал вообще отсутствует на физическом уровне в этих устройствах. А так как доступа к прошивке главного процессора (Master) у меня нету, а данные нужно подменить потому что Slave устройство заменено на другое и имеет отличия в управлении регистрами. В схеме я не просто так указал только две линии по SPI.

sadman41
Offline
Зарегистрирован: 19.10.2016

Вопрос в скорости. Если не космическая, то в одну сторону нацелить SoftSPI, в другую - хардварный.

Efim
Offline
Зарегистрирован: 04.05.2018

Скорости действительно не велики и передача происходит только при изменении звуковых параметров, таких как громкость. Это усилитель Yamaha с вживленной туда платой от старшей модели. Все уже срастил, вот осталось доделать управление селектором входов r2a15220fp.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Efim пишет:

CS сигнал вообще отсутствует на физическом уровне в этих устройствах.

Так где ж Вы раньше были? Почему сразу не сказали, что там не SPI ни хрена, а "нечто похожее, но без CS"? Вот нафига я терял время и писал Вам, если самое главное Вы решили в секрете подержать?

Efim пишет:

В схеме я не просто так указал только две линии по SPI.

Ни хрена Вы в схеме не указали. Там одна линия, иначе названия пинов бы отличались (типа 1 и 2).

Ну, а если,

Efim пишет:

Скорости действительно не велики и передача происходит только при изменении звуковых параметров

То, кто Вам мешает прицепить программный SPI?

DIVGENY
Offline
Зарегистрирован: 23.08.2016

что бы с чего-то начать, нужно хотя бы какие-нибудь исходные данные.

например : Master устройство передало 0xFF56, а Slave нужно передать 0x0156

Efim
Offline
Зарегистрирован: 04.05.2018

ЕвгенийП

1) С чего вы взяли что отсутствие сигнала CS делает эту шину подобием SPI. Я вам больше скажу, в программаторах SPI этот сигнал тоже не используется.

2) Про схему согласен, буду внимательней в следующи раз.

3) Мешает отсутствие знаний в arduino, поэтому пришел на форум. Может есть какие-то библиотеки или решения которые могут упростить мою задачу. Конечно я могу все написать сам с нуля как я это обычно делаю, тогда зачем мне эта ардуина вообще здалась? Я тогда проще на PIC контролере все сделаю. 

DIVGENY
Offline
Зарегистрирован: 23.08.2016

Efim пишет:

 тогда зачем мне эта ардуина вообще здалась? 

Мы все поняли. нам это тем более не зачем....

Efim
Offline
Зарегистрирован: 04.05.2018

DIVGENY

Для рордной микросхемы есть даташит по которому я буду арентироватся, для новой все в слепую путем научного перебора значений для микросхем из этой же серии. Собственно для этого мне и нужен UART (для отладки) чтоб в терминале посмотрел какие данные пришли, а затем отправил свои. Полсе отладки истейственно запишу все в код уже самой программы и уберу UART/

Efim
Offline
Зарегистрирован: 04.05.2018

DIVGENY пишет:

Мы все поняли. нам это тем более не зачем....

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

b707
Онлайн
Зарегистрирован: 26.05.2017

Efim пишет:

тогда зачем мне эта ардуина вообще здалась? Я тогда проще на PIC контролере все сделаю. 

Если знаете ПИК - на нем и пишите. Тогда я тоже не понимаю, "зачем эта ардуина вообще здалась?"

Хотя. если вы действительно имеете опыт программирования на любом другом МК - разобраться по примерам в работе с SPI на ардуино можно за пару дней. Форум вам тут вряд ли поможет, ибо писать код за вас никто не станет, разбираться все равно придется.

Alex_Ferrum
Offline
Зарегистрирован: 04.05.2015

Не вижу ни каких проблем, вижу 2 варианта решения задачи:
1. Реализовать spi master->arduino аппаратно, используя в качестве входа sck вход внешних прерываний INTx. Соответственно настраиваем прерывание по переднему или по заднему фронту и при возникновении прерывания читаем вход arduino, который выбран в качестве MOSI.

Efim
Offline
Зарегистрирован: 04.05.2018

b707

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

Alex_Ferrum
Offline
Зарегистрирован: 04.05.2015

Очепятка не аппаратно, а программно.

Efim
Offline
Зарегистрирован: 04.05.2018

Alex_Ferrum

То есть Mastera я слушаю программно через прерывание, а отправляю данные на Slave уже через аппаратный SPI?

Alex_Ferrum
Offline
Зарегистрирован: 04.05.2015

Efim пишет:

Alex_Ferrum

То есть Mastera я слушаю программно через прерывание, а отправляю данные на Slave уже через аппаратный SPI?


Совершенно верно или вариант номер 2:
2. Использовать в качестве интерфейса spi arduino->slave любой другой синхронный интерфейс, например, USART, где mosi=Tx, sck=xck или I2C, где mosi=sda, sck=scl. Или построить данный spi программно используя в качестве sck выход генерации сигнала OCxA/B, соответственно по одному из фронтов будете устанавливать значение на выходе mosi, в качестве которого используется любой незанятый вывод одного из портов ввода-вывода, а по другому фронту slave читает это значение.

Alex_Ferrum
Offline
Зарегистрирован: 04.05.2015

Соответственно тот фронт по которому будете устанавливать значение, также лучше связать с прерыванием, по совпадению или по переполнению таймера-счетчика смотрите сами. Произошло прерывание - установили значение на выходе mosi ардуинки.

Efim
Offline
Зарегистрирован: 04.05.2018

Alex_Ferrum

Ладно вообщем все спаяю, напишу код и если что-то не понятно то выложу сюда.

 

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Efim пишет:

1) С чего вы взяли что отсутствие сигнала CS делает эту шину подобием SPI.

Есть стандартный SPI, описаный везде (даже, прости Господи, вот здесь), он предполагает 4 провода. А есть различные усечённые реализации . Если испольуется нестандартная, то об этом надо говорить сразу, чтобы человек не терял времени, отвечая "не на тот вопрос".

Efim пишет:

Я вам больше скажу, в программаторах SPI этот сигнал тоже не используется.

Я Вам ещё больше скажу. Таких устройств до хрена. А есть даже такие, что MOSI и MISO в один провод объединяют - но это не делает их протокол стандартным SPI.

Efim пишет:

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

Конечно есть. Называется SPI.h - в ней есть механизм транзакций, чтобы отправка с получением не передрались. Очень удобно.

Efim пишет:
тогда зачем мне эта ардуина вообще здалась?

Да, кто ж Вас знает? Вы сами выбирали контроллер.

Efim пишет:

Я тогда проще на PIC контролере все сделаю. 

Проще на PIC, так и делайте. Я не знаю для чего Вы выбрали именно ардуину.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Alex_Ferrum,

я бы делал наоборот. Читал бы аппаратно, а отправлял бы программно.

Аргумент: мы не знаем с какой там скорость передают, потому лучше читать "как можно быстрее", а передавать можно как можем - примут, никуда не денутся.

Efim
Offline
Зарегистрирован: 04.05.2018

ЕвгенийП

1) Если бы вы сами внимательно прочитали материал по ссылки то поняли бы что для данной задачи эти сигналы не требуются ибо данные передаются в одном направлении и на одно устройство. Но тем не менее стандарт передачи остается тот же. Хотя может в вашем понимании стандарт это что то другое, хотелось бы знать что вы под этим понимаете. Извините за ваше драгоценное время. Я лично на прошлый проэкт потратил месяц своего личного времени чтоб такие же люди как вы могли скачать готовую сборку и не замарачиватся, хотя заинтересованость была общая и было куча програмистов но ни один из них не дал дельного совета, а как оказалась нужно было всего лишь исправить пару строчек. Были перелопачены просто тонны матерьяла по JAVA которые еще нужно было перевести и осмыслить. Вообщем еще раз простите за ваше драгоценное время но вынужден признать вы потратили его в пустую.

2) Культура общения хромает. И как вы пишете что MOSI и MISO обьеденяют? Это нарушит стандарт одновременной передачи данных в двух направлениях.

3) SPI.h работает только как мастер на сколько я знаю.

4) Да выбрал т.к. не нужно травить плату и все спаивать, тут все готовое.

5) Смотри пункт 4.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Efim пишет:
Я лично на прошлый проэкт потратил месяц своего личного времени чтоб такие же люди как вы могли скачать готовую сборку и не замарачиватся

Такие как я? Вы меня с кем-то перепутали. Такие как я не "скачивают готовые сборки не заморачиваясь".

Efim пишет:

3) SPI.h работает только как мастер на сколько я знаю.

Интересные люди, то жалуются на

Efim пишет:
отсутствие знаний в arduino

а то вдруг "насколько я знаю".

Так знаете или нет?

Библиотеки SPI бывают разных версий и модификаций. Есть и такие, что понимают и режим master, и режим slave. При этом, называются зачастую одинаково.

Вы сами задали вопрос про библиотеки, получили ответ прямой, конкретный и по делу. Даже если Вы ответу не поверили, можно же уточняющий вопрос задать или самому погуглить - но Вы вместо всего этого предпочли поучить меня манерам общения. Продолжайте. Начинаю понимать, почему те программисты из Вашего проекта Вам не рвались помогать.

 

b707
Онлайн
Зарегистрирован: 26.05.2017

Efim, если вы ардуину не знаете, то вам должно быть все равно, какую из них выбрать. Среди подобных плат есть STM32duino - плата на МК STM32F103C8T6 .

Плата дешевая (дешевле Ардуино Уно-Нано), программируется в среде Ардуино - и что для вас важно - имеет два аппаратных SPI на борту.

Ворота
Ворота аватар
Offline
Зарегистрирован: 10.01.2016

b707 пишет:

STM32duino .... два аппаратных SPI на борту.

Дык ТС же ш написал, що немає библиотеки для слейва, "на сколько" он знает. Так что, хоть там три SPI будь.

b707
Онлайн
Зарегистрирован: 26.05.2017

Efim пишет:

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

Почему-то мнение, что "форумы для того и существуют, чтобы писать код и выкладывать" - наиболее популярно среди тех, у кого "опыт в програмирование есть но не большой".

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

Efim
Offline
Зарегистрирован: 04.05.2018

b707

Рro mini просто уже есть в наличии.

 По поводу выкладывать готовые устройства, ну давайте я посмотрю как вы сделаете готовую устройства с нуля например тот же RLC измеритель допустим без тех же форумов где можно обмениватся опытом и писать код совместно когда каждый принимает участие в разработке. Насчет потребностей скачивать чужие сборки вы тоже ошибаетесь, у вас просто физически не хватит времени все это делать самому. Да и в чем собственно вопрос, если не хотите не помогайте, я же не заставляю. Думаю найдутся люди кто поможет. Свои дальнейшие действия я уже написал, так что давайте не будем разводить флуд.

ЕвгенийП

По поводу програмистов которые не рвались мне помогать)) Они ни мне не помогали и проект не мой, а сами себе не могли помочь, я лишь довел до ума что другие не смогли сделать за год. Кому интересно есть тема на 4PDA). Можете даже не пытатся меня задеть этим. Еще раз если у вас нет времени прошу не флудить в теме о том какие типы интерфейсов бывают и давать ссылки на протокол SPI, это я и без вас могу. Вопрост был поставлен тоже конкретно "Как это можно реализовать на Arduino?". И уровень ваших знаним мне тоже ясен, так что обьеденяйте дальше MOSI и MISO в протоколе SPI.

Ворота

Вы тоже хороши, если нечем помочь то не флудите.

sadman41
Offline
Зарегистрирован: 19.10.2016

Да ладно кипятиться. Совет с подвешиванием на прерывание, imho, неплох. Тем более, что там цифры раз в условные полгода проскакивают, как я понял. Читанули с помощью ISR, в хардварный SPI кинули. Или просто ногамии так же помахали.

Efim
Offline
Зарегистрирован: 04.05.2018

sadman41

Вот и я так считаю! Реалезую данный совет и отпишусь о результатах.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Понятно. Т.е. благодарности за прямой ответ на прямой вопрос о библиотеке (за название, ссылку и обсуждение транзакций) не будет? Будет только хамство. Окей, вопросов больше не имею. Продолжайте доводить до ума то, что другие за год не могут сделать.

Ворота
Ворота аватар
Offline
Зарегистрирован: 10.01.2016

Efim пишет:

Ворота

Вы тоже хороши, если нечем помочь то не флудите.

Мужик, тебе столько реальных, нормальных советов накидали

  1. Программный SPI (#7)
  2. Писать на том, на чём знаешь (#13)
  3. Реализация на прерываниях (#14)
  4. На прерываниях, но наоборот (с пояснением почему) (#22)
  5. Конкретная библиотека для слейва (#24)
  6. STM32duino с двумя SPI (#25)

При этом поиск по странице по слову "спасибо" не выдаёт ни хрена! Нету тут таких слов. Зато всё забито нравоучениями как общаться, как жить, что писать, а что не писать. Так кто из нас флудит?

Ты не охренел ли, часом?

b707
Онлайн
Зарегистрирован: 26.05.2017

Efim пишет:

 Да и в чем собственно вопрос, если не хотите не помогайте, я же не заставляю. Думаю найдутся люди кто поможет.

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

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

Что касается " огромного проекта на 4ПДА", который вы якобы "подарили народу" - по вашим же собственным словам, вы там поправили "буквально 2 строчки".  Когда вы доведете свой проект до такой же стадии - приходите, две последние строчки вам тут поравят с огромным удовольствием :)

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

b707 пишет:

две последние строчки вам тут поравят с огромным удовольствием :)

"Ох, не надо бы вслух, ох, не надо бы!" (А. Галич)

Он же придёт и скажет: "Обещал, правь!"

b707
Онлайн
Зарегистрирован: 26.05.2017

ЕвгенийП пишет:

Он же придёт и скажет: "Обещал, правь!"

И, что - поправим! Результат-то правки не оговаривался :)

Efim
Offline
Зарегистрирован: 04.05.2018

Ворота

Извините конечно но совета как реализовать на других устройствахя я не спрашивал. Прочитайте внимательно первый пост. Там вопрос как это сделать на ардуино. Конкретная библиотека не добавляет второго SPI.  Писать хочу на ардуино, уже обьяснял почему. Остальные советы принял во внимание. Я уже понял что нужных библиотек не существует и конкретную задачу из текущих участников никто не выполнял. А за флуд нужно горчичник выписывать на день другой.

b707

Все я вас услышал, я наглый халявщик)). Когда сможете хотябы это сделать, тогда и поговорим. Досвидание!

ЕвгенийП

Вы можете просто не писать тут! Зачем весь этот флуд? С ваших постов толку все равно нет.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Efim пишет:

Вы можете просто не писать тут! 

Конечно, могу. А могу и писать, правда? И Вы можете не писать здесь. А можете и писать.Мы ведь свободные люди.

 

Ворота
Ворота аватар
Offline
Зарегистрирован: 10.01.2016

Понятно. Люди писали, объясняли почему так, а не иначе. В благодарсность ты им на головы насрал и остался весь в белом.

Вот тебе полное объяснение как и что тебе надо делать. Изучай.

Efim
Offline
Зарегистрирован: 04.05.2018

Ворота это еще раз потверждает что вы хамло)) Удачи!

А по поводу нужно ли писать код за меня? Конечно нет, я этого и не прошу. Просто я хотел услышать ответ на подобие типа: "Есть некая библиотека Bridge.h в которой ты можешь настроить под себя на какие пины ты будешь принимать информацию, с кахих отправлять. Там уже реализовано то что ты ищешь, так что почитай про нее.", или как ответил Alex_Ferrum по делу. Но я никак не расчитывал услышать  что я якобы написал какуюто хрень, что то что я описываю это не SPI и вообще что я отнял у человека время. Пониматете разницу? А тут еще некий Ворота меня Н-А*Х/У+Й посылает, да за такое банить нужно. Есть тут админы? Обратите внимание на этого товарища.

ЕвгенийП

Ну хотябы по делу пишите. Зачем вы начали про эти 4 провода, я же вам объяснил что к чему.

wdrakula
wdrakula аватар
Онлайн
Зарегистрирован: 15.03.2016

Родное сердце! Ты сильно похож на бомжа, просящего денег в переходе. Который, если ему кинули рубль, материт в ответ и кидается грязью... типа ему "не так помогают". ;) ;);).

Ты - попрошайничаешь на форуме, будь благодарен, если тебя просто заметили, ОК?

Форум НЕ ДЛЯ ОБМЕНА фигней. Форум - для общения по интересам. Как ты думаешь, интересно нам по 100500 раз обсасывать с очередным новичком одно и тоже? И да, будь так добр, не размещай тут свой код, если вдруг напишешь, ОК?

Вопрос не стоил выеденного яйца изначально. СофтСПИ на передачу и хардСПИ (с поддрержкой слейва) на прием. Соотв. библиотеки, чтобы уж совсем в "натуральное хозяйство" не уходить, гуглятся с первого раза, я проверил. Задача совсем не интересна.

Если хочешь опускать форум до уровня 4пда, то не нужно, там 99% участников не могут драйвера под флеш тулс поставить. Тут мы не хотим даже на порог пускать новичков такого уровня и будем глумиться над ними, пока те не научатся пользоваться гуглом.

И да, я готов потратить 15 минут на эту болтовню, вместо конкретного ответа, чтобы отвадить двух-трех ленивых кретинов.

Я просто никогда не стану давать конкретный ответ на вопрос, если этот ответ можно получить в гугле за 5 мин. В воспитательных целях не стану, мне 49 лет, я уже дедушка и имею право на педагогические экзерсисы.

Efim
Offline
Зарегистрирован: 04.05.2018

wdrakula

Согласен с вами! Вот и обьясните это тем новичкам что не разбираясь в вопросе дают советы. И спрашивать я вас не собираюсь что и где размещать. ок!? По поводу гугла вы правы но там ответа тоже нету(. Я думаю вы будете очень рады когда доктор будет вас лечить по гуглу. Удачи профессор гугл!

b707
Онлайн
Зарегистрирован: 26.05.2017

Efim пишет:

А по поводу нужно ли писать код за меня? Конечно нет, я этого и не прошу. Просто я хотел услышать ответ на подобие типа: "Есть некая библиотека Bridge.h в которой ты можешь настроить под себя на какие пины ты будешь принимать информацию, с кахих отправлять. Там уже реализовано то что ты ищешь, так что почитай про нее."

я ж говорил - халявщик.

Что мешало открыть Гугль и набрать там что-то типа "arduino SPI bridge" - и в течении нескольких минут получить ответ, делал ли кто-то что-либо подобное или нет? Причем ответ сразу по десяткам форумов и блогов по всему миру, а не на одном отдельном форуме.

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

Делаю вывод, что все рассказы о твоей общественной деятельности - вранье. Ты относишься к тем, кто сам учится не умеет, пока тебе не разжуют вопрос в обущающем видео на Ютубе.

Интересно, сколько постов нужно написать, чтобы ты понял, что пришел не по адресу? Умение или хотя бы желание решать проблемы самостоятельно, самому найти нужную информацию по 2-3м ссылкам - как вступительный экзамен для приема на форум. Ты его провалил.

b707
Онлайн
Зарегистрирован: 26.05.2017

Efim пишет:

По поводу гугла вы правы но там ответа тоже нету(.

это просто ЛОЛ...

Даже зонд к Плутону уже запустили, а SPI-бридж никто в целом мире не делал... Беда!

Вот сделаешь и выложишь свой гениальный код - небось нобелевку дадут сразу. "За новизну подхода"

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

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

wdrakula
wdrakula аватар
Онлайн
Зарегистрирован: 15.03.2016

Efim пишет:
Я думаю вы будете очень рады когда доктор будет вас лечить по гуглу.

Твой психиатр, похоже, пользует тебя исключительно по советам на форуме. Я бы не назвал его практику успешной, но тебе виднее...;)

Efim
Offline
Зарегистрирован: 04.05.2018

Я не пойму что за народ, вместо нужной информации сидят и флудят не по делу. Как вы еще своей желчью не захлебнулись. Он лучше потратит время и напишет длинный пост не по делу чем разжует и принесет пользу. Зато принципиальный человек) 49 лет, а ума нет! Раз такие умные что реально ссылку то не скинете? Это же якобы за секунду гуглица! Скорее всего большенство флудящик кроме как записать информацию в регистры ввода вывода больше ничего не могут "аля помаргай светодиодиком)" еще и умудряются советы раздавать. Пока я тут вижу только трех адекватных человек, остальные пришли поглумится)

b707
Онлайн
Зарегистрирован: 26.05.2017

У нас тут есть раздел "Ищу исполнителя".  Все, кому лень разбираться самому - тихо, без флейма идут туда и платят деньги.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Efim пишет:

Ну хотябы по делу пишите.

Я писал абсолютно по делу.

Вот, знаете, даже не знаю почему, но мне почему-то хочется, чтобы Вы наконец поняли, что Вам объясняют, потому я попобую ещё раз объяснить (хотя, по идее и не должен бы). Если Вам захочется ответить хамством в Вашей обычной манере, даже не трудитесь - сразу идите туда, куда Вас Ворота послал.

Итак,

в SPI скорость чтения более критична, чем скорость записи, потому, что тот кто нам передаёт, не знает успели мы прочитать или нет - он передаст, а если мы не успели прочитать - наша проблема. А вот то, кому мы передаём, будет ждать и кушать нашу скорость передачи как миленький. (если не понимаете почему - см. протокол SPI). Об этом я уже писал Вам выше. Поэтому - читаем аппаратно, а пишем программно. Для аппаратного чтения Вам нужна библиотека, ссылку на которую я давал, и по поводу которой Вы уже успели мне нахамить. Она умеет аппаратно быть слейвом и читать. Ставьте её, смотрите примеры слейва  и читайте.

Пишем же программным SPI через функцию shiftOut (примеров тоже полно).

Вот и ВСЯ Ваша задача. Больше Вам ничего не нужно. У Вас есть библиотека, есть примеры и Вы знаете, что делать. Всё это я говорил Вам раньше. Чего я Вам не сказал по решению Вашей задачи? И что Вам дало право утверждать, что я отвечаю не по делу?

Всего хорошего.

Ворота
Ворота аватар
Offline
Зарегистрирован: 10.01.2016

Efim пишет:

Я не пойму что за народ, вместо нужной информации сидят и флудят не по делу.

А чего тут не понимать? Народ приходит на форум общаться и получать уовольствие. Давать тебе нужную информацию никто не обязан (или ты и впрямь думаешь, что тебе все должны???). Доставит удоволсьтвие дать кому-то информацию - дам, а если доставит тебя послать, так пошлю. Кто вообще дал тебе право указывать людям, что им говорить, а что - нет? Ты кто? Если ты считаешь, что тебе все должны - ты ошибся.

wdrakula
wdrakula аватар
Онлайн
Зарегистрирован: 15.03.2016

Дебилушка! Тебе уже несколько раз сказали: гугль "arduino spi slave library",  вот первая ссылка в моей выдаче.

Вот ссылка по "arduino soft spi". Или, как сказал Евгений, shiftOut()  использовать.

Почему каждому новичку нужно жопу подтирать? Заипали, сил нет. "Мама! Я покакал!" - тупое поколение ленивых ушлепков.

Если ты на таком уровне не имеешь понимания, то зачем лезешь в тему програмирования? Клоуном побыть захотелось? У тебя вышло.