સોલ્યુશન્સ
સોલ્યુશન્સ

SL-W-TRS-5.5Dx ડિજિટલ ઇન્ફ્રારેડ થર્મોપાઇલ ડેમો બોર્ડ માટે વપરાશકર્તા માર્ગદર્શિકા

2024-12-13 1652
SLKOR માઇક્રો સેમિકોન કંપની લિમિટેડ, દક્ષિણ કોરિયાની સિંઘુઆ યુનિવર્સિટી અને યોન્સેઈ યુનિવર્સિટીમાંથી તેની ટેકનિકલ કરોડરજ્જુ આવે છે. તે નવી સામગ્રી, નવી પ્રક્રિયાઓ અને નવા ઉત્પાદનો સાથે કંપનીના વિકાસનું નેતૃત્વ કરે છે, અને ત્રીજી પેઢીના સેમિકન્ડક્ટર સિલિકોન કાર્બાઇડ પાવર ડિવાઇસની આંતરરાષ્ટ્રીય સ્તરે અદ્યતન ટેકનોલોજીમાં પ્રમાણમાં વહેલા નિપુણતા મેળવે છે.

 

SLKOR ઇલેક્ટ્રોનિક ઉત્પાદનોની ડિઝાઇન, વિકાસ, ઉત્પાદન અને વેચાણને એકીકૃત કરતી એક ઉચ્ચ-તકનીકી એન્ટરપ્રાઇઝ છે. તે ગ્રાહકોને વિશ્વસનીય ઉત્પાદનો અને અનુરૂપ તકનીકી સેવાઓ પ્રદાન કરે છે. બ્રાન્ડ "SLKOR" ધીમે ધીમે આંતરરાષ્ટ્રીય સ્તરે પ્રખ્યાત બન્યું છે, જે વિશ્વભરમાં 10,000 થી વધુ ગ્રાહકોને ઉત્પાદનો અને ઉકેલો પ્રદાન કરે છે.

 

ગ્રાહકોને પૂરક ઉત્પાદનોની સંપૂર્ણ શ્રેણી પ્રદાન કરવાનો પ્રયાસ કરવાના પ્રયાસરૂપે, SLKOR ડિજિટલ ઇન્ફ્રારેડ થર્મોપાઇલ નોન-કોન્ટેક્ટ તાપમાન માપન એપ્લિકેશન ડિઝાઇનના ડેમો બોર્ડ માટે વપરાશકર્તા માર્ગદર્શિકાઓની શ્રેણી શરૂ કરી છે.

 

1.1 નામ: માટે વપરાશકર્તા માર્ગદર્શિકા SLKOR ડિજિટલ ઇન્ફ્રારેડ થર્મોપાઇલ નોન-કોન્ટેક્ટ તાપમાન માપન એપ્લિકેશન ડિઝાઇન ડેમો બોર્ડ

1.2 કાર્યક્રમો: સ્માર્ટ પહેરી શકાય તેવા ઉપકરણો, સ્માર્ટ ફોન, ઔદ્યોગિક તાપમાન દેખરેખ, સંપર્ક વિનાના માનવ શરીરની સપાટીનું તાપમાન માપન, બુદ્ધિશાળી તાપમાન સંવેદના અને નિયંત્રણ અને ટૂંકા અંતરના તાપમાન માપન માટે અન્ય નાના કદના ઉપકરણો.

૧.૩ SL-W-TRS-1.3Dx સિરીઝ ડેમો બોર્ડ:

તેનો ઉપયોગ વિવિધ પ્રકારના સેન્સરના મૂલ્યાંકન અને પરીક્ષણ માટે થાય છે. માપન પરિણામો સ્ક્રીન પર પ્રદર્શિત થશે અને USB થી સીરીયલ પોર્ટ દ્વારા PC પર સીરીયલ પોર્ટ ડિબગીંગ સોફ્ટવેર પર પ્રિન્ટ કરી શકાય છે. બટન વર્ણન: ડાબું બટન રીસેટ માટે છે, અને જમણું બટન પ્રોગ્રામની શરૂઆત અને વિરામને નિયંત્રિત કરી શકે છે.

છબી.png 

2. SL-W-TRS-5.5Dx શ્રેણીની હાર્ડવેર ડિઝાઇન

 

ચિપ પિનમાં પાવર સપ્લાય અને I2C બસનો સમાવેશ થાય છે, જેમાં કુલ 4 પિન હોય છે. સપ્લાય વોલ્ટેજની સ્વીકાર્ય શ્રેણી 2.3 - 3.6V છે. સેન્સરમાં જ ખૂબ જ ઓછો પાવર વપરાશ છે. પાવર સપ્લાય ગ્રાઉન્ડ વચ્ચે 0.1uF કેપેસિટર પૂરતું છે. જો સેન્સર પાવર સપ્લાય ભાગથી પ્રમાણમાં દૂર હોય, તો સ્થિર પાવર સપ્લાય સુનિશ્ચિત કરવા અને અવાજ ઘટાડવા માટે વધારાના 10uF કેપેસિટરનો વિચાર કરી શકાય છે.

છબી.png 

 

 

3. SL-W-TRS-5.5Dx સિરીઝ ડેમો બોર્ડનું વર્ણન

 

૩.૧ ડેમો બોર્ડ ટાઇપ-સી સોકેટ દ્વારા સંચાલિત છે, અને ડેમો બોર્ડ માટે પાવર સપ્લાય વોલ્ટેજ 3.1V છે. ઉપયોગમાં લેવાતી વખતે, ડેમો બોર્ડને ટાઇપ-સી દ્વારા પીસી સાથે કનેક્ટ કરો, અને પછી તમે સ્ક્રીન પર પરિણામો જોઈ શકો છો. જો તમારે સીરીયલ પોર્ટ દ્વારા ડેટા પ્રદર્શિત કરવાની જરૂર હોય, તો તમારે WCH CH5 ડ્રાઇવર પ્રોગ્રામ ઇન્સ્ટોલ કરવો પડશે અને પછી ઓપરેટ કરવા માટે સીરીયલ પોર્ટ ડિબગીંગ સોફ્ટવેરનો ઉપયોગ કરવો પડશે. સીરીયલ પોર્ટ કોમ્યુનિકેશન સેટિંગ્સ નીચે મુજબ છે: બાઉડ રેટ: 340, ડેટા બિટ્સ: 9600, સ્ટોપ બિટ્સ: 8, અને કોઈ પેરિટી ચેક નહીં.

 

૩.૨ ડેમો બોર્ડનું સ્ક્રીન ડિસ્પ્લે ઉપરથી નીચે સુધી નીચે મુજબ છે: આસપાસનું તાપમાન (tamb), સેન્સર આઉટપુટ વોલ્ટેજ (vtp_cor), ઑબ્જેક્ટ (સપાટી) તાપમાન (tobj), અને માનવ શરીરનું તાપમાન (tbdy). ઉપરોક્ત તાપમાન મૂલ્યોનું એકમ °C છે, અને વોલ્ટેજનું એકમ μV છે. તેમાંથી, પ્રથમ ત્રણ મૂલ્યો ઉપકરણના મૂળ આઉટપુટ છે. શરીરનું તાપમાન મૂલ્ય અમારી કંપનીના અલ્ગોરિધમનો ઉપયોગ કરીને મૂળ મૂલ્યોના આધારે ગણવામાં આવે છે અને તે ફક્ત સંદર્ભ માટે છે. વપરાશકર્તાઓ તેમની જરૂરિયાતો અનુસાર તેમના પોતાના શરીરના તાપમાન અલ્ગોરિધમનો ઉપયોગ કરીને ડેટા પર પ્રક્રિયા કરી શકે છે. 

છબી.png 

સીરીયલ પોર્ટ ડિસ્પ્લે ઇફેક્ટ

 

 .. SL-W-TRS-5.5Dx શ્રેણીનું ડેમો બોર્ડ પ્રોગ્રામ ઉદાહરણ

 

//

 // મુખ્ય.સી

 //////

 #FOR_CUSTOMER વ્યાખ્યાયિત કરો

 #ifdef ગ્રાહક માટે

 #"drv_uart.h" શામેલ કરો

 

#"drv_i2c.h" શામેલ કરો

#"drv_key.h" શામેલ કરો

#"oled/oled.h" શામેલ કરો

#"trs55d.h" શામેલ કરો

 

બાહ્ય રદબાતલ સિસ્ટમકોરક્લોકઅપડેટ(રદબાતલ);

બાહ્ય રદબાતલ વિલંબ_એમએસ(પૂર્ણાંક સીએનટી);

 પૂર્ણ મુખ્ય (રદબાતલ)

{

uint8_t કી;

 uint8_t રન = 0x01;

 સિસ્ટમકોરક્લોકઅપડેટ();

જો (SysTick_Config(SystemCoreClock / 1000))

જ્યારે(1);

 યુઆર્ટઇનિટ();

drv_i2c_init();

drv_key_init();

 

OLED_Init();

 OLED_રિફ્રેશ();

OLED_ક્લિયર();

OLED_ShowString(8,0,"ટ્રેન્ડ:",16,1);

OLED_ShowString(8,16,"Vtp:",16,1);

 OLED_ShowChinese(8,32,0,16,1);

OLED_ShowChinese(24,32,2,16,1);

OLED_ShowChinese(40,32,3,16,1);

OLED_ShowChinese(8,48,1,16,1);

 OLED_ShowChinese(24,48,2,16,1);

OLED_ShowChinese(40,48,3,16,1);

OLED_રિફ્રેશ();

uartSendString("એસએલ-ડબલ્યુ-TRS-5.5Dx ડેમો પ્રોગ્રામ ");

જ્યારે(1) {

કી = drv_key_read();

જ્યારે(drv_key_read());

જો (કી) {

 દોડ = (દોડવું)?0:1;

}

જો (ચલાવો) {

 ટીઆરએસ55ડી_રીડ();

OLED_રિફ્રેશ();

}

વિલંબ_એમએસ(20);

}

}

 

//

 //trs55d.h

 //////

#ifndef _TRS55D_H_

#વ્યાખ્યાયિત કરો _TRS55D_H_

# સમાવેશ થાય છે

#TRS55D_NORMAL_Tobj_MSB_R 0x10 વ્યાખ્યાયિત કરો

#TRS55D_NORMAL_Tobj_CSB_R 0x11 વ્યાખ્યાયિત કરો

#TRS55D_NORMAL_Tobj_LSB_R 0x12 વ્યાખ્યાયિત કરો

 #TRS55D_NORMAL_TEMP_MSB_R 0x16 વ્યાખ્યાયિત કરો

#TRS55D_NORMAL_TEMP_CSB_R 0x17 વ્યાખ્યાયિત કરો

#TRS55D_NORMAL_TEMP_LSB_R 0x18 વ્યાખ્યાયિત કરો

 #TRS55D_NORMAL_DATA1_MSB_R 0x19 વ્યાખ્યાયિત કરો

#TRS55D_NORMAL_DATA1_CSB_R 0x1A વ્યાખ્યાયિત કરો

 #TRS55D_NORMAL_DATA1_LSB_R 0x1B વ્યાખ્યાયિત કરો

 #TRS55D_NORMAL_DATA2_MSB_R 0x1C વ્યાખ્યાયિત કરો

 #TRS55D_NORMAL_DATA2_CSB_R 0x1D વ્યાખ્યાયિત કરો

#TRS55D_NORMAL_DATA2_LSB_R 0x1E વ્યાખ્યાયિત કરો

 #Define TRS55D_RAW_DATA1_MSB_R 0x22

 #TRS55D_RAW_DATA1_CSB_R 0x23 વ્યાખ્યાયિત કરો

#TRS55D_RAW_DATA1_LSB_R 0x24 વ્યાખ્યાયિત કરો

 #Define TRS55D_RAW_DATA2_MSB_R 0x25

 #TRS55D_RAW_DATA2_CSB_R 0x26 વ્યાખ્યાયિત કરો

 #TRS55D_RAW_DATA2_LSB_R 0x27 વ્યાખ્યાયિત કરો

 #TRS55D_RAW_TEMP_MSB_R 0x28 વ્યાખ્યાયિત કરો

 #TRS55D_RAW_TEMP_CSB_R 0x29 વ્યાખ્યાયિત કરો

#TRS55D_RAW_TEMP_LSB_R 0x2A વ્યાખ્યાયિત કરો

 #ADDR_TRS55D 0xFE વ્યાખ્યાયિત કરો //(0x7F << 1)

 #વ્યાખ્યાયિત કરો _STATUS_DRDY_ 0x01 રદબાતલ TRS55D_read(રદબાતલ);

#endif

//

// trs55d.c

//////

# સમાવેશ થાય છે

 #"drv_i2c.h" શામેલ કરો

 #"trs55d.h" શામેલ કરો

 #"body_temp.h" શામેલ કરો

 બાહ્ય uint8_t uartSendString(const char* buf);

બાહ્ય વોઇડ OLED_ShowString(uint8_t x,uint8_t y, કોન્સ્ટ ચાર *chr,uint8_t કદ1,uint8_t મોડ);

 બાહ્ય રદબાતલ OLED_ShowBNum(uint8_t x,uint8_t y, ફ્લોટ નંબર,uint8_t લેન,

uint8_t કદ 2, uint8_t મોડ); uint8_t TRS55D_IIC_Read(uint8_t addr_dev, uint8_t addr_reg,

uint8_t *buf, uint16_t ગણતરી)

{

uint8_t ret;

uint8_t એક ફ્લેગ;

uint16_t i = 0;

drv_i2c_સ્ટાર્ટ();

drv_i2c_select_dev(એડ્ર_ડેવ, DRV_I2C_OPWR);

 

drv_i2c_writebyte(એડ્ર_રેગ);

 drv_i2c_સ્ટાર્ટ();

drv_i2c_select_dev(એડ્ર_ડેવ, DRV_I2C_OPRD);

for(i = 0; i <ગણતરી; i ++) { ackflag = (i < (ગણતરી-1)) ? 1:0; buf[i]

 = drv_i2c_readbyte(એકેફ્લેગ);

 }

drv_i2c_સ્ટોપ();

 રીટર્ન રેટ;

 }

 

રદબાતલ TRS55D_IIC_Write(uint8_t addr_dev, uint8_t addr_reg, uint8_t *buf, uint16_t ગણતરી)

 {

 uint16_t i = 0;

drv_i2c_સ્ટાર્ટ();

drv_i2c_select_dev(એડ્ર_ડેવ, DRV_I2C_OPWR);

drv_i2c_writebyte(એડ્ર_રેગ);

 (i = 0; i < ગણતરી; i ++) માટે

 { drv_i2c_writebyte(buf[i]);

}

drv_i2c_સ્ટોપ();

}

 ટાઇપડેફ યુનિયન{

ઇન્ટ૧૬_ટી આઇ૧૬;

uint16_t u16;

રચના {

uint8_t u8l;

uint8_t u8h;

 }અન;

}uu16_t;

 

ટાઇપડેફ યુનિયન{

ઇન્ટ૧૬_ટી આઇ૧૬;

રચના {

uint8_t u8b0;

uint8_t u8b1;

uint8_t u8b2;

uint8_t u8b3;

}અન;

 }uu32_t;

 

સ્ટેટિક ચાર બફર[264];

 uu32_t તોબજ, ટેમ્બ_કેલ;

 

uu32_t vtp_cor;

ફ્લોટ vtp_uv_f = 0.0;

ફ્લોટ vtp_cor_f = 0.0;

ફ્લોટ ટેમ્બફ = 0.0; ફ્લોટ ટોબજેએફ = 0.0;

 ફ્લોટ tbdyf = 0.0;

 રદબાતલ TRS55D_read(રદબાતલ)

{

uint8_t rbuf[4];

uint8_t રેડર, rdat;

 uint8_t waddr = 0x0, wdat = 0x0;

પૂર્ણાંક સમયસમાપ્તિ=0;

 

વાડર = 0x30;

ડબલ્યુડીએટી = 0x09;

TRS55D_IIC_રાઇટ(ADDR_TRS55D, વાડર, &wdat,1);

 // રૂપાંતરણ શરૂ કરો વિલંબ_ms(100);

 

// રૂપાંતર માટે રાહ જુઓ

રેડર = 0x03;

કરવું

TRS55D_IIC_રીડ (ADDR_TRS55D, રેડર, &rdat,1);

} જ્યારે(((rdat == 0xFF) || (!(rdat & 0x30))) && સમયસમાપ્તિ++ < 200);

રેડર = 0x02;

 કરવું

TRS55D_IIC_રીડ (ADDR_TRS55D, રેડર, &rdat,1);

} જ્યારે(((rdat == 0xFF) || (!(rdat & 0x0B))) && સમયસમાપ્તિ++ < 200);

 

 // માપાંકન પછી વોલ્ટેજ મૂલ્ય

રેડર = TRS55D_NORMAL_DATA1_MSB_R;

TRS55D_IIC_Read (ADDR_TRS55D, raddr,&rbuf[0],3);

vtp_cor.un.u8b2 = rbuf[0];

 vtp_cor.un.u8b1 = rbuf[1];

vtp_cor.un.u8b0 =rbuf[2];

 જો (vtp_cor.un.u8b2 & 0x80) { vtp_cor.un.u8b3 = 0xFF;

}નહીંતર {

vtp_cor.un.u8b3 = 0x00;

// સુધાર્યા પછી vtp

}

vtp_cor_f = (ફ્લોટ)vtp_cor.i32/524288.0;

vtp_cor_f *= ૧૦૦૦;

// કેલિબ્રેશન પછી આસપાસના તાપમાનનું મૂલ્ય

 રેડર = TRS55D_NORMAL_TEMP_MSB_R;

TRS55D_IIC_Read (ADDR_TRS55D,raddr,&rbuf[0],3);

 tamb_cal.un.u8b2 = rbuf[0];

tamb_cal.un.u8b1 =rbuf[1];

tamb_cal.un.u8b0 =rbuf[2];

tambf = (ફ્લોટ)tamb_cal.i32 / 16384.0; // આસપાસનું તાપમાન

 

// કેલિબ્રેશન પછી પદાર્થ (સપાટી) તાપમાન

રેડર = TRS55D_NORMAL_Tobj_MSB_R;

TRS55D_IIC_Read (ADDR_TRS55D,raddr,&rbuf[0],3);

 tobj.un.u8b2 = rbuf[0]; tobj.un.u8b1 = rbuf[1];

tobj.un.u8b0 =rbuf[2]; tobjf = (ફ્લોટ)tobj.i32 / 16384.0;

// પદાર્થ (સપાટી) તાપમાન

 

// શરીરનો તાપમાન મેળવો

tbdyf = get_body_temp(tambf,tobjf); // બોડીટેમ્પ મેળવો

 

// uart sprintf પર પ્રદર્શિત કરો(બફર, "tamb = %.2f, vtp_cor = %.2f, tobj = %.2f, tbdy = %.2f ", tambf, vtp_cor_f, tobjf, tbdyf); uartSendString(બફર);

 

// ઓલેડ પર ડિસ્પ્લે

 ફ્લોટ વેલ્સ[4] = {ટેમ્બએફ, વીટીપી_કોર_એફ, ટોબજેએફ, ટીબીડીવાયએફ+0.05};

 OLED_ShowBNum (64, 0, vals[0], 4, 16, 1); // ટેમ્બ

OLED_ShowBNum (48, 16, vals[1], 6, 16, 1); // vtp

OLED_ShowString(112,16, "uv",16, 1);

OLED_ShowBNum (64, 32, vals[2], 4, 16, 1); // ટોબજ

OLED_ShowBNum (64, 48, vals[3], 4, 16, 1); // Tbdy

}

સંબંધિત ભલામણો
WhatsApp

સેવા હોટલાઇન

ટેલિફોન: +86 755 83044319

WhatsApp

Whatsapp: + 8618073002950