Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: обмен через SPI между MEGA16 и ADS1218
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
fizik4
собираюсь сделать устройство на основе ATmega16 и ads1218(ацп от TI). общаться они будут по интерфейсу spi. не могу понять одну вещь. контроллер,как ведущий, инициализирует обмен - передает в ацп команду RDATA (read data). через некоторое время ацп передает обратно 3 байта данных.но ведь тактовым сигналом управляет МК....если я читаю регистр SPDR (SPI data register) - это означает,что модуль SPI сначала сдвигает во входной регистр данные с линии MISO, или просто выдает то,что там уже было???? в какой момент данные попадают во входной регистр?Нажмите для просмотра прикрепленного файла
GetSmart
1. Сбрасываете в 0 сигнал CS ADS1218.
2. Посылаете через SPI 1 байт - команду RDATA, прочитанный в конце байт из SPDR не анализируете.
3. Ждёте 50 или более (хоть 1000) тактов генератора ADS1218.
4. Посылаете через SPI нуль (или вообще любой байт). Принятый в конце передачи байт из SPDR - старший из 24 бит (может быть со знаком).
5. Посылаете через SPI нуль (или вообще любой байт). Принятый в конце передачи байт из SPDR - средний из 24 бит.
6. Посылаете через SPI нуль (или вообще любой байт). Принятый в конце передачи байт из SPDR - младший из 24 бит.
7. Выставляете в 1 сигнал CS ADS1218
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.