Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AT91SAM7S64 и софтовый SPI
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
gte
Планировал состыковать QF4A512 (4 канала АЦП с цифровой фильтрацией) с ARM. Обнаружилось, что QF4 имеет 24 битный формат передачи по SPI, а ARM максимум 16. Выход может быть в софтовом SPI для QF4. Может кто делал софтовый SPI для ARM, каких скоростей обмена можно ожидать? ARM раньше не использовал.
QF4 выбран из-за наличия на борту цифровой фильтрации получаемых данных.
ARM выбран, так как производительности AVR (с ними работал), скорее всего, не хватит.
sergik_vrn
Цитата(gte @ Dec 17 2007, 12:09) *
Планировал состыковать QF4A512 (4 канала АЦП с цифровой фильтрацией) с ARM. Обнаружилось, что QF4 имеет 24 битный формат передачи по SPI, а ARM максимум 16. Выход может быть в софтовом SPI для QF4. Может кто делал софтовый SPI для ARM, каких скоростей обмена можно ожидать? ARM раньше не использовал.
QF4 выбран из-за наличия на борту цифровой фильтрации получаемых данных.
ARM выбран, так как производительности AVR (с ними работал), скорее всего, не хватит.

я делал, правда не для ARM, скорости примерно на порядок медленнее, чем в аппаратном. а если не секрет, чем 24-битный формат отличается от 3х8 бит?
Шурила
во всех аппаратных SPI есть настройка " не поднимать CS после передачи".
таким образом можно организовать передачу слова любой длины.
gte
Цитата(sergik_vrn @ Dec 17 2007, 12:36) *
я делал, правда не для ARM, скорости примерно на порядок медленнее, чем в аппаратном. а если не секрет, чем 24-битный формат отличается от 3х8 бит?

Я как раз с этим разбираюсь. Насколько я понял, если буферные регистры записывать и очищать непрерывно то NPCS все равно будет прыгать. Или я не прав?
Правда, я обнаружил, что установкой CSAAT=1 можно заставить NPCS держать активный уровень после завершения передачи.



Цитата(Шурила @ Dec 17 2007, 13:28) *
во всех аппаратных SPI есть настройка " не поднимать CS после передачи".
таким образом можно организовать передачу слова любой длины.

Спасибо, обнаружил.
condor
Цитата(gte @ Dec 17 2007, 11:09) *
Планировал состыковать QF4A512 (4 канала АЦП с цифровой фильтрацией) с ARM. Обнаружилось, что QF4 имеет 24 битный формат передачи по SPI, а ARM максимум 16. Выход может быть в софтовом SPI для QF4. Может кто делал софтовый SPI для ARM, каких скоростей обмена можно ожидать? ARM раньше не использовал.
QF4 выбран из-за наличия на борту цифровой фильтрации получаемых данных.
ARM выбран, так как производительности AVR (с ними работал), скорее всего, не хватит.

У SAM7S64 есть SSC модуль. Я бы на вашем месте использовал его вместо SPI.
Его можно настроить как SPI на 24 бита.
Ruslan_Shaida
Цитата
во всех аппаратных SPI есть настройка " не поднимать CS после передачи".
таким образом можно организовать передачу слова любой длины.

Полностью согласен!
В спецификацию SPI изначально заложена возможность формирования многобайтного обмена.
Используйте трехбайтовый аппаратный обмен.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.