當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Processing SPI.transfer()用法及代碼示例


Processing, 類SPI中的transfer()用法介紹。

用法

  • .transfer(out)

參數

  • out (byte[], String, int, byte) 要發送的字節
  • out (String, byte, int) 要發送的字符串
  • out (int, byte) 要發送的單個字節,例如數字文字(0 到 255,或 -128 到 127)
  • out (byte, int) 單字節發送

返回

  • byte[]

說明

通過 SPI 總線傳輸數據



使用 SPI,主設備和從設備之間同時交換數據。對於每一個發送的字節,也有一個字節被讀入。

例子

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() {
  // read in values over SPI from an analog-to-digital
  // converter
  // dummy write, actual values don't matter
  byte[] out = { 0, 0 };
  byte[] in = adc.transfer(out);
  // some input bit shifting according to the datasheet
  int val = ((in[0] & 0x1f) << 5) | ((in[1] & 0xf8) >> 3);
  // val is between 0 and 1023
  println(val);
}

相關用法


注:本文由純淨天空篩選整理自processing.org大神的英文原創作品 SPI.transfer()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。