【单片机毕业设计11-基于stm32c8t6的智能水质检测】

【单片机毕业设计11-基于stm32c8t6的智能水质检测】


前言

🔥这里是小殷学长,单片机毕业设计篇11基于stm32的智能水质检测系统

🧿创作不易,拒绝白嫖可私


一、功能介绍

------------------------------------------智能水质检测-----------------------------------------

1.OLED实时显示导电率 浑浊度 水温实时数据和阈值

2.通过按键进行阈值调节

3.通过蓝牙进行界面切换阈值处理

4.通过esp8266将数据上传Onenet云端平台

5.超过阈值蜂鸣器进行报警

6.语音进行参数调节和内容播报

功能可定制


🔥 实物展示

二、硬件部分

下面为该毕设中所用到的相关硬件说明,具体参数不做细节描述

c 复制代码
硬件材料
c 复制代码
PCB和原理图

三、软件部分

main.c部分代码

c 复制代码
int main(void)
 {	

	unsigned char *dataPtr = NULL; 
	unsigned short timeCount = 0;	//发送间隔变量
	delay_init();	    	   //延时函数初始化	  
	NVIC_Configuration();      //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
 	Led_Init();			      //LED端口初始化
	bspNTCAdcInit();          //adc初始化
	Beep_Init();             //蜂鸣器初始化
	KEY_Exit_Init();         //外部中断初始化
	TIM3_PWM_Init();         //定时器2初始化
	Init_Usart();            //串口初始化
	DS18B20_Init();          //DS18B20初始化
	OLED_Init();            //OLED初始化
	OLED_Clear(0);	          //清屏 
#if WIFI_START
	 delay_ms(500);
	 OLED_Clear(0);	          //清屏
	 Oled_WIFI();             //显示wifi连接
	 printf("wait wifi connect...\r\n");

	 ESP8266_Init();					//初始化ESP8266 
	//printf("8266_INIT_END\n");
	 while(OneNet_DevLink())			//接入OneNET
	 printf("接入onenet成功");
	 delay_ms(200);
#endif
	 OLED_Clear(0);	          //清屏
	 Interface_Init();        //主界面
	 Buzzer_Voice();          //开机蜂鸣器提示
	 Buzzer_Voice();
	while(1) 
	{	

		filter_data();
		Interface_Task(work_mode);             //界面处理任务
		Data_Task();                           //数据处理任务
		Logical_Task();                        //逻辑处理任务
		Usart_Task();                          //串口处理任务
		
#if WIFI_START
		if(++timeCount >= 150)		//时间间隔1s
		{
				OneNet_SendData();//发送数据给onenet	
				//printf("send_data_end\n");
				timeCount = 0;
				
				ESP8266_Clear();
		}	
		dataPtr = ESP8266_GetIPD(0);//获取平台返回的数据
		if(dataPtr != NULL)//如果返回数据不为空
			OneNet_RevPro(dataPtr);//平台返回数据检测		
		delay_ms(10);
		delay_ms(200);
#endif
	}
}

总结

c 复制代码
上面为基于stm32f103c8t6的智能水质检测系统相关的大致介绍,源码,pcb和原理图以及相关文档说明做了详细说明,有需可私

🧿创作不易,拒绝白嫖

相关推荐
码咔吧咔1 分钟前
DMA1和DMA2是什么?DMA总线与Dcode总线有区别?SDIO又是干嘛的,system干嘛的?总线矩阵干嘛的?
stm32·单片机·嵌入式硬件
The_superstar612 分钟前
视觉模块与STM32进行串口通讯(匠心制作)
stm32·嵌入式硬件·mongodb·计算机视觉·串口通讯·视觉模块
Dillon Dong26 分钟前
STM32嵌入式:如何使用VSCode EIDE来获取flash块数据并转换成可视化的数据 来判断源头数据是否错误
vscode·stm32·嵌入式硬件
DS小龙哥1 小时前
基于STM32设计的智能鞋柜【华为云IOT】
stm32·物联网·华为云
小灰灰搞电子1 小时前
STM32L4 使用低功耗串口唤醒休眠状态源码分享
stm32·单片机·嵌入式硬件
不脱发的程序猿1 小时前
SPI、DSPI、QSPI技术对比
单片机·嵌入式硬件·嵌入式
Arciab11 小时前
51单片机_数码管显示
单片机·嵌入式硬件·51单片机
qq_4017004111 小时前
FreeRTOS用事件组替代全局变量实现同步
单片机
zhongvv11 小时前
8位应广单片机与32位M0单片机开发差异总结
经验分享·单片机·嵌入式硬件
咸蛋-超人11 小时前
聊一聊 - STM32的堆和栈空间怎么分配
stm32·单片机·嵌入式硬件