может именно там этого бита вообще нет, у меня такая ерунда была когда SPI режим несовпадал (полярность клока к примеру), в большенстве случаев из-за затяжки фронтов работало нормально но иногда появлялись ошибки. Твой мост неиспользовал, он как определяет что режим 3? если авто определение то оно при опускании чипселекта срабатывает смотри сингналы.
Мост режим никак не определяет. Даташит на него тупо глаголит: "SPI Mode 3". И всё. Ну ещё временная диаграмма SPI, по которой можно понять разве что CPOL=1. Про другие режимы я тоже подумал, с другими он просто никак не работает.
А сейчас писать через него я могу без проблем. Но вот при чтении из буфера последний бит херится.
рекоммендую поймать конкретно посылку в которой возникла ошибка - может быть там фронтф пляшут или еще чего случается хз, может ошибка в I2C и этого бита там действительно нет :)
рекоммендую поймать конкретно посылку в которой возникла ошибка - может быть там фронтф пляшут или еще чего случается хз, может ошибка в I2C и этого бита там действительно нет :)
И ещё раз, эта та самая конкретная посылка. На 500 kHz последний бит херится всегда. Блин, самое интересное то я и забыл рассказать... Бит начинает иногда вычитываться правильно при _увеличении_ частоты. Но тогда мост начинает "тупить" и через него уже даже писать получается не всегда.
что еще раз подтверждает версию с фронтами а сам мост до 1.2 мегабита работает такчто запаса по скорости у него дофига и глючить недолжен
Up to 1.2 Mbit/s (SC18IS600)
Эххх, осциллограммы я привёл. Ну вот что на них не так с фронтами? Причём этот up to 1.2 Mbit/sec на самом деле выливается в то, что он работает на 1.1 Мбит, а на 1.2 уже глючит. Ради интереса подключал обычный сдвиговый регистр со светодиодами, работает без потерь на длиннющем шлейфе на 15 Мбитах. Вот там фронты уже были "не очень". А здесь можно считать их чуть ле не идеальными.