Size: a a a

2020 June 01

KW

Konstantin Wilhelm in ru_ASUTP
Для чтения и записи используется один и тот же регистр?
источник

ИЗ

Инженер Заводобыдлов... in ru_ASUTP
2 2
какая машина и модель ЭБУ?
Ваз 2171, эбу bosch M7.9.7
источник

ИЗ

Инженер Заводобыдлов... in ru_ASUTP
Заводскую противоугонную стстему отключал
источник

22

2 2 in ru_ASUTP
))
источник

JB

Jury Belorusov in ru_ASUTP
Konstantin Wilhelm
Ну вот такой вопрос какова глубина сдвигового регистра на SPI?
Я конечно SPI последний раз несколько лет назад тыкал, но регистр как бы везде 1 байт
источник

KW

Konstantin Wilhelm in ru_ASUTP
Инженер Заводобыдлов
Заводскую противоугонную стстему отключал
Поверим, что на собственной машине
источник

ИЗ

Инженер Заводобыдлов... in ru_ASUTP
Konstantin Wilhelm
Поверим, что на собственной машине
На ней самой, транспондер в ключе сломался, пришлось выкручиваться
источник

KW

Konstantin Wilhelm in ru_ASUTP
Jury Belorusov
Я конечно SPI последний раз несколько лет назад тыкал, но регистр как бы везде 1 байт
Ок. И что там генерируются прерывания? Откуда мне узнать что пришла новая команда, если я слейв?
источник

JB

Jury Belorusov in ru_ASUTP
по тактовому сигналу принимаете 8 бит.
источник

JB

Jury Belorusov in ru_ASUTP
есть такт - есть бит
источник

JB

Jury Belorusov in ru_ASUTP
натикало 8 раз приехал байт
источник

KW

Konstantin Wilhelm in ru_ASUTP
Но откуда пользовательская программа об этом узнает? Флаг выставляется или что?
источник

DD

Davydov Denis in ru_ASUTP
Konstantin Wilhelm
Ок. И что там генерируются прерывания? Откуда мне узнать что пришла новая команда, если я слейв?
по чип селекту, обычно
источник

DD

Davydov Denis in ru_ASUTP
обычно каждая транзакция обрамляется фронтами чипселекта
источник

JB

Jury Belorusov in ru_ASUTP
Konstantin Wilhelm
Но откуда пользовательская программа об этом узнает? Флаг выставляется или что?
для AVR флаг SPIF
источник

JB

Jury Belorusov in ru_ASUTP
сам регистр там SPDR
источник

JB

Jury Belorusov in ru_ASUTP
на меге 16, вроде еще и отдельное прерывание было по окончанию передачи
источник

KW

Konstantin Wilhelm in ru_ASUTP
Ок, уже яснее. Но чипселект опускается в лоу на все время общения мастера со слейвом и на запись и на чтение. Ибо при его спаде вся машинерия SPI обнуляется
источник

DD

Davydov Denis in ru_ASUTP
еще фишка, которую я почему-то не сразу догнал - данные на чтение и запись идут одновременно, при этом обычно нужно сперва записать что-то, а потом прочитать что-то... поэтому при записи на мастере мы читаем мусор или нули от слейва (тк данные в любом случае идут какие-то), а при чтении мастер должен что-то писать в интерфейс, соотвественно тоже обычно нули засылаются... тоесть по каждому сигналу синхронизации по одному биту уходит и на запись и на чтение полюбому, а тактирует линию всегда мастер... почему-то такую элементарную вещь я сразу донать не мог
источник

KW

Konstantin Wilhelm in ru_ASUTP
Davydov Denis
еще фишка, которую я почему-то не сразу догнал - данные на чтение и запись идут одновременно, при этом обычно нужно сперва записать что-то, а потом прочитать что-то... поэтому при записи на мастере мы читаем мусор или нули от слейва (тк данные в любом случае идут какие-то), а при чтении мастер должен что-то писать в интерфейс, соотвественно тоже обычно нули засылаются... тоесть по каждому сигналу синхронизации по одному биту уходит и на запись и на чтение полюбому, а тактирует линию всегда мастер... почему-то такую элементарную вещь я сразу донать не мог
Ну просто это сдвиговый регистр разделенный на 2 части. Половина в мастере, половина в слейве. Поэтому любая запись сопровождается чтением и наоборот. Просто половину времени он мусор пишет/читает
источник