• 方案介紹
    • 1. 主要功能
    • 2.仿真
    • 3. 程序
    • 4. 設(shè)計報告
    • 5. 資料清單&下載鏈接
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

基于STM32的DS18B20溫度遠(yuǎn)程監(jiān)測LCD1602顯示

17小時前
236
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

設(shè)計資料獲取聯(lián)系方式.doc

共1個文件

基于STM32的DS18B20溫度遠(yuǎn)程監(jiān)測LCD1602顯示Proteus仿真設(shè)計(仿真+程序+設(shè)計報告+講解視頻)

仿真圖proteus 8.9

程序編譯器:keil 5

編程語言:C語言

設(shè)計編號:C0117

1. 主要功能

基于STM32單片機(jī)的溫度測量系統(tǒng)LCD1602顯示Proteus仿真設(shè)計

1、STM32單片機(jī)實(shí)時檢測DS18B20溫度測量,溫度測量范圍-55到128℃,測量精度±0.1℃;

2、串口實(shí)時傳輸檢測溫度給電腦串口調(diào)試助手,以此實(shí)現(xiàn)遠(yuǎn)程監(jiān)測;

3、LCD1602實(shí)時顯示監(jiān)測到的溫度;

STM32單片機(jī) DS18B20 LCD1602

資料下載鏈接(可點(diǎn)擊):

通過網(wǎng)盤分享的文件:KEY_C0117

鏈接: https://pan.baidu.com/s/1IlOFlIM-m6ZiV_PhHbaMSw?pwd=a6pq

提取碼: a6pq

2.仿真

打開仿真工程,雙擊proteus中的單片機(jī),選擇hex文件路徑,然后開始仿真。

開始仿真后串口調(diào)試助手顯示溫度檢測值,LCD1602第一行顯示溫度檢測值38.2℃

img

3. 程序

程序是用keil5 mdk版本打開的,如果打開有問題,核實(shí)下keil的版本。程序是HAL版本編寫的,有stm32cubemx配置文件。有注釋可以結(jié)合講解視頻理解。

軟件流程框圖:

img

int main(void)
{
  /* USER CODE BEGIN 1 */

	char data_str1[20]; 
//	char data_str2[20]; 
	char data_str2[]="                ";
	float temp;
	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測溫實(shí)驗(yàn)nr");
	HAL_UART_Transmit(&huart1, (uint8_t *)&"DS18B20rn", 10, 10);						//串口1發(fā)送字符串,數(shù)組長度為10,
	
	LCD_Init();																																//LCD1602初始化

//	DS18B20_Get_Temp();
//	HAL_TIM_Base_Start_IT(&htim2);  //初始化定時器

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {

    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
		HAL_Delay(500);
		temp=DS18B20_Get_Temp();//獲取溫度值
  	    sprintf(str,"%0.1f",temp);
		if(temp==-0.0){
			temp=DS18B20_Get_Temp();//獲取溫度值
		}
		HAL_UART_Transmit(&huart1, (uint8_t *)str, 6, 10);								//串口1發(fā)送字符串,數(shù)組長度為6,超時10ms
		HAL_UART_Transmit(&huart1, (uint8_t *)&"Crn", 3, 10);						//串口1發(fā)送字符串,數(shù)組長度為3,超時10ms	
		memset(str,0,strlen(str));	

	  sprintf(data_str1,"temp=%4.1f     n",temp);					//寫字符到data_str1
		data_str1[10]=0xdf;
		data_str1[11]='C';
		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è)計報告

9855字設(shè)計報告,內(nèi)容包括硬件設(shè)計、軟件設(shè)計、結(jié)論等。

img

隨著物聯(lián)網(wǎng)嵌入式技術(shù)的快速發(fā)展,溫度監(jiān)測系統(tǒng)在工業(yè)控制、農(nóng)業(yè)環(huán)境監(jiān)測、智能家居等領(lǐng)域需求日益增長。傳統(tǒng)溫度監(jiān)測系統(tǒng)存在精度低、顯示方式單一、數(shù)據(jù)交互性差等問題。本設(shè)計基于STM32單片機(jī),結(jié)合DS18B20高精度溫度傳感器和LCD1602液晶顯示屏, 通過Proteus仿真實(shí)現(xiàn)一套低成本、高可靠性的溫度報警系統(tǒng)

通過本次設(shè)計,我們希望能夠提高對單片機(jī)的理解和應(yīng)用能力。通過實(shí)踐和探索,我們希望能夠掌握相關(guān)的硬件和軟件設(shè)計方法,為今后的學(xué)習(xí)和工作打下堅(jiān)實(shí)的基礎(chǔ)。同時,我們也希望能夠通過這次設(shè)計,培養(yǎng)我們的團(tuán)隊(duì)協(xié)作能力和創(chuàng)新精神。

5. 資料清單&下載鏈接

img

0、常見使用問題及解決方法–必讀?。。。?/p>

1、程序代碼

2、Proteus仿真

3、功能要求

4、開題報告

5、設(shè)計報告

6、講解視頻

7、框圖

8、串口調(diào)試助手

Altium Designer 安裝破解

KEIL+proteus 單片機(jī)仿真設(shè)計教程

KEIL安裝破解

Proteus元器件查找

Proteus安裝

Proteus簡易使用教程

單片機(jī)學(xué)習(xí)資料

相關(guān)數(shù)據(jù)手冊

答辯技巧

設(shè)計報告常用描述

鼠標(biāo)雙擊打開查找嘉盛單片機(jī)51 STM32單片機(jī)課程畢業(yè)設(shè)計.url

通過網(wǎng)盤分享的文件:KEY_C0117

鏈接: https://pan.baidu.com/s/1IlOFlIM-m6ZiV_PhHbaMSw?pwd=a6pq

提取碼: a6pq

  • 設(shè)計資料獲取聯(lián)系方式.doc
    下載

相關(guān)推薦

方案定制

去合作
方案開發(fā)定制化,2000+方案商即時響應(yīng)!