Привет, я пытался писать на LPS331AP с SPI, но не могу. Хотя я хорошо читаю. И с помощью логического анализатора я вижу, что отправляю то, что, как мне кажется, отправляю, поэтому я думаю, что неправильно понимаю, какие биты отправлять на датчик давления для записи в него.
Вот мой код:
#include <SPI.h>
byte WHO_AM_I = 0B00001111;
byte READCTRL_REG1 = 0B10100000;
byte CTRL_REG1 = 0B00100000;
const int CS = 10;
//SPI.h sets these for us
/*
const int SDI = 11;
const int SDO = 12;
const int SCL = 13;
*/
void setup() {
Serial.begin(9600);
// start the SPI library;
SPI.begin();
// initalize the chip select pin;
pinMode(CS, OUTPUT);
byte Write = CTRL_REG1;
byte Value = 0B11100000;
digitalWrite(CS, LOW);
SPI.transfer(Write);
SPI.transfer(Value);
digitalWrite(CS, HIGH);
delay(1000);
}
void loop() {
byte result = 0;
byte Read = READCTRL_REG1;
digitalWrite(CS, LOW);
Serial.println(Read, BIN);
SPI.transfer(Read);
result = SPI.transfer(0x00);
Serial.println(result, BIN);
digitalWrite(CS, HIGH);
delay(1000);
}