基于stm32的智能婴儿床(毕业设计)
整体图(最后有视频演示)
设备功能说明
检测床内温度,检测婴儿状态,配置RTC实时时间,电机PWM按键三档调速,自动开关加热器,发送温度到手机终端,把所有要呈现的状态通过OLED屏幕显示
元件清单
主控 stm32f103c8t6
导线 若干根
OLED显示屏 一个
VCC-3.3/5V GND-GND SCL-单片机SCL脚 SDA-单片机SDA脚
轻触按键 三个
对脚连接 一脚接GND 一脚接VCC
一路5v继电器模块 一个
上面口VCC-5V GND-GND PIN-单片机信号脚
下面口选择常开/常闭连接负载
L298N电机驱动板模块 一个
接法如下 由于不用配置正反转可以四个口随便接 只是用来驱动电机的作用(需要与单片机共地)
MAX声音传感模块 一个
VCC接5VGND-GND OUT接信号脚
Jdy-311蓝牙模块
接法 VCC GND接5V的源 TXD接单片机RXD RXD接单片机TXD
DS18b20传感器 一个
从左到右 GND OUT VCC 连接单片机
4.7K贴片电阻 一个
四针排组两个
三针排组一个
四针弯形弯型排组一个(小器件不配图)
程序部分 (附带注释)
main.c函数
int main(void){ u8 ccc=99;//测试值u8 a;u8 key=0;u16 led0pwmval=0;u8 dir=1; u8 t=0; short temperature; u8 humidity;//以上都为用作判断的变量定义delay_init(); //延时函数初始化NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级 LED_Init();//delay_ms(8000);uart_init(9600);//串口初始化 波特率为9600OLED_Init(); //初始化OLEDOLED_Clear(); //清屏KEY_Init(); //按键初始化TIM3_PWM_Init(899,0);//定时器3PWM初始化LED_Init();//io口初始化usmart_dev.init(SystemCoreClock/1000000); //初始化USMARTRTC_Init();//时钟初始化ADC_Configuration1();//adc配置TIM_SetCompare2(TIM3,500);//占空比设置OLED_ShowCHinese(0,0,1);//oled显示文字OLED_ShowCHinese(18,0,15);OLED_ShowCHinese(36,0,16);OLED_ShowCHinese(54,0,17);OLED_ShowCHinese(110,0,6);OLED_ShowCHinese(0,2,11);OLED_ShowCHinese(18,2,12);OLED_ShowCHinese(36,2,13);OLED_ShowCHinese(54,2,14);OLED_ShowCHinese(0,4,18);OLED_ShowCHinese(18,4,19);OLED_ShowCHinese(36,4,20);OLED_ShowCHinese(54,4,21);//OLED_ShowCHinese(32,6,22);//OLED_ShowCHinese(60,6,23);OLED_ShowCHinese(108,4,26);while(DS18B20_Init())//等待ds18b20初始化完成{delay_ms(200);delay_ms(200);delay_ms(200);}// while(DHT11_Init())
// {// delay_ms(200);
// delay_ms(200);
// }while(1){ if(t%10==0) //每100ms读取一次{ temperature=DS18B20_Get_Temp(); OLED_ShowNum(70,0,temperature/10,2,16); //显示温度//USART_SendData(USART1,ccc);printf("%d",temperature);//把温度通过串口发出if(temperature/10<23)//温度低于23摄氏度 打开加热器GPIO_ResetBits(GPIOB,GPIO_Pin_7);if(temperature/10>=30)//温度高于等于30摄氏度 关闭加热器GPIO_SetBits(GPIOB,GPIO_Pin_7); //OLED_ShowString(85,0,".",16); OLED_ShowNum(90,0,temperature%10,2,16);} delay_ms(10);t++;if(t==20){t=0;}if(a!=calendar.sec)//RTC实时时间显示{a=calendar.sec;
// LCD_ShowNum(60,130,calendar.w_year,4,16);OLED_ShowNum(0,6,calendar.w_year,4,16);OLED_ShowString(30,6,".",16); OLED_ShowString(30,6,".",16);
// LCD_ShowNum(100,130,calendar.w_month,2,16);OLED_ShowNum(33,6,calendar.w_month,1,16);OLED_ShowString(50,6,".",16);
// LCD_ShowNum(123,130,calendar.w_date,2,16);// OLED_ShowString(72,6,".",16);OLED_ShowNum(53,6,calendar.w_date,2,16);
// LCD_ShowNum(60,162,calendar.hour,2,16);OLED_ShowString(70,6,".",16); OLED_ShowNum(73,6,calendar.hour,2,16);// LCD_ShowNum(84,162,calendar.min,2,16);OLED_ShowNum(93,6,calendar.min,2,16);OLED_ShowString(88,6,".",16);
// LCD_ShowNum(108,162,calendar.sec,2,16);OLED_ShowString(108,6,".",16); OLED_ShowNum(113,6,calendar.sec,2,16);
// LED0=!LED0;} delay_ms(10); AD_value = ADC_ConvertedValue;AD_value = (AD_value/4096)*3.3;//算法得到电压值
// printf("The current Sound AD value = %4.2fV \r\n", AD_value);if(AD_value>=2)//通过转化而来电压值判断婴儿状态{OLED_ShowCHinese(90,2,31);OLED_ShowCHinese(108,2,32);delay_ms(200);}if(AD_value<2){OLED_ShowCHinese(90,2,29); OLED_ShowCHinese(108,2,30);}
所有代码微信公众号免费分享
下面进行视频展示
基于stm32f103的智能婴儿车设备
基于stm32的智能婴儿床(毕业设计)相关推荐
- 【毕业设计】基于STM32的智能路灯设计与实现 - 物联网 嵌入式 单片机
文章目录 1 简介 2 绪论 2.1 项目背景 2.2 需求分析 3 系统设计 3.1 功能设计 3.1.1 系统角色分析 3.1.2 开发环境 3.2 总体设计 3.3 硬件部分 3.3.1 整体架 ...
- 【毕业设计】基于stm32的智能水杯 - 恒温控制 饮水杯 单片机 物联网 嵌入式
文章目录 0 简介 1 项目介绍 2 系统设计 3 恒温控制实现 3.1 功能描述 3.2 PID算法原理 3.2.1 P:比例 3.2.2 I:积分 3.2.3 D:微分 3.3 温控代码实现 4 ...
- 基于STM32单片机智能手表GSM短信GPS定位设计(毕业设计资料)
本设计由STM32单片机+LCD1602液晶显示电路+GPS模块+GSM模块+按键电路+LED灯电路+电源电路组成. 1.液晶1602显示时钟,带日期,且可以显示经纬度信息,两个信息通过一个按键切换 ...
- 基于STM32单片机智能RFID刷卡汽车位锁设计(开题报告)
基于STM32单片机智能RFID刷卡汽车位锁设计(开题报告) 文章目录 基于STM32单片机智能RFID刷卡汽车位锁设计(开题报告) 一.课题的背景及意义 二.国内外研究状况: 三.系统功能分析及体系 ...
- 吴海燕C语言真题,基于APP的智能婴儿床系统的设计与实现开题报告
一.毕业设计(论文)题目的来源.理论.应用或实际意义 1.题 目:基于APP的智能婴儿床系统的设计与实现 2.题目来源:生产实践 3.意 义:随着现代科技的进步飞快.生活质量的不断提高,对 ...
- 基于数字电路交通灯信号灯控制系统设计-基于单片机病房温度监测与呼叫系统设计-基于STM32的无线蓝牙心电监护仪系统设计-基于STM32的智能蓝牙温控风扇控制设计-基于STM32的智能温室控制系统设计
1617基于数字电路交通灯信号灯控制系统设计(仿真电路,论文报告) 摘 要:交通灯控制系统在城市交通控制中发挥着重要的作用,本次课程设计就是以城市交通灯控制系统为背景的,主要通过运用学过的数字电路 ...
- 基于STM32的智能巡检小车系统设计--选材篇
基于STM32的智能巡检小车系统设计--选材篇 作者:车 邮箱:692604135@qq.com 学校:西安工程大学硕士研究生 方向:机器视觉.图像分割.深度学习 本人毕业设计题目是基于STM32的智 ...
- 智能手环功能模块设计_基于STM32实现智能手环设计
龙源期刊网 http://www.qikan.com.cn 基于 STM32 实现智能手环设计 作者:付海生 陈婷婷 韩百科 涂曾兵 来源:<科学导报 · 学术> 2017 年第 10 期 ...
- stm32的语音识别_免费开源基于STM32的智能垃圾桶之舵机控制(HAL库)
大家好,我是『芯知识学堂』的SingleYork,前面给大家简单介绍了<基于STM32的智能垃圾桶之成员简介>.<基于STM32的智能垃圾桶之语音识别>和<基于STM32 ...
最新文章
- html单行注释符号
- Kubernetes Helm入门指南
- js php 中文乱码怎么解决_探讨PHP JSON中文乱码的解决方法详解
- hibernate查询缓存_Hibernate查询缓存如何工作
- 湖北2018年GDP同比增长7.8% 进出口增速有所回升
- 数据结构与算法 —— 链表linked list(05)
- svn删除远程文件和忽略文件
- windows 10 彻底卸载windows 易升
- 微信小程序_for循环
- php完美pdo类封装,PDO类的封装
- ARF 笔记 (NeRF的风格化)
- Java(等级划分)
- Jenkins使用问题记录
- php反序列化--字符串逃逸
- CMMI——认证流程
- OmniGraffle-绘制流程图
- Orace数据库将子集字符集转换为超集字符集操作方法,很详细
- 设计模式总结-结构型模式
- 关于项目报告的写法问题
- linux invalid argument_Linux | 那些年学习Linux你被坑过的故障集合
热门文章
- <第2.5个月>新店日记,shopee要投入多少钱?利润怎么样能赚钱吗好做吗?shopee孵化期考核
- 如何设置通知区域图标不显示?
- 511遇见易语言子程序参考的作用
- css 细线表格,如何在Dreamweaver中制作细线表格?
- 自己追加内存【注意事项】
- Java计算机毕业设计糖果销售管理系统源码+系统+数据库+lw文档
- 圆形数字时钟同时显示数字时钟、日期和星期特效
- 登录页面(含后台)login.php
- 互联网”还是“技术”?派系分明的电子烟市场
- 记录win10突然卡死,只有鼠标能动,无法点击,大小写灯失效,只能强制关机