Ardunio单片机读取HKH-11C呼吸传感器(并通过电脑串口打印)

1.查看说明
在这里插入图片描述

2.流程
1)Aduino单片机给呼吸传感器传感器发送0xFF,0xCC,0x03 CKSUM 0xA0启动呼吸传感器
在这里插入图片描述

CKSUM(第四位):是一个校验的数值,这里就是0x03 + 0xA0 = 0xA3 ,所以CKSUM=0xA3
1.
传感器给arduino返回应答数据:0xFF,0xCC,0x05,CKSUM,0xA0,MBH,MBL

CKSUM(第四位):与上面同,也是一个校验的数值,这里就是0x05 + 0xA0 = 0xA5 ,所以CKSUM=0xA5,在程序中可以加一个判断。如果第四位等于0xA5说明程序没问题。
MBH,MBL:是呼吸的数据,分为低八位和高八位,最后要合成一个数据即为呼吸的数据
1.
引脚连接
在这里插入图片描述

单片机 呼吸传感器
2------->TX
3------->RX
GND ------> GND
5V -------> 5V

1. arduino单片机程序编写

在这里插入图片描述

在这里插入图片描述

#include<SoftwareSerial.h>
SoftwareSerial softSerial(3, 2);
int H=0;
int L=0;
int data;
int pin=4;//方波输出引脚
void setup() {
  //初始化serial,该串口用于与计算机连接通信:
  Serial.begin(9600);
  //初始化serial1,该串口用于与设备B连接通信;
  softSerial.begin(115200);
  softSerial.listen();
  //注意write!!!
  softSerial.write(0xFF);
  softSerial.write(0xCC);
  softSerial.write(0x03);
  softSerial.write(0xA3);
  softSerial.write(0xA0);
  pinMode(pin, OUTPUT);      // 将4脚设置为输出
}
void loop() {
 
  delay(100);
  //Serial.println(softSerial.read());
  for(int i=0;i<7;i++){
    //Serial.println(softSerial.read());  //0 ,255
    if(i==5){
      //Serial.println("hhhh");  //hhh
      H=softSerial.read();
      //Serial.println(H);   //0
    }
   else if(i==6){
      //Serial.println("LLLL");// ,lll
      L=softSerial.read();
      //Serial.println(L);
    }
    else
    {
      //Serial.println(softSerial.read());
      softSerial.read();
    }
  }
  //Serial.println("____");
  data=(H << 8) | L;
  if(-1<data && data<1050){
    Serial.println(data);
  }
  //Serial.println("______________________");
 
  /*
  H = 1;
  L = 1;
  data = (short) (H << 8) | L;
  Serial.println(data);
  */
  if(data > 500){
    digitalWrite(pin, 1);
    }else{
     digitalWrite(pin, 0);
      }
 
}

装换成方波,测方波的频率,间接测出呼吸的频率

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值