NCW2K69
Ср. 27 июля 2016 г. 8:56 вечера
Всем привет,
Мне нужна помощь!
По протоколу SPI в режиме рабов, через некоторое время (5-10 минут) байт, который я получил от Master, поврежден, данные о логическом анализаторе показывают правильно.
После того, как я попытаюсь отправить байт на магистр, интерфейс SPI становится без реагирования, но остальная часть кода работает.
Я протестировал с 2 кленовыми мини -платами, одну в главном режиме, а другой в рабе, они, кажется, работают нормально, но не работает с другим процессором, который я описал.
Я пытаюсь разделить процессор по панцире с дисплея с клавиатурами. После использования логического анализатора I предположил, что протокол общения составляет SPI, у меня есть одна линия данных (приема трансмитения), часовая линия, выбор чипа и строка запроса клавиши, которая подходит высоко при нажатии клавиши. Размер упаковки - один байт (8 бит), а режим/фаза SPI - 1,1 SOR SPI_MODE_3
Для кода я использую Leaflab IDE, зеленый...
На arduino uno программа работает правильно
Мне нужна помощь!
По протоколу SPI в режиме рабов, через некоторое время (5-10 минут) байт, который я получил от Master, поврежден, данные о логическом анализаторе показывают правильно.
После того, как я попытаюсь отправить байт на магистр, интерфейс SPI становится без реагирования, но остальная часть кода работает.
Я протестировал с 2 кленовыми мини -платами, одну в главном режиме, а другой в рабе, они, кажется, работают нормально, но не работает с другим процессором, который я описал.
Я пытаюсь разделить процессор по панцире с дисплея с клавиатурами. После использования логического анализатора I предположил, что протокол общения составляет SPI, у меня есть одна линия данных (приема трансмитения), часовая линия, выбор чипа и строка запроса клавиши, которая подходит высоко при нажатии клавиши. Размер упаковки - один байт (8 бит), а режим/фаза SPI - 1,1 SOR SPI_MODE_3
Для кода я использую Leaflab IDE, зеленый...
На arduino uno программа работает правильно
Пито
Ср. 27 июля 2016 г. 8:59 вечера
Имейте в виду, что скорость тактовой скорости SPI раб обычно ограничена. Так что дважды проверьте скоростные скорости SPI.
NCW2K69
Ср. 27 июля 2016 г., 21:02
ЦП, который я пытаюсь обвязать, составляет около 175 кГц... или что -то в этом роде очень старое.
В моем случае мастер SPI (ЦП) отправляет часы, а не раб
... или я делаю что -то не так
В моем случае мастер SPI (ЦП) отправляет часы, а не раб
... или я делаю что -то не так
Пито
Ср. 27 июля 2016 г., 21:11
Твой
ММ - раб
Old_cpu - мастер? Это Old_cpu 3.3V -сигнализация SPI?
ММ - раб
Old_cpu - мастер? Это Old_cpu 3.3V -сигнализация SPI?
NCW2K69
Ср. 27 июля 2016 г. 9:15 вечера
ЦП ГП (мастер) - Maple Mini (Slave) на SPI 2 - Когда я делаю SPI.Передача я получаю поврежденную байт
Maple Mini (Master) - дисплей с клавиатурой (Slave) SPI 1 - этот работает отлично
Старый ЦП - 5 В, и я использую логический конвертор от 5 В до 3.3В
Я пытаюсь разместить Maple Mini между процессором и дисплеем
Maple Mini (Master) - дисплей с клавиатурой (Slave) SPI 1 - этот работает отлично
Старый ЦП - 5 В, и я использую логический конвертор от 5 В до 3.3В
Я пытаюсь разместить Maple Mini между процессором и дисплеем
Пито
Ср. 27 июля 2016 г., 21:19
Логический конвертор = проблемы
Что ты используешь?
Что ты используешь?
NCW2K69
Ср. 27 июля 2016 г., 21:20
В моем районе я использую этот https: // www.Робофун.RO/Logic-уровни-Conv ... 0convertor
Я думаю, что клон Sparkfun или что -то...
Я думаю, что клон Sparkfun или что -то...
Пито
Ср. 27 июля 2016 г., 21:32
Когда старая_кпу является мастером, как вы прочитаете регистр SPI в SPI? Не уверен, что Maplemini получил режим рабов, реализованный через SPI.передача..
http: // www.STM32duino.com/viewtopic.PHP ... = 10#p13036
http: // www.STM32duino.com/viewtopic.PHP ... = 10#p13036
NCW2K69
Ср. 27 июля 2016 г., 21:37
SPI.начинается, а затем создал новый метод, который проверяет, есть ли у меня данные в буфере, если это правда, я делаю SPI.Читать или SPI.передача
Я опубликую код, который использую после того, как вернусь с работы
Я опубликую код, который использую после того, как вернусь с работы
Стивестронг
Чт 28 июля 2016 г. 8:28 утра
Прием буфера переполнен? (но только через некоторое время? хм)
Как вы различаете SPI.Читать и SPI.передача?
На самом деле, при получении данных SPI, некоторые данные в любом случае будут зачитаны из Мастера, и если вы не установите, случайные данные могут нарушить ваш мастер SPI.
Как вы различаете SPI.Читать и SPI.передача?
На самом деле, при получении данных SPI, некоторые данные в любом случае будут зачитаны из Мастера, и если вы не установите, случайные данные могут нарушить ваш мастер SPI.
NCW2K69
Пт 29 июля 2016 г. 8:09
Благодаря Pito, удастся заставить его работать, я поменял позицию резисторов с Master - Res - Conv - Mini to Master - Conv - Res - Mini, и теперь у меня есть сильный выход сигнала данных от Master
Martinayotte
Пт 29 июля 2016 г., 13:36
Вы имеете в виду, что вы поместили подтягивание на неправильную сторону конвертера ?
Здесь мы видим подтягивания с обеих сторон, но это потому, что это двунаправленный уровень уровня, такой как i2c.
При использовании в качестве управляющего Uni-направляющего, только сторона приемника требует подтягивания.
Здесь мы видим подтягивания с обеих сторон, но это потому, что это двунаправленный уровень уровня, такой как i2c.
При использовании в качестве управляющего Uni-направляющего, только сторона приемника требует подтягивания.
NCW2K69
Пт 29 июля 2016 г., 17:55
В оригинальной схеме для процессоров, на проводах коммутации представлены резисторы последовательно, см. Прикрепленное изображение
Martinayotte
Пт 29 июля 2016 г. 18:31
Зачем вам эти резисторы последовательно ?
Плата, которую вы используете.
Плата, которую вы используете.
NCW2K69
Пт 29 июля 2016 г. 18:47
Я думаю, что они были помещены туда, чтобы ограничить ток, когда дисплей входит/выходит
NCW2K69
Пт 29 июля 2016 г., 19:15
это способ сбросить из кода на Maple Mini?
Martinayotte
Пт 29 июля 2016 г., 8:51 вечера
Вы можете перейти к вектору сброса, но он не будет таким же, как выполнение внешнего сброса, особенно линия сброса также используется для сброса внешнего периферийного устройства.
Но вы также можете использовать GPIO, прикрепленный к RES и запустить его из программного обеспечения.
Но вы также можете использовать GPIO, прикрепленный к RES и запустить его из программного обеспечения.
NCW2K69
Пт 29 июля 2016 г., 21:11
удалось выполнить функцию сброса, он работает
//hardware\leaflabs\cores\maple\nvic.h
void nvic_sys_reset();