2016-11-17 5 views
-2

Я использую плату 7200 от Embedded Arm. На плате размещается ядро ​​Linux 2.6 и монтируется EP9302 arm9. Нам нужно использовать интерфейс SPI для связи с акселерометром (LIS3DSH) и некоторыми PT100 (MAX31865).SPI EP93xx (плата TS7200 с Linux)

Наш подход к проблеме буквально основан на битрейте регистров EP9302, как в этом примере, предоставленном встроенным оружием (файл tempSensor.C по адресу ftp://ftp.embeddedarm.com/ts-arm-sbc/ts-7200-linux/samples/). Обратите внимание, что датчик в этом случае «встроен» в плату. Наконец, мы программируем на C.

К сожалению, все наши попытки потерпели неудачу. Итак, вопрос: знаете ли вы, как использовать SPI на EP93xx? Любой код или пример?

+0

Если я правильно помню, акселерометры LIS не очень хорошо соответствуют стандарту SPI де-факто, но имеют различные неясные временные спецификации. Поэтому, если у вас есть стандартный драйвер SPI, он, вероятно, не сработает. – Lundin

+0

Прежде всего спасибо за ответ. Я не использую драйвер SPI, я пишу непосредственно в регистры микроконтроллера. – Andak

+1

. Что вы имеете в виду с попытками _our, не удалось. Вы тестируете выход spi? данные отправляются правильно, но нет подчиненного устройства формы ответа? Нет данных? Вы также должны опубликовать свои усилия. Поиск полного решения OT на SO. – LPs

ответ

0

Хорошо, ребята Спасибо всем за предложения и советы. Я решил свою проблему. Из-за того, что я не использовал драйверы, но я бил биты непосредственно в микрорегионе, у меня был побочный эффект: - каждый раз, когда я пишу что-то в регистре записи SPI, данные записываются в MOSI, а данные на MISO передаются в буфере FIFO. Не имеет значения, ответит ли подчиненное устройство или нет! В этом была проблема

Решение: каждый раз, когда вы пишете что-то в регистре SPI «output». Всегда читайте регистр входа «FIFO». Всегда!

Для установки, когда я настраивал ведомые регистры, я не читал входной FIFO (устройства не ответили, но вы всегда будете читать (чистить) FIFO!).

Я заметил проблему с помощью осциллографа. Спасибо за помощь. Пример, который я задал в вопросе, работает, потому что всегда существует «чтение» после «записи»!

Смежные вопросы