基于STM32的DHT11溫濕度遠(yuǎn)程監(jiān)測(cè)LCD1602顯示Proteus仿真設(shè)計(jì)(仿真+程序+設(shè)計(jì)報(bào)告+講解視頻)
仿真圖proteus 8.9
程序編譯器:keil 5
編程語(yǔ)言:C語(yǔ)言
設(shè)計(jì)編號(hào):C0118
1. 主要功能
基于STM32單片機(jī)的溫濕度系統(tǒng)LCD1602顯示Proteus仿真設(shè)計(jì)
1、STM32單片機(jī)實(shí)時(shí)檢測(cè)DHT11溫濕度測(cè)量,溫度測(cè)量范圍0到50℃,濕度測(cè)量范圍是20%-90%
2、串口實(shí)時(shí)傳輸檢測(cè)溫濕度給電腦串口調(diào)試助手,以此實(shí)現(xiàn)遠(yuǎn)程監(jiān)測(cè);
3、LCD1602實(shí)時(shí)顯示監(jiān)測(cè)到的溫濕度;
STM32單片機(jī) DHT11溫濕度 LCD1602
資料下載鏈接(可點(diǎn)擊):
通過(guò)網(wǎng)盤分享的文件:KEY_C0118
鏈接: https://pan.baidu.com/s/1AMAi4jyA0L2iJsm7PB2mYw?pwd=vgyk
提取碼: vgyk
2.仿真
打開仿真工程,雙擊proteus中的單片機(jī),選擇hex文件路徑,然后開始仿真。
開始仿真后串口調(diào)試助手顯示溫度檢測(cè)值,LCD1602第一行顯示溫度檢測(cè)值50℃和濕度測(cè)量值90%。
3. 程序
程序是用keil5 mdk版本打開的,如果打開有問(wèn)題,核實(shí)下keil的版本。程序是HAL版本編寫的,有stm32cubemx配置文件。有注釋可以結(jié)合講解視頻理解。
int main(void)
{
/* USER CODE BEGIN 1 */
char data_str1[20];
// char data_str2[20];
char data_str2[]=" ";
char str[20]; //溫度值轉(zhuǎn)換為字符串的存放數(shù)組
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART1_UART_Init();
MX_TIM2_Init();
/* USER CODE BEGIN 2 */
// printf("DS18B20測(cè)溫實(shí)驗(yàn)nr");
HAL_UART_Transmit(&huart1, (uint8_t *)&"DHT11rn", 7, 10); //串口1發(fā)送字符串,數(shù)組長(zhǎng)度為10,
LCD_Init(); //LCD1602初始化
// DS18B20_Get_Temp();
HAL_TIM_Base_Start_IT(&htim2); //初始化定時(shí)器
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
HAL_Delay(100);
if(DHT11_Get_TempHumi(&hum_dat, &temp_dat)){//讀取失敗
HAL_UART_Transmit(&huart1, (uint8_t *)&"DHT11 read failedrn", 20, 10); //串口1發(fā)送字符串,數(shù)組長(zhǎng)度為3,超時(shí)10ms
} else{//讀取正常
sprintf(str,"TUM=%dCrn",temp_dat);
HAL_UART_Transmit(&huart1, (uint8_t *)str, 20, 10);//串口1發(fā)送字符串,數(shù)組長(zhǎng)度為6,超時(shí)10ms
sprintf(str,"HUM=%d%%rn",hum_dat);
HAL_UART_Transmit(&huart1, (uint8_t *)str, 20, 10);//串口1發(fā)送字符串,數(shù)組長(zhǎng)度為6,超時(shí)10ms
}
//液晶顯示:T溫度 H濕度,
sprintf(data_str1,"T:%d H:%d n",temp_dat,hum_dat);//轉(zhuǎn)換溫度,濕度
LCD_ShowString(0,0,data_str1); //LCD1602顯示第一行
LCD_ShowString(1,0,data_str2); //LCD1602顯示第二行
memset(str,0,strlen(data_str1));
}
/* USER CODE END 3 */
}
4. 設(shè)計(jì)報(bào)告
9035字設(shè)計(jì)報(bào)告,內(nèi)容包括硬件設(shè)計(jì)、軟件設(shè)計(jì)、結(jié)論等。
隨著物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,環(huán)境參數(shù)監(jiān)測(cè)在農(nóng)業(yè)、倉(cāng)儲(chǔ)、智能家居等領(lǐng)域的需求日益增長(zhǎng)。溫濕度作為關(guān)鍵環(huán)境參數(shù),其精準(zhǔn)監(jiān)測(cè)與實(shí)時(shí)顯示對(duì)系統(tǒng)穩(wěn)定性至關(guān)重要。傳統(tǒng)溫濕度監(jiān)測(cè)設(shè)備存在功能單一、數(shù)據(jù)可視化不足等問(wèn)題,而基于STM32單片機(jī)的智能監(jiān)測(cè)系統(tǒng)可通過(guò)集成傳感器、顯示模塊和通信功能,實(shí)現(xiàn)低成本、高可靠性的環(huán)境監(jiān)測(cè)。
本設(shè)計(jì)以STM32F103C8T6單片機(jī)為核心,結(jié)合DHT11溫濕度傳感器、LCD1602液晶顯示屏及串口通信技術(shù),構(gòu)建一套實(shí)時(shí)監(jiān)測(cè)與遠(yuǎn)程數(shù)據(jù)傳輸系統(tǒng)。通過(guò)Proteus仿真驗(yàn)證系統(tǒng)功能,可為后續(xù)硬件開發(fā)提供理論依據(jù),具有學(xué)術(shù)研究?jī)r(jià)值和工程實(shí)踐意義。
5. 資料清單&下載鏈接
0、常見(jiàn)使用問(wèn)題及解決方法–必讀?。。?!
1、程序代碼
2、Proteus仿真
3、功能要求
4、開題報(bào)告
5、設(shè)計(jì)報(bào)告
6、講解視頻
7、框圖
8、串口調(diào)試助手
Altium Designer 安裝破解
KEIL+proteus 單片機(jī)仿真設(shè)計(jì)教程
KEIL安裝破解
Proteus元器件查找
Proteus安裝
Proteus簡(jiǎn)易使用教程
單片機(jī)學(xué)習(xí)資料
相關(guān)數(shù)據(jù)手冊(cè)
答辯技巧
設(shè)計(jì)報(bào)告常用描述
鼠標(biāo)雙擊打開查找嘉盛單片機(jī)51 STM32單片機(jī)課程畢業(yè)設(shè)計(jì).url
通過(guò)網(wǎng)盤分享的文件:KEY_C0118
鏈接: https://pan.baidu.com/s/1AMAi4jyA0L2iJsm7PB2mYw?pwd=vgyk
提取碼: vgyk