Привет.
Не доводилось пока испытывать проблем с этой шинкой, т.к. использовал стандартные решения. Сейчас есть потребность пообщаться по ней с AK4118, которая даже не упоминает SPI в мануале, довольствуясь абстрактной "4 wire interface".
Софтина чужая, голова - arduino nano, на первый пуск всё работало. Потом - внезапу перестало. Грешить можно на АКашку, на ардуину, на провода. Последние прозвонил, но могут быть паразитические емкости, препятствующие общению.
Ардуина жива хотя бы в смысле общения с дисплеем и кнопками и независания проги.
Чип ресивера жив хотя бы нормальными режимами по постоянке и состояниями выходов by default, но окончательно я не уверен. До первого (успешного!) запуска я успел ей влупить 8В питания вместо пяти по дурацкой ошибке. Но пахала же!
Вкратце. MOSI, CCLK и CS исправно прыгают по осциллу вверх-вниз, a MISO вяло дергается у нуля, если шину не поддернуть к +5, и мертво стоит у +5, если поддернуть через 10к. Выход прерывания с ресивера молчит как рыба об забор, хотя должен реагировать. Получается, что прописать регистры в ресивер тоже не выходит, иначе б он отозвался хотя бы прерыванием.
Где может скрываться брутальный косяк? Есть подозрение, что прога не особо выдерживает нужные тайминги, но - работала же!