资讯详情

ADS1191心电采集系统设计方案

ADS1191心电采集系统设计方案

  • 一、硬件电路设计
    • (一)、ADS1191的电源和地
    • (二)、ADS1191的时钟电路
    • (三)、ADS1191的SPI相关引脚配置
    • (四)、ADS1191的GPIO相关引脚配置
    • (五)、PWDN#/RESET#引脚
    • (六)、START开始转换引脚
  • 软件SPI编程测试

一、硬件电路设计

(一)、ADS1191的电源和地

ADS1191支持两种电源模式:单电源模式和双电源模式(芯片手册53页)。具体区别也应该是芯片内部集成运输的区别。需要补充两种电源模式的优缺点……。(参考电路采用单电源模式,模仿为上) 单电源模式框图: 在这里插入图片描述

使用立创EDA阶段性原理图:

(二)、ADS1191的时钟电路

ADS1191提供内部时钟振荡器和外部时钟两种不同的设备时钟方法。内部时钟非常适合低功耗和电池供电系统。

时钟选择由CLKSEL引脚和CLK_EN控制寄存器位置。

在使用 外部时钟 时,将降低,从外部时钟引脚输入。 在使用 内部时钟振荡器 时,将此时,如果寄存器中的时钟使能位CLK_EN为1,则在CLK引脚输出内部时钟;如果时钟使能位CLK_EN为0,则CLK引脚为3-state(不定态?高阻态? 对于CLK猜测引脚时钟的输出功能:SPI多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:多从机有两种实现方法:NSS和。多NSS在这种方式下,每个从机可以由主机统一提供时钟信号。在菊花链中,使用每个从机CLK引脚输出外部时钟,为下一个从机提供时钟信号,更符合菊花链的特点。

在这里,只有一个从机ADS因此,使用内部时钟(将CLKSEL引脚拉高)并编程使能位在寄存器中的时钟CLK_EN置为0。 使用内部时钟(将CLKSEL引脚拉高)的具体操作是,CLKSEL引脚通过10k将电阻拉到数字上VDD。从上表可以看出,在此时钟模式下,CLK引脚为3-state,引脚电平状态不能确定,所以参考其他设计,CLK引脚经过10k低电阻下拉。

(三)、ADS1191的SPI相关引脚配置

基本SPI引脚 ADS1191原理图基础SPI有四个引脚:CS#、SCLK、DIN和DOUT。 传统分别对应SPI协议里的SS、SCLK、MOSI、MISO。

MISO: Master input slave output 主机输入,从机输出(数据来自从机); MOSI: Master output slave input 主机输出,从机输入(数据来自主机); SCLK :Serial Clock 串行时钟信号由主机发送到从机; SS: Slave Select 片选信号,由主机发送,以控制与哪个从机通信,通常是低电平有效信号。

拓展SPI引脚 DRDY#引脚是数字输出引脚。当它变低时,指示准备好新的转换数据。 原理图采用网络标号,便于与单片机连接。

(四)、ADS1191的GPIO相关引脚配置

GPIO即General-purpose input/output。根据芯片手册,类似于MCU普通引脚,即通过编程输出高低电平,或读取引脚的外部电平状态。不使用时,需要下拉到数字地面。

(五)、PWDN#/RESET#引脚

PWDN#/RESET# 引脚可理解为硬件复位引脚,低电平有效。ADS1191也可以通过软件复位,所以把引脚拉到上面DVDD。

(六)、START开始转换引脚

类似于复位引脚,可以通过软件复位,软件复位更灵活。高电平有效,所以将引脚拉到数字地面。



软件SPI编程测试

时序图:

#define CS P10 #define SCLK P11 #define MOSI P12 #define MISO P13  unsigned char SPI_Byte(unsigned char SendByte) { 
          unsigned char i,RecByte = 0x00;      CS = 0;  //拉低片选,开始SPI数据传输  SCLK = 0; //SCLK空闲状态为低电平    for(i=8;i>0;i--)
	{ 
        
		SCLK = 0;
		Delay10us();  //延时一会维持低电平,保证一定的周期
		RecByte <<= 1;  //数据接收时最高位在前
		if(MISO)			
			RecByte |= 0x01;
		SCLK = 1; 
			  
		if((SendByte&0x80) == 0x80)  MOSI = 1; //数据发送时最高位在前
		else   MOSI = 0;
		SendByte <<= 1;
		Delay10us();  //延时一会维持高电平,保证一定的周期
		SCLK = 0;
	}
	
	return RecByte;
}

发送字节SendByte=0xAA时,SCLK和MOSI的波形:

发送字节SendByte=0x4C时,SCLK和MOSI的波形:

   

ADI的SPI接口简介 SPI的数据交换的动态图 参考 参考

标签: ads7825p集成电路

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台