標題:
STM32F103C8 HTU21D IIC模擬讀取溫濕度源程序
[打印本頁]
作者:
pomtom
時間:
2018-3-31 21:29
標題:
STM32F103C8 HTU21D IIC模擬讀取溫濕度源程序
STM32F103C8 HTU21D IIC模擬讀取溫濕度程序
一、工程說明
1、時間: 2016年10月18日
2、開發(fā)環(huán)境:MDK-ARM V5.21a (建議在V5.20及以上版本使用)
3、標準庫: V3.5.0
4、工程版本:V1.0.0
5、目標芯片:STM32F10x_MD中容量芯片
單片機源程序如下:
/**
******************************** STM32F10x *********************************
* @文件名 : main.c
* @作者 : strongerHuang
* @庫版本 : V3.5.0
* @文件版本 : V1.0.0
* @摘要 : 主函數 - 定時器(TIM)計數延時
間隔(定時器延時)500ms LED變化一次, 并且串口打印
******************************************************************************/
/*----------------------------------------------------------------------------
更新日志:
2016-05-04 V1.0.0:初始版本
----------------------------------------------------------------------------*/
/* 包含的頭文件 --------------------------------------------------------------*/
#include "bsp.h"
#include "timer.h"
#include "usart.h"
#include "oled.h"
#include "spi.h"
#include "myiic.h"
#include "htu21.h"
extern uint8_t buf[];
unsigned char ASCII[15] = {'0','1','2','3','4','5','6','7','8','9','.','C','%',':','-'};
unsigned char str1[7], str2[7];
/************************************************
OLED顯示HTU21溫濕度
*************************************************/
void Temp_Rh(void)
{
sensor_read(0xE3); //讀取溫度
// data_change();
TIMDelay_Nms(10);
sensor_read(0xE5); //讀取濕度
data_change();
/**********OLED***************/
str1[0] = ASCII[buf[0]];
str1[1] = ASCII[buf[1]];
str1[2] = ASCII[10];
str1[3] = ASCII[buf[2]];
str1[4] = ASCII[buf[3]];
str1[5] = ASCII[11];
str1[6] = ' ';
OLED_8x16Str(80,4,str1);
str2[0] = ASCII[buf[4]];
str2[1] = ASCII[buf[5]];
str2[2] = ASCII[10];
str2[3] = ASCII[buf[6]];
str2[4] = ASCII[buf[7]];
str2[5] = ASCII[12];
str2[6] = '\n';
OLED_8x16Str(80,6,str2);
}
/************************************************
函數名稱 : System_Initializes
功 能 : 系統(tǒng)初始化
參 數 : 無
返 回 值 : 無
作 者 : strongerHuang
*************************************************/
void System_Initializes(void)
{
BSP_Initializes();
TIMER_Initializes();
USART_Initializes();
SPI_Configuration();
OLED_Init();
sensor_iic_init();
}
/************************************************
函數名稱 : main
功 能 : 主函數入口
參 數 : 無
返 回 值 : int
作 者 : strongerHuang
*************************************************/
int main(void)
{
System_Initializes();
OLED_CLS();
OLED_8x16Str(0,0," ");
OLED_8x16Str(0,2," ");
OLED_8x16Str(0,4,"Temp: ");
OLED_8x16Str(0,6,"Humd: ");
while(1)
{
LED_TOGGLE; //LED開關(亮滅變化)
// USART1_Printf((uint8_t*)"TIMDelay500ms..\n"); //打印輸出
// TIMDelay_Nms(500); //TIM延時500ms
Temp_Rh();
USART1_SendNByte(str1,7);
USART1_SendNByte(str2,7);
TIMDelay_Nms(2000);
}
}
/**** Copyright (C)2016 strongerHuang. All Rights Reserved **** END OF FILE ****/
復制代碼
下載:
STM32F103C8_TIM_HTU21(IIC).rar
(307.08 KB, 下載次數: 133)
2018-4-1 01:21 上傳
點擊文件名下載附件
HTU21D
下載積分: 黑幣 -5
作者:
cxfghr
時間:
2018-5-11 14:46
感謝樓主。。。。。。。。!
作者:
hanson0520
時間:
2018-5-11 17:56
謝謝分享。
作者:
tgy666
時間:
2018-6-6 15:08
很給力
作者:
tgy666
時間:
2018-6-6 15:11
感謝樓主
作者:
shilinlin
時間:
2019-10-22 16:16
感謝樓主分享
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1