基于51单片机SHT11温湿度传感器检测程序(含电路图)下面是原理图:下面是SHT11与MCU连接的典型电路:下面是源代码:viewsourceprint?001.#include002.#include003.004./********************************************************005.宏定义006.********************************************************/007.#defineuintunsignedint008.#defineucharunsignedchar009.#definenoACK0010.#defineACK1011.#defineSTATUS_REG_W0x06012.#defineSTATUS_REG_R0x07013.#defineMEASURE_TEMP0x03014.#defineMEASURE_HUMI0x05015.#defineRESET0x1e016.017.enum{TEMP,HUMI};018.019.typedefunion//定义共用同类型020.{021.unsignedinti;022.floatf;023.}value;024.025.026./********************************************************027.位定义028.********************************************************/029.sbitlcdrs=P2^0;030.sbitlcdrw=P2^1;031.sbitlcden=P2^2;032.sbitSCK=P1^0;033.sbitDATA=P1^1;034.035./********************************************************036.变量定义037.********************************************************/038.uchartable2[]="SHT11温湿度检测";039.uchartable3[]="温度为:℃";040.uchartable4[]="湿度为:";041.uchartable5[]=".";042.ucharwendu[6];043.ucharshidu[6];044.045./********************************************************046.1ms延时函数047.********************************************************/048.voiddelay(intz)049.{050.intx,y;051.for(x=z;x>0;x--)052.for(y=125;y>0;y--);053.}054.055./********************************************************056.50us延时函数057.********************************************************/058.voiddelay_50us(uintt)059.{060.uintj;061.for(;t>0;t--)062.for(j=19;j>0;j--);063.}064.065./********************************************************066.50ms延时函数067.********************************************************/068.voiddelay_50ms(uintt)069.{070.uintj;071.for(;t>0;t--)072.for(j=6245;j>0;j--);073.}074.075./********************************************************076.12864液晶写指令077.********************************************************/078.voidwrite_12864com(ucharcom)079.{080.lcdrs=0;081.lcdrw=0;082.delay_50us(1);083.P0=com;084.lcden=1;085.delay_50us(10);086.lcden=0;087.delay_50us(2);088.}089.090./********************************************************091.12864液晶写数据092.********************************************************/093.voidwrite_dat(uchardat)094.{095.lcdrs=1;096.lcdrw=0;097.delay_50us(1);098.P0=dat;099.lcden=1;100.delay_50us(10);101.lcden=0;102.delay_50us(2);103.}104.105./********************************************************106.12864液晶初始化107.********************************************************/108.voidinit12864lcd(void)109.{110.delay_50ms(2);111.write_12864com(0x30);112.delay_50us(4);113.write_12864com(0x30);114.delay_50us(4);115.write_12864com(0x0f);116.delay_50us(4);117.write_12864com(0x01);118.delay_50us(240);119.write_12864com(0x06);120.delay_50us(10);121.write_12864com(0x0c);122.delay_50us(10);123.}124.125./********************************************************126.12864液晶显示函数127.********************************************************/128.voiddisplay1(void)129.{130.uchari;131.write_12864com(0x80);132.for(i=0;i<18;i++)133.{134.write_dat(table2[i]);135.delay_50us(1);136.}137.}138.139./********************************************************140.12864液晶显示函数141.********************************************************/142.voiddis...