查看: 7383|回复: 6

连接ADS1292模拟前端芯片,使用SPI库,导致串口不输出数据

[复制链接]

9

主题

16

帖子

67

积分

注册会员

Rank: 2

积分
67
发表于 2021-9-25 17:05:28 | 显示全部楼层 |阅读模式

连接ADS1292模拟前端芯片,使用SPI库,导致串口不输出数据

QSJSBEZF83I8C907%$9.png

回复

使用道具 举报

27

主题

80

帖子

1044

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1044
发表于 2021-9-25 17:16:20 | 显示全部楼层
你可以直接复制代码放代码上来的,目前loop里的代码都没显示出来,另外这个是针对哪个芯片平台进行开发的,也在问题描述里注明下
回复

使用道具 举报

9

主题

16

帖子

67

积分

注册会员

Rank: 2

积分
67
 楼主| 发表于 2021-9-25 18:10:23 | 显示全部楼层

[quote][size=2][color=#999999]文涛 发表于 2021-9-25 17:16[/color][/size] 你可以直接复制代码放代码上来的,目前loop里的代码都没显示出来,另外这个是针对哪个芯片平台进行开发的, ...[/quote]

#include <arduino.h>
#include "protocentralAds1292r.h"
#include "ecgRespirationAlgo.h"
#include <SPI.h>

volatile uint8_t globalHeartRate;
volatile uint8_t globalRespirationRate=0;

const int ADS1292_DRDY_PIN = 26;
const int ADS1292_CS_PIN = 13;
const int ADS1292_START_PIN = 14;
const int ADS1292_PWDN_PIN = 27;

int16_t ecgWaveBuff, ecgFilterout;
int16_t resWaveBuff,respFilterout;

long timeElapsed=0;

ads1292r ADS1292R;
ecg_respiration_algorithm ECG_RESPIRATION_ALGORITHM;

void setup()
{
delay(2000);

SPI.begin();
SPI.setBitOrder(MSBFIRST);
//CPOL = 0, CPHA = 1
SPI.setDataMode(SPI_MODE1);
// Selecting 1Mhz clock for SPI
SPI.setClockDivider(SPI_CLOCK_DIV16);

pinMode(ADS1292_DRDY_PIN, INPUT);
pinMode(ADS1292_CS_PIN, OUTPUT);
pinMode(ADS1292_START_PIN, OUTPUT);
pinMode(ADS1292_PWDN_PIN, OUTPUT);
Serial.begin(9600);

ADS1292R.ads1292Init(ADS1292_CS_PIN,ADS1292_PWDN_PIN,ADS1292_START_PIN);  //initalize ADS1292 slave
Serial.println("Initiliziation is done");
}

void loop()
{
ads1292OutputValues ecgRespirationValues;
boolean ret = ADS1292R.getAds1292EcgAndRespirationSamples(ADS1292_DRDY_PIN,ADS1292_CS_PIN,&ecgRespirationValues);

if (ret == true)
{
ecgWaveBuff = (int16_t)(ecgRespirationValues.sDaqVals[1] >> 8) ;  // ignore the lower 8 bits out of 24bits
resWaveBuff = (int16_t)(ecgRespirationValues.sresultTempResp>>8) ;

if(ecgRespirationValues.leadoffDetected == false)
{
ECG_RESPIRATION_ALGORITHM.ECG_ProcessCurrSample(&ecgWaveBuff, &ecgFilterout);   // filter out the line noise @40Hz cutoff 161 order
ECG_RESPIRATION_ALGORITHM.QRS_Algorithm_Interface(ecgFilterout,&globalHeartRate);// calculate

//disable below 2 lines if you want to run with arduino uno. (arduino uno does not have the memory to do all processing together)
respFilterout = ECG_RESPIRATION_ALGORITHM.Resp_ProcessCurrSample(resWaveBuff);
ECG_RESPIRATION_ALGORITHM.RESP_Algorithm_Interface(respFilterout,&globalRespirationRate);

}else{

ecgFilterout = 0;
respFilterout = 0;
}

if(millis() > timeElapsed)  // update every one second
{
if(ecgRespirationValues.leadoffDetected == true) // lead in not connected
{
Serial.println("ECG lead error!!! ensure the leads are properly connected");
}else{

Serial.print("Heart rate: ");
Serial.print(globalHeartRate);
Serial.println("BPM");
Serial.print("Respiration Rate :");
Serial.println(globalRespirationRate);
}
timeElapsed += 1000;
}
}
}
回复

使用道具 举报

27

主题

80

帖子

1044

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1044
发表于 2021-9-25 18:22:02 | 显示全部楼层

下次请使用markdown的代码块放代码,不然格式很乱简直没法看
回复

使用道具 举报

9

主题

16

帖子

67

积分

注册会员

Rank: 2

积分
67
 楼主| 发表于 2021-9-26 14:53:05 | 显示全部楼层
文涛 发表于 2021-9-25 18:22
下次请使用markdown的代码块放代码,不然格式很乱简直没法看

下次注意,请问这是什么原因导致串口输不出数据呢
回复

使用道具 举报

27

主题

80

帖子

1044

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1044
发表于 2021-9-29 21:55:05 | 显示全部楼层
biubiu 发表于 2021-9-26 14:53
下次注意,请问这是什么原因导致串口输不出数据呢

没ADS1292这个东东,没法测试,确定这个可以用以及能运行至你写的那个串口输出的程序里?
回复

使用道具 举报

27

主题

80

帖子

1044

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1044
发表于 2021-9-29 21:55:07 | 显示全部楼层
biubiu 发表于 2021-9-26 14:53
下次注意,请问这是什么原因导致串口输不出数据呢

没ADS1292这个东东,没法测试,确定这个可以用以及能运行至你写的那个串口输出的程序里?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

Stduino IDE一款高效、快速开发Stduino stm32 arm的工具
Stduino IDE一款高效、快
开发Stduino软硬件原因 想学STM32的32位ARM单片机,但不想读厚厚的技术文档, 不想记
Stduino 零基础入门课程系列(五) 实验三:按键输入
Stduino 零基础入门课程系
Hello!各位同学大家好~上节课我们利用管脚输出高低电平信号,控制LED的亮灭,那么我
Stduino小白练习第六弹--按键控制串口通信
Stduino小白练习第六弹--
2020/01/08 星期三 作者:Astilbe 问题:我们如何通过按下按键来传输固定的信息给PC呢
37种传感器(二十九)MPU6050陀螺仪模块+Stduino Nano&UNO
37种传感器(二十九)MPU6
StduinoUno /纳米37种传感器(二十九)六轴 MPU陀螺仪模块关键词: 51 ; stm32 ; ar
stm32 最小系统 小蓝板 LED闪烁灯(三),无需刷Bootloader
stm32 最小系统 小蓝板 LE
关键词:stm32 小蓝板 STM32F103C8T6 Stduino IDE Stduino Nano LED闪烁灯 通过Stduin
Stduino IDE软件下载专区
Stduino IDE软件下载专区
Stduino IDE软件下载专区 Windows版:7月29号发布1.01, 现可
今天在文涛老大的帮助下我的stm32zet6终于把simlpefoc库跑起...
今天在文涛老大的帮助下我
[md]首先本身是刚刚从MDK转到arduino过来的新人,只因为要完开源的simplefoc,期间由
©2001-2018  Stduino官网  Powered by©Discuz!   ( 皖ICP备17011998号 )
快速回复 返回顶部 返回列表