搜档网
当前位置:搜档网 › ADS1115原理图

ADS1115原理图

设计报告——温控电路设计

温控电路设计 报告书 姓名: 学校: 专业: 完成日期:2014/05/16

目录 1.设计要求 (1) 2.总体设计方案 (1) 2.1原理分析 (1) 2.2功能模块的实现 (1) 2.2.1控制模块 (1) 2.2.2温度采集模块 (1) 3.控制程序设计 (2) 3.1程序流程图 (2) 3.2程序模块说明 (2) 附录 (3) 1.主函数 (3) 2.ADS1115驱动程序 (6) 3.原理图 (13)

1.设计要求 设计一个温度测量电路,根据设定温度和测量值比较实现以下控制: 定义: 设定温度:ST(单位℃) 测量温度:T(单位℃) 控制逻辑要求: 当ST> T+2时,继电器闭合(如果当前继电器为断开状态,并且断开时间不够3分钟,不允许闭合); 当ST

ADS1115数据手册中文翻译

9.3功能说明 9.3.1多路复用器 9.3.2模拟输入 9.3.3满量程(FSR)和LSB大小 9.3.4参考电压 9.3.5振荡器 9.3.6数字比较器(仅ADS1114和ADS1115) 9.3.7转换就绪引脚(仅适用于ADS1114和ADS1115) 9.3.8 SMbus警报响应 9.4设备功能模式 9.4.1复位和上电 9.4.2操作模式 9.4.3低功耗的Duty Cycling 9.5编程 9.5.1 I2C接口 9.5.2从模式操作 9.5.3写入和读取寄存器 9.5.4数据格式 9.6Register Map 9.6.1地址指针寄存器(地址= N / A)[reset = N / A] 9.6.2转换寄存器(P [1:0] = 0h)[reset = 0000h] 9.6.3配置寄存器(P [1:0] = 1h)[reset = 8583h] 9.6.4 Lo_thresh(P [1:0] = 2h)[reset = 8000h]和Hi_thresh(P [1:0] = 3h)[reset = 7FFFh] 10应用与实施 10.1申请信息 10.1.1基本连接 10.1.2单端输入 10.1.3输入保护 10.1.4未使用的输入和输出 10.1.5模拟输入滤波 10.1.6连接多个设备 10.1.7快速入门指南 9.3功能说明 9.3.1多路复用器 ADS1115包含输入多路复用器(MUX),如图25所示。可以测量四个单端或两路差分信号。另外,AIN0和AIN1可以与AIN3差分测量。多路复用器由Config寄存器中的MUX [2:0]位组成。当测量单端信号时,ADC的负输入通过多路复用器内的开关内部连接到GND。

stm32用硬件i2c读取16位AD:ADS1115

#include "stm32f10x.h" #include "math.h" #include "delay.c" //包含delay_us(--); delay_ms(--); unsigned char BUF[8]; //----------结构体声明-------------------------------// void RCC_Configuration(void) //打开各个模块时钟 { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE); RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1, ENABLE); } //----------------------------------------// void I2C_Configuration(void) //硬件iic初始化 { I2C_InitTypeDef I2C_InitStructure; I2C_InitStructure.I2C_Mode = I2C_Mode_I2C; I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2; I2C_InitStructure.I2C_OwnAddress1 = 0xA0; I2C_InitStructure.I2C_Ack = I2C_Ack_Enable; I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit; I2C_InitStructure.I2C_ClockSpeed = 100000; I2C_Cmd(I2C1, ENABLE); I2C_Init(I2C1, &I2C_InitStructure); } //-----------------------------------------------------------------// void USART2_Configuration(void) //串口配置初始化:USART2 { USART_InitTypeDef USART_InitStructure; USART_https://www.sodocs.net/doc/0c7440527.html,ART_BaudRate = 14400; USART_https://www.sodocs.net/doc/0c7440527.html,ART_WordLength = USART_WordLength_8b; USART_https://www.sodocs.net/doc/0c7440527.html,ART_StopBits = USART_StopBits_1; USART_https://www.sodocs.net/doc/0c7440527.html,ART_Parity = USART_Parity_No; USART_https://www.sodocs.net/doc/0c7440527.html,ART_HardwareFlowControl =USART_HardwareFlowControl_None;

基于51的ads1115程序编写

/*------------------------------------------------------------------------------------------------------------------------------------------*/ /*--*************************功能:【ADS1115单端输入检测电压】********************--*/ /*--*************************CPU:【STC12C5A60S2】*******************************--*/ /*--*************************ADC芯片:【ADS1115(2差分输入或4单端输入)】***********--*/ /*--*************************液晶:【LCD1602】************************************--*/ /*--*************************ADC与单片机连接:【SCL:P1.0 , SDA:P1.1】*******************--*/ /*--*************************检测范围:【0.00~4.99V】*********************************--*/ /*----------------------------------------------------------------------------------------------------------------------------------------*/ #include #include #define uint unsigned int #define uchar unsigned char #define _Nop() _nop_() /*------------------------以下为LCD1602显示模块端口定义及函数声明-----------------------*/ sbit lcd_rs_port = P1^7; /*定义LCD控制端口*/ sbit lcd_rw_port = P1^6; sbit lcd_en_port = P2^4; #define lcd_data_port P0 unsigned char num_char_table[] = {"0123456789ABCDEF"}; unsigned char Lcd_Dis1_table[] = {"Volt: V "}; //电压显示框架 unsigned char pos_char_table[] = {" 67.9AB V "}; //电压显示位置 void lcd_delay(uchar ms); //LCD1602 延时 void lcd_busy_wait(); //LCD1602 忙等待 void lcd_command_write(uchar command); //LCD1602 命令字写入void lcd_system_reset(); //LCD1602 初始化 void lcd_char_write(uchar x_pos,y_pos,lcd_dat); //LCD1602 字符写入 void lcd_bad_check(); //LCD1602 坏点检查 void Num_to_Disp(uint Num); //LCD1602 数据处理 void LcdDisp(uint num); //LCD1602 数据显示 void delay_1ms(uchar x); //LCD1602 延时1ms /*------------------------以下为ADS1115模块端口定义及函数声明--------------------------*/ sbit SCL = P1^0; sbit SDA = P1^1; #define TRUE 1 #define FALSE 0 unsigned int Config; unsigned char Writebuff[4],Readbuff[3]; unsigned int Result[2]; int D_ADS; //转换的数字量 #define Accuracy 32768 //定义ADC精度,ADS1115单端输入时15位

直流电子负载论文

简易直流电子负载(C题) 【本科组】 摘要 本系统以STM32F103VET6为控制核心,采用D/A TLV5616控制运放LM358驱动N沟道增强型P-MOSFET CSD17505Q5A,通过负反馈实现直流电子负载的恒流工作模式。同时采用电流并联检测芯片INA282将电流反馈至MCU,通过A/D 采样检测实际电流与D/A设定电流的差值,利用PID控制实现无净差控制,提高了电流控制的精度。其中PID参数通过遗传算法进行自整定,预设了一组较优PID参数,在实际高精度测量中,也可以通过重新整定更新PID参数。系统工作电压范围0.2-18V,电压分辨率为0.5mV,精度恒为±0.25mV,工作电流范围0-1000mA,分辨率0.2mA,精度恒为±0.1mA,在满足设计要求的情况下具备了很高的恒流精度。另外,通过对继电器的控制,实现了过压保护与自恢复功能,还具备声光报警等实用功能。 在大功率的应用需求中,本系统可以通过多个P-MOSFET并联扩流很方便的实现。同时在不改变电路的情况下,通过软件更新还可实现直流电子负载的恒阻和恒功率方式运行。 关键词:直流电子负载;恒流模式;高精度高分辨率;PID参数自整定

一、系统方案 本系统主要由MCU控制模块、恒流模块、电压采样模块、电流采样模块、A/D D/A 转换模块、电源模块组成,下面分别就这几个模块进行方案论证及选择。 1.1电子负载及恒流方案的论证与选择 本题要求制作一台恒流(CC)工作模式的简易直流电子负载。即在电压输入低于18V的情况下,实现100mA~1000mA的恒流工作控制。 方案一:传统电子负载。运用传统的电子负载设计方式,利用电力电子器件的特性,通过分析等值电路,用电力电子元件搭建电子电路来模拟负载,可以实现定电流特性。但传统方案调节不够方便、精确。 方案二:PWM控制型电子负载。单片机输出一定占空比的PWM控制信号,控制功率电路MOS管的导通和关断时间,让功率消耗在串接的电阻上,来获得实际所需的工作电流、电压。电路中的检测电路为电压、电流负反馈回路,通过A/D采集到单片机,与预置值进行比较,作为单片机进一步调节PWM占空比的依据。此方案开关管工作在开关状态,损耗小,发热低,但电路纹波较大,不利于实现恒流负载的精确控制。 图1 PWM控制型电子负载 方案三:能量回馈型电子负载。待测电源通过DC/DC升压电路变换为高压直流电,再通过逆变变为交流回馈到电网。此方案能实现电能的再生利用,多用在大功率的直流电子负载上。在小功率、低电压直流电子负载中应用此方案,DC/DC部分要完成将低压电能变为可供逆变器输入的高压,输入端的低压大电流、输出端的高压低电流导致设计难度变大,且采用逆变方案节省的能量也很有限,性价比很低。

ads1115程序详细解说

//说明:iic.h采用的是模拟iic,和驱动24c02相似,故不再重复,lcd12864.h是串行通信方式,也不再啰嗦,这是主程序。 #include "iic.h" #include "lcd12864.h" uchar a[10]="0123456789"; uchar b[16]="The V olt: . V"; uchar table[4],ReadBuffer[16],buffer[16]; uchar table1[16]=" 欢迎光临"; uchar table3[16]="当前电压是如下:"; uchar table2[16]="创新实验室sj618"; uchar table0[16]= " V"; unsigned long sum = 0; uint real; //配置ads1115 void Confige1115 () { unsigned char i; table[0] = 0x90;//CMD_Write; table[1] = 0x01;//指向配置寄存器 table[2] = 0xC2;//设置配置寄存器的高八位1100 0101,即AINp=AIN0,AINn=GND;满量程FS=+-4.096;连续转换模式 table[3] = 0xe3;//设置配置寄存器的低八位1100 0101,即 start();//发送起始信号 for(i=0;i<4;i++) { shout(table[i]);//将table里面的数写入ads1115 _NOP(); } stop();//发送停止信号 } //指向ADS1115指针寄存器用于准备读取数据 void PointRegister (void) { unsigned char i; table[0] = 0x90;//写 table[1] = 0x00;//指针指向转换寄存器 start();//发送起始信号 for(i=0;i<2;i++) { shout(table[i]);//将table里面的数写入ads1115 delay(5); }

ADS1115程序代码 参赛必备

#include "ads1115.h" #include "ap_i2c.h" static void Confige1115 (unsigned char port); static void PointRegister (void); static void ReadData (unsigned char chn, unsigned char cnt); unsigned char WriteIntBuf[4], WritepointBuf[2], count = 6,ReadBuffer[64];; void delay (unsigned int delay) { while(delay--); } /****************************************************************************** * * Function Name : Confige1115 * Description : 延迟时间 * Input : None * Output : None * Return : None * Attention :获取ADS1115模拟转换结果 ******************************************************************************* / void Get_ATOD (unsigned char channel,unsigned char cnt) { static unsigned char chn; chn = channel; Confige1115(channel); delay(1000); PointRegister(); delay(1000); ReadData(chn,cnt); delay(1000); } /****************************************************************************** * * Function Name : Confige1115 * Description : 延迟时间 * Input : None * Output : None * Return : None * Attention :配置ADS1115 ******************************************************************************* /

ADS1115 超小型,低功耗,16双牛逼的 模拟-数字转换器中文资料

?特点 ?应用 ?描述 ?订购信息 ?绝对最大额定值 ?电气特性 ?引脚配置 ?时序要求 ?概览 ?快速入门指南 ?复用器 ?模拟输入 ?满量程输入 ?数据格式 ?走样 ?操作模式 ?复位和上电 ?低功耗税骑自行车 ?COMPARATOR(ADS1114/15只) ?转换就绪PIN(ADS1114 / 5只)

?SMBus报警反应 ?I2C接口 ?I2C地址选择 ?I2C广播呼叫 ?I2C速度模式 ?从属模式操作 ?接收模式 ?传输模式 ?写/读寄存器 ?寄存器 ?指针寄存器 ?转换寄存器 ?CONFIG寄存器 ?lo_thresh与Hi_thresh寄存器?应用信息 ?基本连接 ?连接多个设备 ?GPIO端口通信 ?单端输入 ?低侧电流监视器

- ADS111 3 ADS111 月4 ADS1115 www.ti.co 米SBAS444A 2009年5月- 2009年8月修订 超小型,低功耗,16双牛逼的模拟-数字转换器 检查样品:ADS1113 ADS1114 ADS1115 特点 ?超小型QFN封装:2毫米×1.5毫米×0.4毫米 ?宽电源电压范围:2.0V至5.5V ?低消耗电流:连续模式:只有150 μ单次模式:自动关闭 ?可编程数据速率:8SPS到860SPS ?内部低漂移电压基准 ?内部振荡器 ?内部PGA ?我2C?接口:引脚可选择的地址 ?四个单端或两个差分输入(ADS1115) ?可编程比较器(ADS1114和ADS1115) ?工作温度:-40°C至+140°C时 应用 ?便携式仪表 ?消费品 ?电池监控 ?温度测量 ?工厂自动化和过程控制 描述 ADS1113,ADS1114和ADS1115是高精度模拟到数字转换器(ADC)号决议第16位,超小型,无铅QFN-10封装或MSOP-10封装中提供。的ADS1113/4/5设计精度,功耗和易于记住的实施。ADS1113/4/5功能板载参考和振荡器。数据传输通过一个I 2 C兼容串行接口,四个I 2 C 从地址。ADS1113/4/5操作范围从2.0V至5.5V单电源供电。 ADS1113/4/5可以执行转换速率高达每秒860个样本(SPS)。板载PGA的ADS1114和ADS1115提供从电源的输入范围为±256mV的低,允许大型和小型的信号进行高分辨率测量。ADS1115还设有一个输入多路复用器(MUX),提供两个差分或四个单端输入。 ADS1113/4/5工作在连续转换模式或单拍模式,自动权力转换后,大大降低了空闲期间的电流消耗。被指定的ADS1113/4/5从-40°C至+125°C。

推荐-直流电子负载设计报告 精品

“简易直流电子负载”设计报告 摘要:本系统设计制作了一台恒流工作模式的简易直流电子负载。通过按键、LCD显示,AD/DA模块、恒流电路及功率器件搭建电路。运用MSP430G2553单片机精确控制恒流电流值,可以满足基本要求(1)、(2)、(3);自制了一个符合发挥部分(1)的稳压电源,通过测量达到了发挥部分(2)的要求,通过改变负载电阻Rw达到发挥部分(3)的要求。本系统能够把负载两端电压、流过负载电流和负载调整率直观的在LCD上显示,具有便携(电池供电),精确等特点。 关键字:恒流功率器件AD/DA MSP430G2553 负载调整率 一、模块设计方案 1.1 单片机系统 方案一、使用AT89C51单片机系统,At89C51是一个低功耗的CMOS8位单片机,片内含有4K bytes存储器和128bytes的随机数据存储器,片内集成通用8位中央处理器和ISP Flash存储单元。 方案二、使用MSP430g2553单片机系统,其可在1.8~3.6V的低电压范围内工作,具有超低功耗的特点;有5种节能方式和基本时钟模块配置;内置16位定时器,多达20个支持触摸感测的I/O引脚和欠压检测器,MSP430g2553功耗低。 综合考虑,方案二中单片机系统,性价比高,运行速度高;所以采用方案二。 1.2DA模块 方案一、使用DAC0832,最常用的器件,易于使用,硬件接口简单,编程容易,缺点精度只有8位,达不到设计要求。 方案二、TI公司生产的TLV5616。这是一个12位的数模转换器。带有灵活的4线串行接口,可以无缝连接TMS320,SPI,QSPI和Mircrowire串行口。数字和模拟电源分别供电,电压范围2.7V~5.5V。输出缓冲是2倍增益rail-to-rail输出放大器,输出放大器是AB类以提高稳定性和减少建立时间。rail-to-rail输出和关电方式非常单电源、电池供电应用。通过控制字可以优化建立时间和耗化比且精度达到设计要求。综合考虑,我们选用方案二。 1.3恒流电路模块 方案一、采用稳压器来构成恒流源,LM7805是三端固定式集成稳压器,输出的电流I=(Uo’/R1+I2);式中I2是7805的静态电流,数值非常之小,当R1较小I1较大时,I2可忽略不计;当R2变化时,LM7805改变自身的电压差来维持电压不变。该电路结构简单,但不能实现数控。如图1.

基于ADS1115多通道低功耗环境参数检测系统设计

第30卷 第3期 苏州科技大学学报(工程技术版)V ol. 30 No. 3 2017 年 9 月Journal of Suzhou University of Science and Technology(Engineering and Technology)Sep.2017 基于ADS1115多通道低功耗环境参数 检测系统设计 李长才肖金球4华猛^ (1.苏州科技大学电子与信息工程学院,江苏苏州215009;2.苏州市智能测控工程技术研究中心,江苏苏州215009) 摘要:为了可靠准确地检测环境参数,尽可能降低功耗,设计了基于ADS1115多通道低功耗检测系统。采用 ADS1115作为数据采样与转化模块,STM32处理器作为控制与处理模块。通过配置ADS1115寄存器,进行通道转换 与数据采集。利用STM32的待机模式,大大降低了系统功耗。给出了 ADS1115芯片的简介、硬件设计方案、软件实现 方法以及最终测试结果。经测试,该检测系统具有功耗低、体积小、可靠稳定以及功能扩展性好等特点,适用于对功 耗要求比较高的数据采集与测量环境中。 关键词:ADS1115;参数检测;多通道;STM32;低功耗 中图分类号:TP274 文献标识码:A文章编号:2096-3270(2017)03-0077-04 当前,模数、数模转化器[1]已经被广泛的应用在工业、通信、汽车及消费类领域,在电子智能测量技术的 高速发展的趋势下,对数据采集与转换的要求也越来越高。特别是在电能供应不便的地方,数据采集需要的 电能只有通过电池或太阳能板提供,所以需要模数转换器具有低功耗特性。此外,数据采集检测系统还需要 稳定、可靠、安全地运行,实现对数据的测量与监控。ADS1115不仅具有低功耗的特性,而且体积小、精度高,集成了多路复用器以及増益放大器等部件,简化了外围电路的设计。在特定的场合,能够充分发挥其优势。该文设计了基于ADS1115多通道低功耗环境参数检测系统I利用ADS1115单次转化模式以及STM32处 理器的待机模式,大大降低了整个系统的功耗,实现了系统可靠稳定运行。 1ADS1115 简介 ADS1115是高精度模数转化器,具有16位分辨率。超小型的无引线QFN-10封装或MSOP-10封装,大 大减少了其体积。2.0 V至5.5 V的宽电源范围。在设计时考虑了精度、功耗和实现的简易性。如图1所示,ADS1115具有一个板上基准和振荡器,数据通过一个I2C兼容型串行接口进行传输。具有一个板上可编程 增益放大器(PGA)'该P G A提供从电源电压到低至 ±256 m V输入范围,能以高分辨率来测量大信号和小信 号。集成了一个输人多路复用器(MUX),可提供2个差分输^ 入或4个单端输入。ADS1115可工作于连续转换模式或单_ 触发模式,在单触发模式下,一次转化完成后自动断电,极_ 大地降低了芯片功耗。 AIN3 2硬件方案设计 图1ADS1115功能框图系统硬件包括环境参数采集模块,ADS1115数据采样与转化模块,STM32控制与处理模块等'系统结 构框图如图2所示。 [收稿日期]2016-09-17 [基金项目]住房和城乡建设部科学技术计划项目(2014-K8-050);苏州科技大学科研基金项目(XKZ201508) [作者简介]李长才(1988-),男,山东枣庄人,硕士研究生。 通信联系人:肖金球(1963-),男,教授,主要从事智能测控技术的研究,Email:xjq@https://www.sodocs.net/doc/0c7440527.html,。

理解启动代码ADS

所谓启动代码,就是处理器在启动的时候执行的一段代码,主要任务是初始化处理器模式,设置堆栈,初始化变量等等.由于以上的操作均与处理器体系结构和系统配置密切相关,所以一般由汇编来编写. 具体到S64,启动代码分成两部分,一是与ARM7TDMI内核相关的部分,包括处理器各异常向量的配置,各处理器模式的堆栈设置,如有必要,复制向量到RAM,以便remap之后处理器正确处理异常,初始化数据(包括RW与ZI),最后跳转到Main.二是与处理器外部设备相关的部分,这和厂商的联系比较大.虽然都采用了ARM7TDMI的内核,但是不同的厂家整合了不同的片上外设,需要不同的初始化,其中比较重要的是初始化WDT,初始化各子系统时钟,有必要的话,进行remap.这一部分与一般控制器的初始化类似,因此,本文不作重点描述. 在进行分析之前,请确认如下相关概念: S64片上FLASH起始于0x100000,共64kB,片上RAM起始于0x200000,共16kB. S64复位之后,程序会从0开始执行,此时FLASH被映射到0地址,因此,S64可以取得指令并执行.显然,此时还是驻留在0x100000地址.如果使用remap命令,将会把RAM映射到0地址,同样的这时0地址的内容也只是RAM的镜像. S64的FLASH可以保证在最差情况时以30MHz进行单周期访问,而RAM可以保证在最大速度时的单周期访问. OK,以下开始分析启动代码.

一,处理器异常 S64将异常向量至于0地址开始的几个直接,这些是必需要处理的.由于复位向量位于0,也需要一条跳转指令.具体代码如下: RESET B SYSINIT ; Reset B UDFHANDLER ; UNDEFINED B SWIHANDLER ; SWI B PABTHANDLER ; PREFETCH ABORT B DABTHANDLER ; DATA ABORT B . ; RESERVED B VECTORED_IRQ_HANDLER B . ; ADD FIQ CODE HERE UDFHANDLER B . SWIHANDLER B .

ads1115中文版

超薄,低功耗,16位模拟—数字转换器参考资料 特性: 超小型QFN 封装: 2mm x 1.5mm x 0.4mm 宽电源范围:2.0V 至5.5V 低电流消耗: 连续模式:仅150μA 单触发模式:自动关断 可编程数据速率: 8SPS 至860SPS 内部低漂移电压基准 内部振荡器 内部可编程增益放大器(PGA) I2C?接口:引脚可选地址 4 个单端或2 个差分输入(ADS1115) 可编程比较器 (ADS1114 和ADS1115)

应用 便携式仪表 消费类商品 电池监测 温度测量 工厂自动化及过程控制说明 ADS1113、ADS1114 和ADS1115 是具有16 位分辨率的高精度模数转换器(ADC),采用超小型的无引线QFN-10 封装或MSOP-10 封装。ADS1113 / 4 / 5 在设计时考虑到了精度、功耗和实现的简易性。 ADS1113 / 4 / 5 具有一个板上基准和振荡器。数据通过一个I2C 兼容型串行接口进行传输;可以选择4 个I2C 从地址。ADS1113 / 4 / 5 采用2.0V 至5.5V 的单工作电源。 ADS1113 / 4 / 5 能够以高达每秒860 个采样数据(SPS) 的速率执行转换操作。ADS1114 和ADS1115 具有一个板上可编程增益放大器(PGA),该PGA 可提供从电源电压到低至±256mV 的输入范围,因而使得能够以高分辨率来测量大信号和小信号。另 外,ADS1115 还具有一个输入多路复用器(MUX),可提供2 个差分输入或4 个单端输入。 ADS1113 / 4 / 5 可工作于连续转换模式或单触发模

手绘绘画板设计报告

摘要:本设计室以 msp430f5529 单片机为主控芯片的手写输入设备,用普 通 PCB 覆铜板作为信号采集部分,万用表表笔作为微小信号探测装置,当恒流源产生恒定电流通过覆铜板表面时,通过 16 位高精度 AD ADS1115 测量出其与相邻两边电压值的差值来确定表笔在覆铜板上的准确位置,在用msp430f5529 单片机开发板自带 Dog Matrix 102 * 64 液晶显示所测得坐标值的同时,在屏幕上显示探测表笔运动的轨迹。本设计主要采用的芯片有 TI 公司的电压放大器LM317,仪表放大器 INA333,精密放大器 OPA2234,高精度 A/D ADS1115以及MSP430F5529 开发板。 关键词:msp430f5529;微小信号;恒流源 Abstract:The main controller of this design is msp430f5529, and it was designed for the handheld product. We made the Copper Clad Laminates as our detect device,When the constant current source generates a constant current through the copper clad laminate surface, through the 16 bit high accuracy A/D ADS1115 to measure the difference with the adjacent sides voltage value to determine the exact location of pen on CCL, in 102 * 64 liquid crystal display of the measured coordinates with SEED-EXP430F5529 microcontroller development board comes with Dog Matrix, display detection of pen motion on the screen. This design mainly uses a voltage amplifier chip LM317, INA333 instrumentation amplifier, precision amplifier OPA2234, high accuracy A/D ADS1115 and the MSP430F5529 development board,All of the chips and boards are produced by TI company. Keyword: msp430f5529; minutest signals; constant current source

【精品】简易电子直流负载

简易直流电子负载(C题) 摘要:本系统设计的是恒流(CC)工作模式的简易直流电子负载,是以单片机STC89C52为主控芯片,包括控制器、独立按键、显示电路、MOSFET功率电路、恒流电路、电压电流检测电路和保护电路。由单片机输出给定的电流值,并经过运算处理控制D/A输出,控制MOSEFT漏极电流,从而使直流电子负载的电流处于设定值。设计着重阐述了系统框架、工作原理、软硬件设计,并给出了系统测试表.测试结果表明,该系统具有稳定性强、调节速度快的特点,很好的满足了提出的性能指标。 关键词:电子负载;恒流;功率电路;信号处理

1.系统方案论证 1。1各种方案比较与选择 1.1.1主控器模块的设计方案与选择 方案一:采用纯硬件控制电路,虽然避免了软件的设置,但电路难度增加,且成本也高,也不利于实时调整电路。 方案二:采用单片机STC89C52.STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。且指令代码完全兼容传统8051。 综合考虑选择方案二以宏晶单片机STC89C52为核心,组成单片最小系统. 1.1.2显示模块的设计方案与选择 方案一:采用数码管显示.数码管成本较低,对环境要求低,编程也容易。但所显示的信息量有限,一般信息量越大,占的I/O口也越多. 方案二:采用1602液晶显示.采用液晶显示,画面效果好,分辨率高,抗干扰能力强。功耗也低,显示的信息量也多。

根据题目要求,需要显示电压、电流等多种信息,数码管已不能满足要求故选择方案二,本系统采用的点阵式LCD型号为1602. 1。1。3MOSFET功率电路的设计方案与选择 方案一:采用IRF540场效应管。IRF540属于高电压,大电流的N通道增强型场效应功率晶体管,栅极电压与漏极电流关系如图2所示。 图1栅极电压与漏极电流关系 方案二:采用TI的CSD17505Q5A.N通道MOSFET管。栅极电压与漏极电流关系如图3所示。

2012年全国电子设计大赛便携式脉搏测试仪(技术文档)

便携式脉搏测试仪(F题) 2012年8月7日 摘要 本文主要介绍了一种便携式脉搏测量装置。通过采用红光或红外光发射接收技术,从人体手 指或耳垂处采样获取脉搏信息,并能实时显示被测者每分钟的脉搏数。其主控芯片为MSP430F149,通过对光电接收管接受的信号进行处理,使主控芯片可以通过显示器件到所预期 的效果。并且介绍了在调试过程中的实时监控、宏观曲线分析和数据分析应用等调试手段。文章 着重介绍核心器件的选择、各部分电路、软件的设计和调试手段。 关键词:脉冲信号光电传感器单片机 目录 一、系统方案论证及方案选择 (2) 1.1 总体设计方案 (2) 1.2主控制系统的方案论证与选择 (3) 1.2.1 设计要求及思路 (3) 1.2.2 方案论证与选择 (3) 1.3 MCU控制系统的论证与选择 (4) 二、理论分析与计算 (4) 1、脉搏信号初级放大计算 (4) 2、滤波放大电路理论分析 (5) 3、电压比较电路分析 (5) 三、主要功能电路设计 (6) 1、脉搏检测电路设计 (6) 2、核心板电路 (7) 3、OPA2340跟随AD转换电路设计 (8) 四、系统软件设计 (9) 1、程序框图 (9) 五、测试方案与测试结果 (10) 1、测试仪器及型号 (10) 2、测试方案 (10) 3、测试结果 (10) 4、测试结果分析 (12)

六、附件 (12) 1.程序1:(ADS1115) (12) 2.程序2:(I 2C) (14) 引言 脉搏测试仪是用来测量一个人脉搏跳动次数的电子仪器,也是心电图的主要组成部分,因此在现代医学上具有重要的作用。目前检测脉搏的仪器虽然很多,但是能实现精确测量、精确显示且计时功能准确等多功能的便携式全数字脉搏测量装置很少。 一、系统方案论证及方案选择 1.1 总体设计方案 题目要求设计一个便携式脉搏测试仪,通过对光电接收管接受信号的处理,来获得脉搏信息,并能实时显示被测者每分钟的脉搏数及光电脉搏信号波形动态显示。设计主要由主控单片机MSP430、ADS1115IDGSR、光电探头、放大滤波、信号调理,由光电探头进行光—电的转换,转换结果通过运算放大器OPA2227PA和A\D转换芯片ADS1115IDGSR进行传输,单片机的AD 口对采集到的数据进行分析与处理,最后将转换的数字信号显示在LCD12864上,当测量出每分钟脉搏次数后,会进行声光提示,或者实时显示每分钟脉搏次数。

ads1115驱动程序(msp430f149)

* ADS1115.h * * Created on: 2012-7-30 * Author: Piao */ #ifndef ADS1115_H_ #define ADS1115_H_ /**********ADDR宏定义***************/ #define ADDRESS_0 0x90 //ADDR PIN ->GND #define ADDRESS_1 0x92 //ADDR PIN ->VDD #define ADDRESS_2 0x94 //ADDR PIN ->SDA #define ADDRESS_3 0x96 //ADDR PIN ->SCL /************POINTER REGISTER*****************/ #define Pointer_0 0x00 //Convertion register #define Pointer_1 0x01 //Config register #define Pointer_2 0x02 //Lo_thresh register #define Pointer_3 0x03 //Hi_thresh register /************CONFIG REGISTER*****************/ #define OS_0 0x0000 #define OS_1 0x8000 #define MUX_0 0x0000 //AINp=AIN0, AINn=AIN1 #define MUX_1 0x1000 //AINp=AIN0, AINn=AIN3 #define MUX_2 0x2000 //AINp=AIN1, AINn=AIN3 #define MUX_3 0x3000 //AINp=AIN2, AINn=AIN3 #define MUX_4 0x4000 //AINp=AIN0, AINn=GND #define MUX_5 0x5000 //AINp=AIN1, AINn=GND #define MUX_6 0x6000 //AINp=AIN2, AINn=GND #define MUX_7 0x7000 //AINp=AIN3, AINn=GND #define PGA_0 0x0000 //FS=6.144V #define PGA_1 0x0200 //FS=4.096V #define PGA_2 0x0400 //FS=2.048V #define PGA_3 0x0600 //FS=1.024V #define PGA_4 0x0800 //FS=0.512V #define PGA_5 0x0A00 //FS=0.256V #define PGA_6 0x0C00 //FS=0.256V #define PGA_7 0x0E00 //FS=0.256V

关于ads1115学习心得体会

关于ads1115学习心得体会 标签: conversion学习心得寄存器2012-08-04 12:11 研究ADS1115一段时间了,终于搞定啦,其实操作还是蛮简单的,主要分为三部分的步骤,本次列子是模拟IIC操作的哦。。。。。 其实主要分为三部分, 第一部分:write config register 1 0x90 最后一位是R/W位,高为读,低为写 2 0x01 指向配置寄存器 3 开始设置配置寄存器的参数,根据自己的需要 第二部分:write to pointer register 1 0x90 同上 2 0x00 指向转换寄存器 第三部分:read conversion register 1 0x91 同上 2 应答转换寄存器的MSB 3 应答转换寄存器的LSB 具体程序如下: //配置ads1115 void Confige1115 () { unsigned char i; table[0] = 0x90;//CMD_Write;

table[1] = 0x01;//指向配置寄存器 table[2] = 0xc2;//设置配置寄存器的高八位1100 0101,即AINp=AIN0,AINn=GND;满量程FS=+-4.096;连续转换模式 table[3] = 0xe3;//设置配置寄存器的低八位1100 0101,即 start();//发送起始信号 for(i=0;i<4;i++) { shout(table[i]);//将table里面的数写入ads1115 delay(15); } stop();//发送停止信号 } //指向ADS1115指针寄存器用于准备读取数据 void PointRegister (void) { unsigned char i; table[0] = 0x90;//写指令 table[1] = 0x00;//指针指向转换寄存器 start();//发送起始信号 for(i=0;i<2;i++) { shout(table[i]);//将table里面的数写入ads1115 delay(15); } stop();//发送停止信号

相关主题