Пример кода для считывания данных с датчика температуры LM35:
```cpp
int tempPin = A0;
void setup() {
Serial.begin(9600);
}
void loop() {
int tempReading = analogRead(tempPin);
float voltage = tempReading * (5.0 / 1023.0);
float temperatureC = voltage * 100.0;
Serial.print("Temperature: ");
Serial.print(temperatureC);
Serial.println(" C");
delay(1000);
}
```
Датчики освещенности
Фоторезисторы и другие датчики освещенности позволяют измерять уровень освещенности. Эти данные могут использоваться для управления освещением или создания светочувствительных проектов.
Пример кода для считывания данных с фоторезистора:
```cpp
int lightPin = A0;
void setup() {
Serial.begin(9600);
}
void loop() {
int lightReading = analogRead(lightPin);
Serial.print("Light level: ");
Serial.println(lightReading);
delay(1000);
}
```
Arduino поддерживает несколько протоколов связи, что позволяет ему взаимодействовать с другими устройствами и микроконтроллерами, расширяя возможности проектов.
I2C (Inter-Integrated Circuit)
I2C – это двухпроводный протокол связи, используемый для подключения различных периферийных устройств, таких как датчики, дисплеи и EEPROM. Arduino может работать как мастер или ведомый в I2C-сети.
Пример подключения и считывания данных с датчика температуры и влажности на базе I2C:
```cpp
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
Adafruit_BME280 bme;
void setup() {
Serial.begin(9600);
Wire.begin();
if (!bme.begin(0x76)) {
Serial.println("Could not find a valid BME280 sensor, check wiring!");
while (1);
}
}
void loop() {
Serial.print("Temperature = ");
Serial.print(bme.readTemperature());
Serial.println(" *C");
Serial.print("Humidity = ");
Serial.print(bme.readHumidity());
Serial.println(" %");
delay(2000);
}
```
SPI (Serial Peripheral Interface)
SPI – это высокоскоростной протокол связи, используемый для подключения устройств, таких как SD-карты, дисплеи и беспроводные модули. SPI обеспечивает быструю передачу данных и подходит для приложений, требующих высокой скорости обмена.
Пример использования SPI для подключения SD-карты:
```cpp
#include <SPI.h>
#include <SD.h>
File myFile;
void setup() {
Serial.begin(9600);
if (!SD.begin(4)) {
Serial.println("Initialization failed!");
return;
}
myFile = SD.open("test.txt", FILE_WRITE);
if (myFile) {
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.