码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 基于51单片机的模拟心率电子脉搏器proteus仿真原理图PCB


    功能介绍:
    0.本系统采用STC89C52作为单片机
    1.系统可检测心率脉搏值,通过LCD1602液晶实时显示测量值
    2.心率脉搏超过设定阈值,蜂鸣器将报警
    3.四个功能按键可修改心率脉搏上下限阈值
    4.采用DC002作为电源接口可直接输入5V给整个系统供电
    5.实物中采用两个红外对管模拟心率,可以方便演示心率脉搏的高低变化

    原理图:

    在这里插入图片描述

    PCB :
    在这里插入图片描述

    主程序:

    #include 
    #include  //			 包含头文件
    
    #define uint unsigned int
    #define uchar unsigned char
    #define ulong unsigned long //宏定义
    #define LCD_DATA P0			//定义P0口为LCD_DATA
    
    sbit LCD_RS = P2^5;
    sbit LCD_RW = P2^6;
    sbit LCD_E = P2^7; //定义LCD控制引脚
    
    sbit HEART = P1^0; //脉搏检测输入端定义
    sbit BUZZER = P2^4; //蜂鸣器引脚定义
    
    void Delay5ms(void);													  
    void LCD_WriteData(uchar LCD_1602_DATA);								  /********LCD1602数据写入***********/
    void LCD_WriteCom(uchar LCD_1602_COM);									  /********LCD1602命令写入***********/
    void LCD_DispWord(uchar Adress_Com, uchar Num_Adat, uchar *Adress_Data); /*1602字符显示函数,变量依次为字符显示首地址,显示字符长度,所显示的字符*/
    void LCD_Init(); //初始化LCD
    void TIM_Init(); //初始化定时器
    
    uchar heartChange = 0; 
    uint heartCnt;
    uchar stopFlag;
    uchar View_Data[3];
    uchar View_L[3];
    uchar View_H[3];
    uchar heartH = 100; //脉搏上限
    uchar heartL = 40;  //脉搏下限
    
    uchar keyFlag;
    uchar keyValue; //按键键值
    uchar dispIndex;	 //设置的位(0正常工作,1设置上限,2设置下限)
    uchar dispFlag;
    
    void main() //主函数
    {
       
    	LCD_Init();
    	TIM_Init();
    	LCD_DispWord(0x80, 16, "Heart Rate:     "); //初始化显示
    	TR0 = 1;
    	TR1 = 1;  //打开定时器
    	while (1) //进入循环
    	{
       
    		if (dispFlag) //开始显示变量
    		{
       
    			dispFlag = 0
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
  • 相关阅读:
    每天五分钟机器学习:如何解决欠拟合问题
    【C++面向对象程序设计】类与对象的引入、this指针
    笔记本电脑自带录屏吗?笔记本电脑怎么录屏
    测试右移-后台服务监控告警实践
    镜头之滤光片---关于日夜两用双通滤光片
    前端开发之ES6(ECMAscript6)语法以及ES6++快速学习入门(前端必备了解知识)
    基于智能合约的银行借贷方案设计与实现
    LeetCode 897. 递增顺序搜索树
    【若依(ruoyi)】Java---如何在Apifox上传params参数--延伸--如何在Apifox上传Map类型参数
    LINUX常用操作命令大全(超级详细)
  • 原文地址:https://blog.csdn.net/jimo167913/article/details/127803609
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号