ВУЗ:
Составители:
72
Окончание табл. 1.22
Биты Имя Описание
1 SPR1 Биты выбора скорости передачи данных SPI.
Эти биты устанавливают скорость передачи в режиме «ведущий»
следующим образом:
0 SPR0
SPR1
0
0
1
1
SPR0
0
1
0
1
Выбранная скорость передачи
f
CORE
/2
f
CORE
/4
f
CORE
/8
f
CORE
/16
В режиме «ведомый» SPI (SPIM=
«0») логический уровень на внеш-
нем выводе SS/ (ножка 13) можно
прочитать путем чтения бита SPR0.
( f
CORE –
частота ядра)
SPIDAT (регистр данных SPI)
Адрес F7h, значение после сброса 00h, битовая адресация отсутствует.
В специальный регистр SPIDAT записывается байт, предназначенный для
передачи по SPI, из него также читается байт, принятый по SPI.
В зависимости от состояния битов специального регистра SPICON ин-
терфейс SPI МК в режиме «ведущий» будет осуществлять обмен данными в не-
скольких возможных режимах синхронизации. На рис. 1.22. приведены вре-
менные диаграммы сигналов на линиях интерфейса, иллюстрирующие его ра-
боту при различных значениях управляющих битов. Как можно видеть из ри-
сунка, в момент окончания передачи каждого байта происходит установка фла-
га прерывания от модуля SPI – ISPI в специальном регистре SPICON.
В режиме «ведущий» обмен данными через SPI производится следующим
образом. Инициатором обмена всегда является «ведущий». Для осуществления
обмена линия SCLOCK, которая является выходом, начинает генерацию после-
довательности из восьми синхроимпульсов, тактируя таким образом передачу и
прием. Начало генерации инициируется программной инструкцией записи под-
лежащего передаче байта в специальный регистр SPIDAT. Частота импульсов
на выходе SCLOCK определяется состоянием битов SPR0 и SPR1 в специаль-
ном регистре SPICON. Линия SS/ МК в режиме «ведущий» в обмене не участ-
вует. В том случае, если необходимо, чтобы МК произвел выбор внешнего «ве-
домого» устройства, подав активный уровень на его вход SS/, для этой цели
следует использовать линию ввода-вывода общего назначения в каком-нибудь
порту МК. Одновременно с передачей байта по линии MOSI из «ведущего» в
«ведомое» устройство по перепадам сигнала SCLOCK производится прием
байта «ведущим» из «ведомого» по линии MISO. После генерации восьми син-
хроимпульсов передача байта из SPIDAT будет завершена, а принятый байт
окажется во входном сдвиговом регистре. Сразу после этого в регистре SPICON
аппаратно установится флаг ISPI и будет сгенерировано прерывание по завер-
шению приема-передачи через SPI. Данные из сдвигового регистра перепишутся в
регистр SPIDAT. Обработка прерывания будет производиться, если оно разрешено.
Страницы
- « первая
- ‹ предыдущая
- …
- 70
- 71
- 72
- 73
- 74
- …
- следующая ›
- последняя »