仿真图proteus 8.9
程序编译器:keil 5
编程语言:C语言
设计编号:C0086
讲解视频
1.主要功能
功能说明:
1、以STM32单片机和阻压式水位检测传感器设计水位监测控制报警设计;
2、通过液晶屏LCD1602和串口上位机显示水位高度,MV表示水位高度,ALM表示报警值;
3、可以通过按键设置水位ALM报警值大小。
4、监测水位低于报警值时蜂鸣器报警电路导通,蜂鸣器报警。拨动开关接通情况下,水泵转动抽水。
5、默认监测到水位低于150cm蜂鸣器报警。
主要硬件设备:STM32F103R6单片机 阻压式水位传感器
以下为本设计资料展示:
2.仿真
整体设计方案
本实验利用STM32单片机的ADC、GPIO、定时器等资源,将软、硬件有机地结合起来,使得系统能够正确地进识别输入模拟压阻式水位传感器的AD值,LCD1602能够正确地显示,蜂鸣器根据水位高度报警值工作。需注意的是,proteus是没有压阻式水位传感器的,本设计使用滑动变阻器模拟水位高度变化,不能直接用于实物设计,有需要的需跟据实物调试。
本测试如下所示:
仿真运行情况:
开始仿真后LCD1602实时显示检测到的水位高度,可以通过滑动变阻器改变测量值。可通过按键设置报警值浓度,按下设置键进入设置模式,通过设置+调高报警值,通过设置-调低报警值。蜂鸣器报警电路在水位高度低于报警值时启动,有嘟嘟报警声,低于不启动。
本设计采用电磁式蜂鸣器进行。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。
因此需要一定的电流才能驱动它,单片机I/O引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。
蜂鸣器的正极接到VCC(+5V)电源上面,蜂鸣器的负极接到三极管的集电极C,三极管的基极B经过限流电阻后由单片机的BEEP引脚控制,当BEEP输出低电平时,三级管QS截止,没有电流流过线圈,蜂鸣器不发声;当BEEP输出高电平时,三级管导通,这样蜂鸣器的电流形成回路,发出声音。
下图检测到水位高度是400cm,高于报警值150cm,蜂鸣器电路不工作。
3. 程序
程序是用keil5 mdk版本打开的,如果打开有问题,核实下keil的版本。程序是HAL库版本编写的,有注释可以结合讲解视频理解。
4. 资料清单&下载链接
0、常见使用问题及解决方法–必读!!!!
1、程序代码
2、Proteus仿真
3、功能要求
4、讲解视频
5、电阻式液位传感器
Altium Designer 安装破解
KEIL+proteus 单片机仿真设计教程
KEIL安装破解
Proteus元器件查找
Proteus安装
Proteus简易使用教程
单片机学习资料
相关数据手册
答辩技巧
设计报告常用描述
鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url
资料下载链接(可点击):
https://docs.qq.com/doc/DS0JCT0Fpd2F6TEJn
更多资源 点击下方链接:
https://docs.qq.com/sheet/DS0xIa0llTmtNakRW
微信公众号:嘉盛单片机
Fpd2F6TEJn
更多资源 点击下方链接:
https://docs.qq.com/sheet/DS0xIa0llTmtNakRW
微信公众号:嘉盛单片机
[外链图片转存中…(img-fNr3CwER-1716201572735)]