久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
附上stm32f103控制dht11溫濕度傳感器的代碼
[打印本頁]
作者:
e電動小馬達e
時間:
2018-12-27 09:08
標題:
附上stm32f103控制dht11溫濕度傳感器的代碼
實習內容,有些細節沒做好
單片機源程序如下:
#include <stdio.h>
#include "uart.h"
#include "tim.h"
#include "SysTick.h"
#include "TFT18.h"
#include "dht11.h"
#include "GUI.h"
#define UART_RX_LEN 8
uint8_t USART2_Buffer[UART_RX_LEN]= {0};
//uint8_t Data_Receive[UART_RX_LEN]= {0};
uint8_t Sendbuf[UART_RX_LEN]={0};
int USART2_Rx=0;
double temperature=0; //空氣溫度
double humidity=0; //空氣濕度
//uint8_t illumination; //光照強度
//uint8_t soil; //土壤濕度
uint8_t Time_3s=0;
uint8_t Time_2s=0;
uint8_t ch;
char buffer[5];
char str[8];
static void SYS_init(void);
static void NVIC_Configuration(void);
static void lcd(void);
static void kaiji(void);
int main()
{
SYS_init();
kaiji();
while(1){
// u8 buffer[5];
// if(Time_2s==1){
// Time_2s=0;
// if (dht11_read_data(buffer)==0){
// humidity = buffer[0] + buffer[1] / 10.0; //空氣濕度
// temperature = buffer[2] + buffer[3]/10.0; //空氣溫度
//// humidity=1.2;
//// temperature=3.5;
// }
// //在屏幕顯示數據
// lcd();
///****************數據處理*********************/
///*
// *回復報文格式 Data_Receive[0] Data_Receive[1] Data_Receive[2] Data_Receive[3] Data_Receive[3]
// * (1為空氣溫度,2為空氣濕度,3為光照強度,4為土壤濕度) 數據十位 數據個位 數據十分位 數據百分位
// *
// */
// Sendbuf[0]=2; //標志位2位空氣濕度
// Sendbuf[1]=buffer[0]/10; //濕度的十位
// Sendbuf[2]=buffer[0]%10; //濕度的個位
// Sendbuf[4]=buffer[1]/10; //濕度的十分位
// Sendbuf[5]=buffer[1]%10; //濕度的百分位
// }
}
}
/*
函數功能:資源初始化
*/
static void SYS_init(void)
{
uart2_init(115200);
NVIC_Configuration();
/*tim2 10ms 中斷定時*/
Tim2_Config(10000,71);
Lcd_Init();
}
/*
函數功能:USART2中斷控制
*/
void NVIC_Configuration(void)
{
//配置中斷控制器
NVIC_InitTypeDef NVIC_InitStructure;
// /* Enable and set USART Interrupt to the lowest priority */
NVIC_InitStructure.NVIC_IRQChannel = USART2_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}
void kaiji(void)
{
Lcd_Clear(GRAY0);
Gui_DrawFont_GBK16(35,50,BLUE,GRAY0,"開機中...");
}
void lcd(void)
{
Lcd_Clear(GRAY0);
Gui_DrawFont_GBK16(18,30,BLACK,GRAY0,"智能農業大棚");
Gui_DrawFont_GBK16(10,50,BLUE,GRAY0,"空氣溫濕度檢測");
Gui_DrawFont_GBK16(10,70,BLUE,GRAY0,"空氣溫度:");
sprintf(str,"%f",temperature);
Gui_DrawFont_GBK16(80,70,BLUE,GRAY0,str);
Gui_DrawFont_GBK16(10,90,BLUE,GRAY0,"空氣濕度:");
sprintf(str,"%f",humidity);
Gui_DrawFont_GBK16(80,90,BLUE,GRAY0,str);
}
/*
接收中斷處理函數
*/
//串口5接收中斷
void USART2_IRQHandler()
{
// u32 temp = 0;
// u16 i = 0;
if(USART_GetITStatus(USART2,USART_IT_RXNE) != RESET) //中斷產生
{
Gui_DrawFont_Num32(100,50,BLACK,GRAY0,5);
USART_ClearITPendingBit(USART2,USART_IT_RXNE); //清除中斷標志
USART2_Buffer[USART2_Rx] = USART_ReceiveData(USART2); //接收串口2數據到buff緩沖區
USART2_Rx++;
if(USART2_Buffer[USART2_Rx-1] == 0x0a || USART2_Rx == UART_RX_LEN) //如果接收到尾標識是換行符(或者等于最大接受數就清空重新接收)
{
//收到網關以‘9’開頭的命令報文就將檢測的數據組成的報文Sendbuf回復網關
if(USART2_Buffer[0] == '9') //檢測到頭標識是我們需要的
{
delay_ms(20);
// UART_Send_Message(USART2,Sendbuf);
USART2_Rx=0;
}
else
{
USART2_Rx=0; //不是我們需要的數據或者達到最大接收數則開始重新接收
}
}
}
}
復制代碼
所有資料51hei提供下載:
空氣濕度.7z
(166.54 KB, 下載次數: 116)
2018-12-28 02:49 上傳
點擊文件名下載附件
dth11驅動
下載積分: 黑幣 -5
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
一区二区福利视频
|
亚洲一区二区国产
|
国产精品69久久久久水密桃
|
玖玖操
|
免费国产视频在线观看
|
欧美看片
|
91精品久久久久久久久久入口
|
国产一区视频在线
|
精品国产乱码久久久久久a丨
|
日韩不卡在线观看
|
国产精品久久久久久久久久三级
|
日本精品视频
|
在线视频一区二区三区
|
久久综合一区
|
日韩成人高清
|
一区二区三区免费
|
国产在线一区二
|
国产一伦一伦一伦
|
国产第一页在线播放
|
欧美99久久精品乱码影视
|
av入口
|
日韩另类
|
91精品一区二区三区久久久久
|
亚洲精品在线免费观看视频
|
91久久久久久久久久久久久
|
亚洲人人
|
亚洲综合色婷婷
|
欧美激情在线一区二区三区
|
亚洲视频在线观看一区二区三区
|
国产精品96久久久久久
|
久草视频在线播放
|
久久久亚洲一区
|
81精品国产乱码久久久久久
|
丝袜美腿一区二区三区
|
精品成人在线视频
|
性生生活大片免费看视频
|
一区二区在线
|
日韩区
|
国产高清视频在线观看
|
国产1区
|
亚洲欧美日韩精品久久亚洲区
|