Processing:Библиотеки/Hardware I/O/Класс SPI/settings()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску


Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.



settings()[1]

Класс

SPI

Обозначение

settings()

Описание

Задает настройки интерфейса SPI.

Настройки по умолчанию – 500000, SPI.MSBFIRST, SPI.MODE0.

Синтаксис

.settings(maxSpeed, dataOrder, mode)

Параметры

maxSpeed  максимальная скорость передачи данных (в Гц). По умолчанию стоит «500000» (500 кГц). Тип данных  int
dataOrder  порядок отправки данных, т.е. с какого бита будут отправляться данные  с самого младшего или самого старшего. Более распространен второй вариант. Возможные значения: SPI.MSBFIRST и SPI.LSBFIRST. Тип данных  int
mode  режим работы интерфейса SPI (более подробно о режимах SPI читайте [https://ru.wikipedia.org/wiki/Serial_Peripheral_Interface#Режимы_работы_интерфейса_SPI тут]). Возможные значения: SPI.MODE0, SPI.MODE1, SPI.MODE2 и SPI.MODE3. Тип данных – int

Возвращаемое значение

void

Пример

import processing.io.*;
SPI adc;

void setup() {
  //printArray(SPI.list());
  adc = new SPI(SPI.list()[0]);
  adc.settings(500000, SPI.MSBFIRST, SPI.MODE0);
}

void draw() {
  // считываем значения через интерфейс SPI,
  // присланные от цифроаналогового преобразователя;
  // отправляемые данные являются просто нулями – 
  // то, что отправляется, не обязательно должно что-то значить:
  byte[] out = { 0, 0 };
  byte[] in = adc.transfer(out);
  // согласно «даташиту», выполняем сдвиг входящих битов:
  int val = ((in[0] & 0x1f) << 5) | ((in[1] & 0xf8) >> 3);
  // значение в диапазоне между «0» и «1023»:
  println(val);
}

См.также

Внешние ссылки