Мазмуну:

Arduino Nano - TSL45315 Ambient Light Sensor үйрөткүчү: 4 кадам
Arduino Nano - TSL45315 Ambient Light Sensor үйрөткүчү: 4 кадам

Video: Arduino Nano - TSL45315 Ambient Light Sensor үйрөткүчү: 4 кадам

Video: Arduino Nano - TSL45315 Ambient Light Sensor үйрөткүчү: 4 кадам
Video: Arduino Nano - TSL45315 Ambient Light Sensor Tutorial 2024, Июнь
Anonim
Image
Image

TSL45315 - бул санариптик жарык сенсору. Бул жарыктын ар кандай шарттарында адамдын көзүнүн реакциясын болжолдойт. Түзмөктөрдүн үч тандалма интеграция убактысы бар жана I2C автобус интерфейси аркылуу 16-бит люкс түз чыгууну камсыз кылат. Түзмөктө фотодиод массиви, аналогдук-санариптик конвертер (ADC), сигналдарды иштетүү схемасы, люкс эсептөө логикасы жана люкс маалыматын берүү үчүн бир CMOS интегралдык схемасында I2C сериялык интерфейси бар. Мына, анын демонстрациясы arduino nano менен.

1 -кадам: Сизге эмне керек..

Сизге эмне керек.. !!
Сизге эмне керек.. !!

1. Ардуино Нано

2. TSL45315

3. I²C кабели

4. Arduino Nano үчүн I²C Shield

2 -кадам: Байланыш:

Туташуу
Туташуу
Туташуу
Туташуу
Туташуу
Туташуу
Туташуу
Туташуу

Arduino Nano үчүн I2C калканчын алыңыз жана аны акырындык менен Нанонун казыктарына түртүңүз.

Андан кийин I2C кабелинин бир учун TSL45315 сенсоруна, экинчи учун I2C калканчына туташтырыңыз.

Байланыштар жогорудагы сүрөттө көрсөтүлгөн.

3 -кадам: Код:

Код
Код

TSL45315 үчүн Arduino кодун биздин GitHub репозиторийи-Dcube дүкөнүнөн көчүрүп алса болот.

Мына ушуга шилтеме:

github.com/DcubeTechVentures/TSL45315…

Биз сенсордун Arduino тактасы менен I2c байланышын жеңилдетүү үчүн Wire.h китепканасын камтыйбыз.

Сиз бул жерден кодду көчүрүп алсаңыз болот, ал төмөнкүчө берилген:

// Эркин лицензия менен таратылган.

// Аны каалагандай колдон, пайда же бекер, эгер ал ага байланыштуу чыгармаларынын лицензиясына туура келсе.

// TSL45315

// Бул код Dcube Storeдо жеткиликтүү TSl45315_I2CS I2C Mini Module менен иштөө үчүн иштелип чыккан.

#кошуу

// TSL45315 I2C дареги 0x29 (41)

#define Addr 0x29

жараксыз орнотуу ()

{

// I2C байланышын MASTER катары баштаңыз

Wire.begin ();

// Сериялык байланышты баштоо, байдын ылдамдыгын = 9600

Serial.begin (9600);

// I2C берүүнү баштоо

Wire.beginTransmission (Addr);

// Башкаруу реестрин тандоо

Wire.write (0x80);

// Нормалдуу иштөө

Wire.write (0x03);

// I2C берүүнү токтотуу

Wire.endTransmission ();

// I2C берүүнү баштоо

Wire.beginTransmission (Addr);

// Конфигурация реестрин тандоо

Wire.write (0x81);

// 1x көбөйткүч, Түсү: 400 мс

Wire.write (0x00);

// I2C өткөрүүнү токтотуу

Wire.endTransmission ();

кечигүү (300);

}

боштук цикл ()

{

кол коюлбаган int маалыматтары [2];

// I2C берүүнү баштоо

Wire.beginTransmission (Addr);

// Маалымат реестрин тандоо

Wire.write (0x84);

// I2C өткөрүүнү токтотуу

Wire.endTransmission ();

// 2 байт маалымат сураңыз

Wire.requestFrom (Addr, 2);

// 2 байт маалыматтарды окуңуз

// жаркыроо lsb, жаркыроо msb

эгер (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// Маалыматты конвертациялоо

float luminance = маалымат [1] * 256 + маалымат [0];

// Сериалдык мониторго маалыматтарды чыгаруу

Serial.print ("Айланадагы жарыктын жарыгы:");

Serial.print (жаркыроо);

Serial.println ("lux");

кечигүү (300);

}

4 -кадам: Тиркемелер:

Айланадагы жарык сенсорунун кенен динамикалык диапазону аны ачык күндүн нуру тийген жерде колдонууда өзгөчө пайдалуу кылат. Аппарат көчө чырактарын жана коопсуздукту, жарнак тактасын жана автомобилдик жарыктандырууну автоматтык башкарууда колдонуу үчүн идеалдуу. TSL45315 түзмөктөрү энергияны үнөмдөөнү жогорулатуу үчүн автоматтык башкаруу жана күндүзгү түшүм алуу үчүн катуу абалда жана жалпы жарыктандырууда колдонулушу мүмкүн. Башка тиркемелерде батарейканын иштөө мөөнөтүн узартуу жана уюлдук телефондордо, планшеттерде жана ноутбуктарда көрүнүүнү оптималдаштыруу үчүн дисплейдин арткы жарык көзөмөлү камтылган.

Сунушталууда: