Мазмуну:

Particle Photon - TCN75A Температура сенсорунун үйрөткүчү: 4 кадам
Particle Photon - TCN75A Температура сенсорунун үйрөткүчү: 4 кадам

Video: Particle Photon - TCN75A Температура сенсорунун үйрөткүчү: 4 кадам

Video: Particle Photon - TCN75A Температура сенсорунун үйрөткүчү: 4 кадам
Video: Particle Photon TCN75A Temperature Sensor Tutorial 2024, Июнь
Anonim
Image
Image

TCN75A-эки зымдуу сериялык температура сенсору, температурадан санарипке которгуч. Бул температураны сезүүчү колдонмолор үчүн ийкемдүүлүктү камсыз кылган колдонуучу программалоочу реестрлери менен коштолгон. Реестрдин жөндөөлөрү колдонуучуларга үнөмдөө режимин, өчүрүү режимин, бир ок режимин ж.б. конфигурациялоого мүмкүндүк берет. Сенсордун i2c шайкеш сериялык интерфейси бар, ал бир сериялык автобуста сегизге чейин түзмөктү туташтырууну жеңилдетет. Бул жерде анын фотон бөлүкчөсү менен көрсөтүлүшү.

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

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

1. Фотоникалык бөлүкчөлөр

2. TCN75A

3. I²C кабели

4. I²C калканч фотон үчүн

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

Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар
Байланыштар

Бөлүкчө фотону үчүн I2C калканчын алыңыз жана аны акырын бөлүкчө фотонунун казыктарынын үстүнө түртүңүз.

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

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

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

Код
Код

TCN75A үчүн бөлүкчө кодун биздин github репозиторийибизден көчүрүп алсаңыз болот- DCUBE дүкөнү.

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

github.com/DcubeTechVentures/TCN75A/blob/master/Particle/TCN75A.ino

Биз бөлүкчө коду үчүн эки китепкананы колдондук, алар application.h жана spark_wiring_i2c.h. Сенсор менен I2C байланышын жеңилдетүү үчүн Spark_wiring_i2c китепканасы талап кылынат.

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

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

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

// TCN75A

// Бул код TCN75A_I2CS I2C Mini Module менен иштөө үчүн иштелип чыккан

#кошуу

#кошуу

// TCN75A I2C дареги 0x48 (72)

#define Addr 0x48

float cTemp = 0.0, fTemp = 0.0;

int temp = 0;

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

{

// Өзгөрмөнү коюу

Particle.variable ("i2cdevice", "TCN75A");

Particle.variable ("cTemp", cTemp);

// I2C байланышын Мастер катары баштаңыз

Wire.begin ();

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

Serial.begin (9600);

// I2C өткөрүүнү баштоо

Wire.beginTransmission (Addr);

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

Wire.write (0x01);

// 12-бит ADC токтому

Wire.write (0x60);

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

Wire.endTransmission ();

кечигүү (300);

}

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

{

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

// I2C өткөрүүнү баштоо

Wire.beginTransmission (Addr);

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

Wire.write (0x00);

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

Wire.endTransmission ();

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

Wire.requestFrom (Addr, 2);

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

// темп msb, temp lsb

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

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// Маалыматтарды 12 битке айландырыңыз

темп = (((маалымат [0] * 256) + (маалымат [1] & 0xF0)) / 16);

эгер (темп> 2047)

{

темп -= 4096;

}

cTemp = temp * 0.0625;

fTemp = (cTemp * 1.8) + 32;

// Маалыматтарды тактасына чыгаруу

Particle.publish ("Цельсий боюнча температура:", String (cTemp));

Particle.publish ("Фаренгейттеги температура:", String (fTemp));

кечигүү (1000);

}

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

TCN75A - бул персоналдык компьютерлерде жана серверлерде колдонула турган температура сенсору. Ошондой эле оюн -зоок системаларында, кеңсе жабдууларында, дисктердин дисктеринде жана башка PC периферияларында колдонулушу мүмкүн.

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