• 大小: 71KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-29
  • 语言: 其他
  • 标签: AHT15  AHT10  

资源简介

本例程实现用STC15W204S单片机,通过模拟I2C接口,读取奥松电子的AHT15/AHT10温湿度传感器的数据,并通过串口输出数据

资源截图

代码片段和文件信息

/**************************************************************/
/* 作者:wolfchuang                                            */
/* 联系方式:wolfchuang@qq.com                                 */
/* 最后编译日期:20190528                                      */
/* 版权说明:若在程序中使用本文件中的函数请联系作者获得使用权 */
/**************************************************************/
#define  MAIN_Fosc 12000000L //定义主时钟
#include “STC15Fxxxx.H“

#define Baudrate1 9600L
#define  AHT15_ADDR 0x70

sbit RTX_SW=P5^4;

sbit SCL=P3^2;                     //时钟信号引脚定义
sbit SDA=P3^3;                     //数据信号引脚定义

u8 i;
u8 B_TX1_Busy; //发送忙标志
bit RevEnd_Flag=0;
u8 RX1_len=0checkiWarning_Lv=0;
u8 RX1_Buffer[16]; //串口接收缓冲

u16 CT_data[2]={0};
u32 CT_tempcount=0;
volatile int C=0T=0;

void UART1_Config_withT2(u16 dat); //串口初始化

void delay_ms(u8 ms);

void I2C_Start(void);
void Stop_I2C(void);
void Receive_ACK(void);
void Send_ACK(void);
void Send_NOT_ACK(void);
void I2C_WR_Byte(u8 txd);
u8 I2C_RD_Byte();
void JH_SendAC(); //向AHT15发送AC命令
void JH_SendBA(); //向AHT15发送BA命令
u8 JH_Read_Statua(); //读取AHT15的状态寄存器
bit JH_Read_Cal_Enable();
void JH_Read_CTdata(u16 *ct); //读取温湿度数据
u8 JH_Init(); //AHT15初始化

void SendByte(u8 dat); //串口发送
void SendString(char *s);




//========================================================================
// 函数: void main(void)
// 描述: 主函数
//========================================================================
void main(void)
{
P3M1 = 0; P3M0 = 1; //设置为准双向口

UART1_Config_withT2(65536UL - (MAIN_Fosc / 4) / Baudrate1); //串口初始化
EA = 1; //允许总中断


if(JH_Init()==0)
SendString(“AHT15 ERROR\r\n“); //AHT15初始化失败
else
SendString(“AHT15 READY\r\n“); //AHT15初始化成功

while (1)
{
while(JH_Read_Cal_Enable()==0)//等到校准输出使能位为1时才读取
{
JH_Init();//如果为0再使能一次
delay_ms(30);
}

JH_Read_CTdata(CT_data); //读取温湿度

SendString(“RH:“);
SendByte(CT_data[0]/100 + 48);
SendByte(CT_data[0]/10%10 + 48);
SendByte(‘.‘);
SendByte(CT_data[0]%10 + 48);
SendByte(‘%‘);
SendString(“    “);
SendString(“T:“);
SendByte(CT_data[1]/100 + 48);
SendByte(CT_data[1]/10%10 + 48);
SendByte(‘.‘);
SendByte(CT_data[1]%10 + 48);
SendString(“‘C\r\n“);



delay_ms(200);
delay_ms(200);
delay_ms(200);
delay_ms(200);
delay_ms(200);
delay_ms(200);
delay_ms(200);
delay_ms(200);
delay_ms(200);
}
}

//========================================================================
// 描述: 设置Timer2做波特率发生器。
// 参数: dat: Timer2的重装值.
//========================================================================
void UART1_Config_withT2(u16 dat) // 选择波特率 2: 使用Timer2做波特率 其它值: 使用Timer1做波特率.
{
AUXR |= 0x01; //S1 BRT Use Timer2;
AUXR &= ~(1<<4); //Timer stop
AUXR &= ~(1<<3); //Timer2 set As Timer
AUXR |=  (1<<2); //Timer2 set as 1T mode
TH2 = dat / 256;
TL2 = dat % 256;
IE2  &= ~(1<<2); //禁止中断
AUXR |=  (1<<4); //Timer

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      32804  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\204S-AHT15.m51

    .......     72584  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\204S-S.uvgui.Administrator

    .......     72590  2019-05-28 09:56  ATH15调试 - 20190528 - SHERAUPLOAD\204S-S.uvgui_Administrator.bak

    .......      5032  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\204S-S.uvopt

    .......     13431  2019-05-28 09:56  ATH15调试 - 20190528 - SHERAUPLOAD\204S-S.uvproj

     文件       5036  2019-05-17 16:58  ATH15调试 - 20190528 - SHERAUPLOAD\204S-S_uvopt.bak

     文件      13427  2019-05-10 16:22  ATH15调试 - 20190528 - SHERAUPLOAD\204S-S_uvproj.bak

     文件      10071  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\main.c

     文件      19309  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\main.LST

     文件       1073  2019-05-28 09:55  ATH15调试 - 20190528 - SHERAUPLOAD\output\201S-S.plg

     文件      43996  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\output\204S-AHT15

     文件       6858  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\output\204S-AHT15.hex

     文件         90  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\output\204S-AHT15.lnp

     文件       1039  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\output\204S-AHT15.plg

     文件      47937  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\output\main.obj

     文件      32085  2019-05-17 10:03  ATH15调试 - 20190528 - SHERAUPLOAD\STC15Fxxxx.H

     目录          0  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD\output

     目录          0  2019-05-28 10:01  ATH15调试 - 20190528 - SHERAUPLOAD

----------- ---------  ---------- -----  ----

               377362                    18


评论

共有 条评论