资源简介

使用sht75做的温湿度检测代码 内含按键判断 迪文液晶显示等

资源截图

代码片段和文件信息

/********************************************************************************************************/
#include  “config.h“
#include 

#define UARTBAUD 115200 // 未考虑小数分频器,所预期得到的波特率
#define    UART0_INT 6
#define FDR 0  // 若该宏为0则不会启用小数分频器
//#define  t_c   (*(volatile unsigned char *)(0x40000000 + 0x7020)) 
//#define  T_End  (*(volatile unsigned char *)(0x40000000 + 0x7021)) 
//#define  rh_ture   (*(volatile unsigned char *)(0x40000000 + 0x7022)) 
//#define  H_End  (*(volatile unsigned char *)(0x40000000 + 0x7023)) 

uint32 Temp_T;
uint32 Temp_H;
//uint32 T;
//uint32 H;
float T_End;  // 最后 温度
float H_End;  //最后 湿度
uint32 TH_Result;
float rh_ture;
float t_c;
float rh_lin;
uint32 TH_Result_Bk; //最后温度湿度
char  string[64];
char *strpt = string;
//uint32    Rcv_New = 0; // 为1时表明接收到新数据
//uint32    Snd_N   = 0; // 记录接收数据完毕后,需发送数据的个数
uint8   Rcv_Buf[150];
uint32   tm; // 字符接收数组
uint32 RcvCount = 0; // 接收的数据个数
volatile uint8 RcvOver; // 接收完成标志  1:表示完成

uint32 strlen1; 
uint32 strlen2;
uint32 strlen3;
uint32 strlen4;
char  str[6]={0xAA0x520xCC0x330xC30x3C};
char  sd[200]={0xAA0x55};
char  ss[200]={0xAA0x55};
char  s1[64];
char  s2[64];
char  s3[64];
char  s4[64];
/************************************************************************************************************/
/***********************************************
//    //
// 以下为SHT75驱动程序    //
//    //
***********************************************/

/*******************宏定义部分*****************/
//#define WDT_CONTR  0xc1;
#define Measure_TEMP 0x03 //温度
#define Measure_HUMI 0x05 //湿度
uint8 TH_Array[3];
uint32 Error;
////////////////////////////////////////////////////////////////////////////////////
void delay()
{
uint32 i;
for( i=0;i<50;i++);

}

/*****************************************************
函数功能:SHT75启动传输
入口参数:无
出口参数:无
***************************************************/
void Start(void)
{
FIO3DIR3= FIO3DIR3| 0x04;
FIO3SET2 = 0x80;    //拉高SCK
FIO3CLR3 = 0x04;    //拉低DAT
__asm{nop;}     //短时间延时,给硬件反应时间   
FIO3CLR2 = 0x80;    //拉低SCK
__asm{nop;}   //短时间延时,给硬件反应时间
__asm{nop;} 
__asm{nop;} 
FIO3SET2 = 0x80;  //上拉SCK
FIO3SET3 = 0x04;  //上拉DAT
__asm{nop;}   //短时间延时,给硬件反应时间
FIO3CLR2 = 0x80;  //拉低SCK
}
/*****************************************************
函数功能:向SHT75中写入一个数据
入口参数:Value
出口参数:Error
***************************************************/
void Write_Byte(uint8 Value)
{
unsigned char i;
FIO3DIR3= FIO3DIR3| 0x04;
for (i = 0x80;i > 0;i /= 2)   //8 个SCK 时钟的下降沿
{
if (i & Value) 
FIO3SET3 = 0x04;
else 
FIO3CLR3 = 0x04;

__asm{nop;}
__asm{nop;}
__asm{nop;}

FIO3SET2 = 0x80;
__asm{nop;}
__asm{nop;}
__asm{nop;}
FIO3CLR2 = 0x80;
}
                  
//FIO3SET3 = 0x04;
FIO3DIR3 &= ~0x04;
FIO3SET2 = 0x80;

tm=FIO3PIN3;         

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-06-19 10:30  wenshidu\
     文件      206342  2013-06-19 10:33  wenshidu\UART0_FDR.mcp
     目录           0  2012-04-11 09:27  wenshidu\UART0_FDR_Data\
     文件        3407  2013-06-19 10:33  wenshidu\UART0_FDR_Data\CWSettingsWindows.stg
     目录           0  2013-06-19 10:30  wenshidu\UART0_FDR_Data\DebugInFLASH\
     目录           0  2012-04-18 10:35  wenshidu\UART0_FDR_Data\DebugInFLASH\objectCode\
     文件        1194  2013-06-19 10:29  wenshidu\UART0_FDR_Data\DebugInFLASH\objectCode\IRQ.o
     文件        3755  2013-06-19 10:29  wenshidu\UART0_FDR_Data\DebugInFLASH\objectCode\Startup.o
     文件       79352  2013-06-19 10:29  wenshidu\UART0_FDR_Data\DebugInFLASH\objectCode\main.o
     文件       72348  2013-06-19 10:29  wenshidu\UART0_FDR_Data\DebugInFLASH\objectCode\target.o
     文件       96915  2013-06-19 10:33  wenshidu\UART0_FDR_Data\DebugInFLASH\TargetDataWindows.tdt
     文件       62032  2013-06-19 10:29  wenshidu\UART0_FDR_Data\DebugInFLASH\UART0_FDR.axf
     文件       61484  2013-06-19 10:29  wenshidu\UART0_FDR_Data\DebugInFLASH\UART0_FDR.i32
     目录           0  2013-06-19 10:30  wenshidu\UART0_FDR_Data\DebugInRAM\
     目录           0  2012-04-18 09:12  wenshidu\UART0_FDR_Data\DebugInRAM\objectCode\
     文件        1194  2012-04-18 09:40  wenshidu\UART0_FDR_Data\DebugInRAM\objectCode\IRQ.o
     文件        3755  2012-04-18 09:40  wenshidu\UART0_FDR_Data\DebugInRAM\objectCode\Startup.o
     文件       79232  2012-04-18 11:16  wenshidu\UART0_FDR_Data\DebugInRAM\objectCode\main.o
     文件       72336  2012-04-18 09:40  wenshidu\UART0_FDR_Data\DebugInRAM\objectCode\target.o
     文件       97283  2013-06-19 10:33  wenshidu\UART0_FDR_Data\DebugInRAM\TargetDataWindows.tdt
     文件       49028  2012-04-18 10:32  wenshidu\UART0_FDR_Data\DebugInRAM\UART0_FDR.axf
     文件       42081  2012-04-18 10:32  wenshidu\UART0_FDR_Data\DebugInRAM\UART0_FDR.i32
     目录           0  2013-06-19 10:30  wenshidu\UART0_FDR_Data\RelInFLASH\
     文件       54735  2013-06-19 10:33  wenshidu\UART0_FDR_Data\RelInFLASH\TargetDataWindows.tdt
     目录           0  2013-06-19 10:30  wenshidu\src\
     文件        3349  2012-02-02 13:15  wenshidu\src\IRQ.s
     文件       69027  2012-02-02 13:15  wenshidu\src\LPC23xx.h
     文件       11806  2012-02-02 13:15  wenshidu\src\Startup.s
     文件        4453  2012-02-02 13:15  wenshidu\src\config.h
     文件       12897  2013-06-19 10:29  wenshidu\src\main.c
     文件        1582  2012-02-02 13:15  wenshidu\src\mem_a.scf
............此处省略4个文件信息

评论

共有 条评论