У меня есть несколько вопросов, связанных с регистрами SPIxCON SPI. Я использую PIC18F26K83.
1) Существует регистр SPIxTCNTH: SPI TRANSFER COUNTER MSB. И я могу установить первые 3 бита, которые подсчитывают передаваемые биты. И в соответствии с таблицей это доступно для записи. В соответствии с таблицей данных он считает биты, которые будут переданы, тогда почему он доступен для записи? Нужно ли мне писать в соответствии с битами, которые я отправлю? Или это для информирования пользователя.
2) Существует SPIxTWIDTH: SPI TRANSFER WIDTH REGISTER. В случае BMODE = 1 это
Размер (в битах) каждой передачи, подсчитываемой счетчиком передачи
Я буду отправлять значения, такие как 1.1 или 2.3, в ЦАП. В этом случае, что я должен установить это? Есть ли стандартное значение для этого регистра?
3) Я не смог понять, для чего нужны регистры FIFO, согласно данным, которые мы не можем контролировать с помощью программного обеспечения. Разве это не буфер? Поэтому, если я пишу, чтобы регистр передачи был быстрее скорости передачи, передаваемые данные будут помещены в FIFO. И один за другим они будут переданы. Я прав? Мне ничего не нужно, кроме записи в буфер передачи.
4) Я прочитал, но не смог понять биты полярности в SPIxCON1. Это нормально, если я не коснусь этих битов в регистре управления? Я не хочу портить.
5) Как выбрать рабов? В регистре SPIxCON2 есть SSET (бит включения выбора ведомого). Я могу сделать это 1, но тогда как я могу выбрать раба?
Спасибо за ваши ответы. Я новичок. Извините за простые и, возможно, бессмысленные вопросы. Или я могу просто показать свой конфигурационный код, но я считаю, что его будет сложнее проанализировать.