您当前的位置:首页 >> 生活 >  >> 
电路方案:基于单片机的可语音播报的脉搏检测仪设计
来源: 与非网      时间:2023-08-07 14:03:35


(资料图)

设计功能:

光电传感器检测脉搏信号,并有脉搏信号指示灯; 2.具有温度检测功能,可检测人体温度,温度传感器为DS18B20; 3.脉搏和温度检测完成后,LCD1602会显示当前温度和脉搏数值; 4.增加语音播报功能,显示完成后可语音播报脉搏和温度数值; 5.按键可设置脉搏检测的安全范围;

6.超出所设安全范围时,蜂鸣器报警;

部分程序:

#include <> //调用单片机头文件#define uchar unsigned char //无符号字符型 宏定义 变量范围0~255#define uint unsigned int //无符号整型 宏定义 变量范围0~65535#include <>bit flag_300ms ;bit q;uchar menu_1=0; //菜单设计的变量sbit beep = P3^7; //蜂鸣器IO口定义uchar flag_200ms ;/***********************语音模块控制IO口的定义************************/sbit VRST = P2^4; sbit VBUSY= P2^0; sbit VSDA = P2^1; sbit VCS = P2^2; sbit VSCL = P2^3;uchar yujing[3];uchar code table_num[]="0123456789abcdefg";sbit rs=P1^0; //寄存器选择信号 H:数据寄存器 L:指令寄存器sbit rw=P1^1; //寄存器选择信号 H:数据寄存器 L:指令寄存器sbit e =P1^2; //片选信号 下降沿触发unsigned char i=0,timecount=0,displayOK=0,rate=0,aa=0;unsigned int time[6]={0};uchar rate_l=50,rate_h=120; //心跳报警值sbit dq = P3^3; //18b20 IO口的定义uint temperature ; ///***********************1ms延时函数*****************************/void delay_1ms(uint q){ uint i,j; for(i=0;i>= 1; } }/*************读取18b20内的数据***************/uchar read_18b20(){ uchar i,value=0; for(i=0;i<8;i++) { dq = 0; //把总线拿低读时间隙开始 value >>= 1; //读数据是低位开始 delay_uint(1); dq = 1; //释放总线 if(dq == 1) //开始读写数据 value |= 0x80; delay_uint(5); //60us 读一个时间隙最少要保持60us的时间 } return value; //返回数据}/*************读取温度的值 读出来的是小数***************/uint read_temp( ){ float tt=0; uint value;

需要完整的资料可以加入我的纷传圈子,里面有资源压缩包的百度网盘下载地址及提取码。

标签:

X 关闭

X 关闭