STM32测量甲醛(HAL库)

大三学生在实习中使用STM32C8T6开发板结合HAL库,设计并实现了一个甲醛检测系统。该系统包含LCD1602显示模块、ZE08-CH2O甲醛传感器、蜂鸣器及按键,能实时监测并显示甲醛浓度,超过预设阈值时发出警报。

一、设计介绍

现在大三,在学校附近找了一家实习公司做STM32开发,做了一个小的设计:使用STM32测量甲醛。用到的模块有STM32C8T6最小系统板,一个LCD1602液晶显示屏,一个ZE08-CH2O甲醛模组,还有蜂鸣器、按键、指示灯等。可以通过按键调整甲醛超标的阈值,当测量的甲醛值超过设置的阈值时,蜂鸣器会报警,相应的指示灯也会闪烁。
因为公司要求使用HAL库,就又学习了一下HAl库,发现STM32CobeMX这个软件再配合上HAL库用顺手之后还挺好用的。在学校实验室的时候一直使用的是ST官方的标准库,到公司了之后才接触HAl库。
在这里插入图片描述

/* Includes ------------------------------------------------------------------*/
#include "main.h"
#include "stm32f1xx_hal.h"
#include "LCD1602.h"
#include "deplay.h"
#include "usart.h"
#include "tim.h"
#include "gpio.h"
#include "memory.h"
/* USER CODE BEGIN Includes */

/* USER CODE END Includes */

/* Private variables ---------------------------------------------------------*/

/* USER CODE BEGIN PV */
/* Private variables ---------------------------------------------------------*/

/* USER CODE END PV */

/* Private function prototypes -----------------------------------------------*/
void SystemClock_Config(void);
void Error_Handler(void);
extern uint8_t aRxBuffer[3];
extern uint8_t memory_flag;


int main(void)
{
  HAL_Init();	
  /* Configure the system clock */
  SystemClock_Config();
	HAL_Delay(20);
	LCD1602_cls();
  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_TIM4_Init();
  MX_USART1_UART_Init();

  /* USER CODE BEGIN 2 */
	HAL_UART_Receive_IT(&huart1,&aRxBuffer[0],1); //开启接收数据
  HAL_TIM_Base_Start_IT(&htim4);   //启动定时器
  read_memory();//flash³õʼ»¯
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
 {
	 // HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET);
	dis_play(); 
	police_dispose();//
	if(memory_flag)
	{
		memory_flag=0;
		memory();
	}
  }
 

}

以上是main.c文件的代码,全部的文件夹我也会在下面分享给大家,感兴趣的朋友可以自行下载浏览
STM32测量甲醛(HAL库)文件下载链接

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值