CN112114189B - 一种基于fpga控制的电参数测量系统及测量方法 - Google Patents
一种基于fpga控制的电参数测量系统及测量方法 Download PDFInfo
- Publication number
- CN112114189B CN112114189B CN202010822303.7A CN202010822303A CN112114189B CN 112114189 B CN112114189 B CN 112114189B CN 202010822303 A CN202010822303 A CN 202010822303A CN 112114189 B CN112114189 B CN 112114189B
- Authority
- CN
- China
- Prior art keywords
- iic
- ina219
- module
- control logic
- electrical parameter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R19/00—Arrangements for measuring currents or voltages or for indicating presence or sign thereof
- G01R19/25—Arrangements for measuring currents or voltages or for indicating presence or sign thereof using digital measurement techniques
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/26—Pc applications
- G05B2219/2612—Data acquisition interface
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明属于电路电参数处理技术领域,公开了一种基于FPGA控制的电参数测量系统及测量方法,主控单元基于FPGA芯片,控制IIC控制逻辑模块对INA219电参数测量模块进行控制,并提供IIC控制逻辑模块的时钟;IIC控制逻辑模块,为主控单元提供了配置参数与校准参数接口,通过主控单元根据需要改变INA219电参数测量模块的相应参数;INA219电参数测量模块,主要用于测量电压电流,测量的数据经由IIC总线发至IIC控制逻辑模块。本发明在FPGA上实现IIC控制器读取INA219电参数测量模块,完成高精度、高速率、高响应以及高准确性的电参数采样,从而实现电压电流的实时测量。
Description
技术领域
本发明属于电路电参数处理技术领域,尤其涉及一种基于FPGA控制的电参数测量系统及测量方法。
背景技术
目前,业界主流的IIC控制器实现方式为通过单片机编程实现,但是受限于单片机主频与可用引脚个数、基于单片机开发的程序可移植性不强等原因,无法完全发挥出IIC的真正执行效率。对于电参数测量,现有技术多为使用芯片内部模数转换器进行电参数的测量与分析,但这会占用较多的芯片资源。
通过上述分析,现有技术存在的问题及缺陷为:
(1)IIC控制器不能在单片机内进行并行采集电参数数据,现有的单片机缺少足够的并行处理能力,当需要控制运行多个IIC控制器时,单片机无法发挥出并行处理的特性,而基于FPGA的IIC控制器可以充分利用FPGA的并行处理能力,保证在控制多个IIC控制器对多个测量电阻进行电参数测量时,能够实时的对待测电路进行电参数采样。
(2)目前市面上处理器种类繁多,依靠的平台各不相同,不同平台处理器的程序无法互通,即更换平台后需要重新开发基于相应平台处理器的IIC控制器程序,而基于FPGA的IIC控制器可以在所有的FPGA芯片上执行,消除了各个平台间程序不互通的风险,具有较强的通用性。
(3)现有电参数测量方式多为使用芯片内部的模数转换器进行对待测电路的电压值测量,然后将测量的电压值进一步转换为电流值或其他电参数。对一些对芯片资源要求高的工程,这种测量方式会占用芯片内部较多的资源。而使用INA219电参数测量模块,只需使用IIC控制逻辑模块对INA219电参数模块进行数据读取。
解决以上问题及缺陷的意义为:1、能够在多路电参数测量的要求环境下,发挥出IIC控制器的最大效率。2、在需要进行程序移植的FPGA系统中,可以无修改的进行移植,可移植性强。3、使用INA219电参数模块进行电参数测量,可以在芯片内部没有模数转换器的情况下,进行相关测量。
发明内容
针对现有技术存在的问题,本发明提供了一种基于FPGA控制INA219的电参数测量系统及测量方法。
本发明是这样实现的,一种基于FPGA控制的电参数测量系统,包括:
主控单元,基于FPGA芯片,控制IIC控制逻辑模块对INA219电参数测量模块进行控制,并提供IIC控制逻辑模块的时钟;
IIC控制逻辑模块,为主控单元提供了配置参数与校准参数接口,通过主控单元根据需要改变电参数测量模块的相应参数;
INA219电参数测量模块,用于测量电压电流,测量的数据经由IIC总线发至IIC控制逻辑模块。
进一步,所述主控单元内部的分频器将50MHz的系统时钟分频为200KHz,供IIC控制逻辑模块使用。
所述IIC控制逻辑模块用于提供IIC控制逻辑,对INA219电参数测量模块内部的寄存器进行写入与读取操作。
本发明的另一目的在于提供一种所述基于FPGA控制的电参数测量系统的测量方法,所述测量方法包括:
所述IIC控制逻辑模块的控制信号RST端口在置高时,所述IIC控制逻辑模块正常工作,在置低时,所述IIC控制逻辑模块复位,将所有参数归零,所述IIC控制逻辑模块处于等待状态;
所述主控单元控制信号EN[1:0]的En[1]置高时为IIC控制逻辑模块写使能,所述主控单元将预定的配置值写入INA219电参数测量模块的配置寄存器,并将从主控单元输入的配置值写入INA219电参数测量模块的校准寄存器;
所述主控单元将En[1]置低时IIC控制逻辑模块不对INA219电参数测量模块的写操作;
主控单元将En[0]置高时为IIC控制逻辑模块读使能,所述主控单元将INA219电参数测量模块的电压寄存器和电流寄存器的值读出并通过数据信号Voltage[15:0]和数据信号Current[15:0]反馈至主控单元,主控单元置低En[1]时IIC控制逻辑模块不进行写操作;
状态信号Data_Valid为采集数据有效位,在IIC控制逻辑模块成功读取INA219电参数测量模块中电压寄存器与电流寄存器的值后,会将此位置高;
数据信号Cal_Reg[15:0],Cal_Reg[15:0]为要写入INA219电参数测量模块校准寄存器的配置值,由主控单元给出;IIC控制逻辑模块执行写操作时,将主控单元给定的值写入校准寄存器。
进一步,数据信号Voltage[15:0]为从INA219电参数测量模块的电压寄存器读取的电压值;
数据信号Current[15:0]为从INA219电参数测量模块的电流寄存器读取的电流值;
时钟信号CLK端口为IIC控制逻辑模块时钟输入口,输入时钟频率为200KHz;
时钟信号SCL为IIC控制逻辑模块的IIC总线时钟输出口;
数据线号SDA为IIC控制逻辑模块的IIC总线的数据输入输出口。
INA219电参数测量模块的电源接口VS引脚采用标准的TTL电平3.3V供电,VS引脚通过两个去耦的滤波电容接地滤除电源噪声;A0与A1引脚为芯片的地址引脚,SDA、SCL引脚为IIC总线引脚,与FPGA芯片进行数据通信,IIC总线挂载上拉电阻,上拉电阻的阻值计算公式如下:
Rmin={(VS)min-0.4V}/3mA
Rmax=(T/0.874)*c
Rmin与Rmax为上拉电阻的取值范围,单位为KΩ,(VS)min为VS电源输入引脚输入电压的最小值,取3.3V,T为IIC总线的周期,单位为μs,在IIC总线速率为400Kbps时T取0.3μs,c为总线负载电容,在IIC总线速率为400Kbps时负载最大容限<=200pF;上拉电阻阻值R的取值如下,单位(KΩ):
Rmin≈1<R<Rmax≈68
在IIC总线中,上拉电阻的阻值与功耗成正比;
VIN+和VIN-引脚为被测电路的差分输入引脚,分别串联10欧的采样电阻;两个引脚由一个0.1uF的滤波电容连接。
所述IIC控制逻辑模块的控制方法包括:
1)、模块初始时为空状态;
2)、当IIC控制器收到主控单元的写使能信号后,启动IIC初始信号;
3)、开始对INA219电参数测量模块的写操作,首先写INA219电参数测量模块的器件地址至IIC总线,得到INA219电参数测量模块的地址0b1000000;地址写入后,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
4)、若有来自INA219电参数测量模块的回应信号,则开始写入配置寄存器地址,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
5)、若有回应,则写入配置寄存器的参数值,接着等待器件回应;
6)、器件回应后开始写入校准寄存器地址,写完后等待INA219电参数测量模块的回应;
7)、器件回应后,写入校准寄存器的值;
8)、器件回应后,写操作完成,写入IIC停止信号;
9)、当IIC控制器收到主系统的读使能信号后,启动IIC读信号,Data_Valid置0,开始读操作;
10)、写入电压寄存器的地址,写完后,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
11)、若有回应,则读取电压寄存器数据至数据信号Voltage[15:0];
12)、接着写入电流寄存器的地址,写完后,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
13)若有回应,则读取数据至Current[15:0],待数据读取完后,Data_Valid置1;
14)读操作完成,写入IIC停止信号。
进一步,所述测量方法进一步包括:
IIC控制逻辑模块的时钟信号输入由主控单元通过时钟分频器分频得到,将50MHZ的输入时钟频率降频为200KHZ,主控单元通过RST信号控制IIC控制器的复位;片选信号En[2:0],其中En[1]表示写使能,En[0]表示读使能;INA219电参数测量模块的校准寄存器的值由系统主控程序设定得出,IIC控制器得到值后,如果写使能,则对INA219的校准寄存器进行相关的写操作。
待配置寄存器和校准寄存器写入完成后,如果读使能,则将对INA219电参数测量模块所采集到的电压电流值进行读操作,每次读操作按成之后将通过Data_Valid信号向主系统发出读操作完成信号,而后将读出的电压电流数据分别通过Voltage[15:0]和Current[15:0]信号发送至主控芯片。
本发明的另一目的在于提供一种搭载所述基于FPGA控制的电参数测量系统的IIC控制器。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:
对比分析如下表:
本发明基于FPGA控制INA219的电参数测量系统主要用于测量引脚电压电流值。INA219测量到的电压电流数据发送至IIC控制逻辑模块。主控单元可以根据要求改变IIC控制逻辑模块相应参数值来调整的电压电流的测量精度。
本发明在FPGA上实现IIC控制器读取INA219电参数测量模块是一种新的尝试,在此之前业界主流的IIC控制器实现方式为通过单片机编程实现,但是受限于单片机主频与可用引脚个数、基于单片机开发的程序可移植性不强等原因,无法完全发挥出IIC的真正执行效率,正因如此。FPGA实现IIC控制器可以真正消灭以上原因所带来的影响,完成对INA219电参数测量模块的高精度、高速率、高响应以及高准确性的读写采样,从而实现电参数的实时测量。
本发明基于FPGA控制IIC控制逻辑模块对INA219电参数测量模块进行电参数测量实现对待测电路进行电压、电流等相关电参数进行多路实时测量,并可根据使用者需要改变测量的电参数校准值;在FPGA控制IIC控制逻辑模块对INA219电参数测量模块进行电参数测量的基础上,可以进行上位机的开发与扩展,即FPGA读到的电参数测量数据可以经过通信端口(如RS422、以太网口等)发送至上位机,并在上位机进行实时显示。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的基于FPGA控制的(INA219)电参数测量系统示意图。
图2是本发明实施例提供的电压电流监测模块硬件设计图。
图3是本发明实施例提供的IIC控制逻辑模块流程图。
图4是本发明实施例提供的电参数测量模块监测六路电压电流数据验证图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种基于FPGA控制的电参数测量系统及测量方法,下面结合附图对本发明作详细的描述。
INA219是一款具备I2C或SMBUS兼容接口的分流器和功率监测计。具有26V、双向、零漂移、低侧/高侧、I2C输出电流/功率监控器,可以用来检测电流,电压,功率。该器件监测分流器电压降和总线电源电压,转换次数和滤波选项可通过编程设定。
本发明提供一种基于FPGA控制的电参数测量系统的测量方法,包括:
所述IIC控制逻辑模块的控制信号RST端口在置高时,所述IIC控制逻辑模块正常工作,在置低时,所述IIC控制逻辑模块复位,将所有参数归零,所述IIC控制逻辑模块处于等待状态;
所述主控单元控制信号EN[1:0]的En[1]置高时为IIC控制逻辑模块写使能,所述主控单元将预定的配置值写入INA219电参数测量模块(INA219)的配置寄存器,并将从主控单元输入的配置值写入INA219电参数测量模块的校准寄存器;
所述主控单元将En[1]置低时IIC控制逻辑模块不对INA219电参数测量模块的写操作;
主控单元将En[0]置高时为IIC控制逻辑模块读使能,所述主控单元将INA219电参数测量模块的电压寄存器和电流寄存器的值读出并通过数据信号Voltage[15:0]和数据信号Current[15:0]反馈至主控单元,主控单元置低En[1]时IIC控制逻辑模块不进行写操作;
状态信号Data_Valid为采集数据有效位,在IIC控制逻辑模块成功读取INA219电参数测量模块中电压寄存器与电流寄存器的值后,会将此位置高;
数据信号Cal_Reg[15:0],Cal_Reg[15:0]为要写入INA219电参数测量模块校准寄存器的配置值,由主控单元给出;IIC控制逻辑模块执行写操作时,将主控单元给定的值写入校准寄存器。
数据信号Voltage[15:0]为从INA219电参数测量模块的电压寄存器读取的电压值;
数据信号Current[15:0]为从INA219电参数测量模块的电流寄存器读取的电流值;
时钟信号CLK端口为IIC控制逻辑模块时钟输入口,输入时钟频率为200KHz;
时钟信号SCL为IIC控制逻辑模块的IIC总线时钟输出口;
数据线号SDA为IIC控制逻辑模块的IIC总线的数据输入输出口。
本发明提供的一种基于FPGA控制的电参数测量系统业内的普通技术人员还可以采用其他的步骤实施,图1的本发明提供的仅仅是一个具体实施例而已。
下面结合具体实施例分析对本发明作进一步描述。
本发明提供的基于FPGA控制的(INA219)电参数测量系统由主控单元、IIC控制逻辑模块与INA219构成。
主控单元基于FPGA芯片,可以控制IIC控制逻辑模块对INA219进行控制,并提供IIC控制逻辑模块的时钟,主控单元内部的分频器分功能是将50MHz的系统时钟分频为200KHz,供IIC控制逻辑模块使用。
IIC控制逻辑模块为主控单元提供了配置参数与校准参数接口,使用者可以通过主控来根据需要改变电参数测量模块的相应参数。对于INA219,则提供了IIC控制逻辑,可以对INA219内部的寄存器进行写入与读取操作。
由INA219来测量电压电流,测量的数据经由IIC总线发至IIC控制逻辑模块。
模块间的关系如图1。
在本发明中,系统信号分为状态信号、控制信号、数据信号与时钟信号。
(1)控制信号RST,为IIC控制逻辑模块复位信号,RST端口在置高时,模块正常工作,在置低时,模块复位,将所有参数归零,模块处于等待状态;
(2)控制信号EN[1:0],有两根信号,主控单元将En[1]置高时为IIC控制逻辑模块写使能,此时模块将预定的配置值写入INA219的配置寄存器,并将从主控单元输入的配置值写入INA219的校准寄存器。主控单元将En[1]置低时IIC控制逻辑模块不进行对INA219的写操作。主控单元将En[0]置高时为IIC控制逻辑模块读使能,此时模块将INA219的电压寄存器和电流寄存器的值读出并通过Voltage[15:0]和Current[15:0]反馈至主控单元,主控单元置低En[1]时模块不进行写操作;
(3)状态信号Data_Valid为采集数据有效位,在IIC控制逻辑模块成功读取INA219中电压寄存器与电流寄存器的值后,会将此位置高;
(4)数据信号Cal_Reg[15:0],Cal_Reg[15:0]为要写入INA219校准寄存器的配置值,由主控单元根据给出。IIC控制逻辑模块执行写操作时,会将主控单元给定的值写入校准寄存器,这也意味着校准寄存器的值是可以在系统运行时改变的;
(5)数据信号Voltage[15:0]为从INA219的电压寄存器读取的电压值;
(6)数据信号Current[15:0]为从INA219的电流寄存器读取的电流值;
(7)时钟信号CLK端口为IIC控制逻辑模块时钟输入口,输入时钟频率为200KHz;
(8)时钟信号SCL为IIC控制逻辑模块的IIC总线时钟输出口;
(9)数据线号SDA为IIC控制逻辑模块的IIC总线的数据输入输出口。
下面结合模块设计对本发明作进一步描述。
INA219的引脚说明如下表:
在设计中,INA219的电源接口VS引脚采用标准的TTL电平3.3V供电,为滤除电源噪声,VS引脚还通过两个去耦效果较好的滤波电容接地;A0与A1引脚为芯片的地址引脚,设计中接地,这也决定了芯片的地址为0b1000000;SDA、CL引脚为IIC总线引脚,与FPGA芯片进行数据通信,IIC总线需要挂载一个上拉电阻,上拉电阻的阻值计算公式如下:
Rmin={(VS)min-0.4V}/3mA
Rmax=(T/0.874)*c
Rmin与Rmax为上拉电阻的取值范围,单位为KΩ,(VS)min为VS电源输入引脚输入电压的最小值,这里取3.3V,T为IIC总线的周期,单位为μs,在IIC总线速率为400Kbps(最高)时T取0.3μs,c为总线负载电容,在IIC总线速率为400Kbps时负载最大容限<=200pF,综上所述,上拉电阻阻值R的取值范围如下,单位(KΩ):
Rmin≈1<R<Rmax≈68
在IIC总线中,上拉电阻的阻值与功耗成正比,所以为了尽可能节省总线功耗,在这里上拉电阻阻值选择3.3KΩ。
VIN+和VIN-引脚为被测电路的差分输入引脚,这这里分别串联一个10欧的采样电阻。两个引脚由一个0.1uF的滤波电容连接。硬件电路设计如图2所示:
在本发明中,IIC控制逻辑模块设计如下。
1)、模块初始时为空状态。
2)、当IIC控制器收到主控单元的写使能信号之后,启动IIC初始信号。
3)、开始对INA219的写操作,首先写INA219的器件地址至IIC总线,由之前的INA219硬件电路设计部分可以得到INA219的地址为0b1000000;待地址写入之后,等待INA219的回应,如果没有回应,则继续等待。
4)、若有来自INA219的回应信号,则开始写入配置寄存器地址,等待INA219的回应,如果没有回应,则继续等待。
5)、若有回应,则写入配置寄存器的参数值,接着等待器件回应。
6)、器件回应之后开始写入校准寄存器地址,写完之后等待INA219的回应。
7)、器件回应之后,写入校准寄存器的值。
8)、器件回应之后,至此,模块写操作完成,写入IIC停止信号。。
9)、当IIC控制器收到主系统的读使能信号之后,启动IIC读信号,此时Data_Valid置0,开始读操作。
10)、首先写入电压寄存器的地址,写完之后,等待INA219的回应,如果没有回应,则继续等待。
11)、若有回应,则读取电压寄存器数据至数据信号Voltage[15:0];
12)、接着写入电流寄存器的地址,写完之后,等待INA219的回应,如果没有回应,则继续等待,
13)若有回应,则读取数据至Current[15:0],待数据读取完之后,Data_Valid置1。
14)读操作完成,写入IIC停止信号。
IIC控制逻辑模块流程如图3。
下面结合配置过程对本发明作进一步描述。
IIC控制逻辑模块的时钟信号输入由主控单元通过时钟分频器分频得到,可以将50MHZ的输入时钟频率降频为200KHZ,主控单元通过RST信号来控制IIC控制器的复位;片选信号En[2:0],其中En[1]表示写使能,En[0]表示读使能;INA219校准寄存器的值由系统主控程序设定得出,IIC控制器得到值后,如果写使能,则对INA219的校准寄存器进行相关的写操作。
待配置寄存器和校准寄存器写入完成后,如果读使能,则将对INA219所采集到的电压电流值进行读操作,每次读操作按成之后将通过Data_Valid信号向主系统发出读操作完成信号,而后将读出的电压电流数据分别通过Voltage[15:0]和Current[15:0]信号发送至主控芯片。
下面结合测试验证对本发明作进一步描述。
将配置寄存器的值设定为0X199A,即测量的电压最大值为16V,校准寄存器的值设定为0XCA04,电路中电压表所测示数为1.2V。
下载程序至FPGA,所得示数如图4,电压寄存器的值为0958H,经过换算得出INA219所测电压为1.2V,与电压表所测电压一致。符合项目要求。
本发明在FPGA上实现IIC控制器读取INA219电参数测量模块是一种新的尝试,在此之前业界主流的IIC控制器实现方式为通过单片机编程实现,但是受限于单片机主频、引脚个数、指令执行容易受外界干扰等原因,无法完全发挥出IIC的真正执行速率,正因如此。FPGA实现IIC控制器可以真正消灭以上原因所带来的影响,完成对INA219的高精度、高速率以及高准确性的读写,从而实现电压电流的实时测量。
下面结合实验对本发明的技术效果作详细的描述。
即图4所示,实验FPGA芯片为ALTERA公司EP3C25F324C7芯片,使用六路IIC控制逻辑模块控制六个INA219电参数测量模块。待测电路分别为DSP芯片1.2V核电压输入电路、DSP3.3VIO口电压输入电路、FPGA1.2V核电压输入电路、FPGA2.5V电压输入电路、FPGA3.3VIO口电压输入电路、系统5V电压输入电路。
测量结果为INA219电参数模块内部电压寄存器与电流寄存器数据,需做一定的转换。
电压转换公式如下,单位:(V):
电源转换公式如下,单位:(A):
实验结果为:
测量电路 | 电压值(V) | 电流值(A) |
DSP芯片1.2V核电压输入电路 | 1.191 | 0.09085 |
DSP3.3VIO口电压输入电路 | 3.348 | 0.0098 |
FPGA1.2V核电压输入电路 | 1.205 | 0.03925 |
FPGA2.5V电压输入电路 | 2.497 | 0.0163 |
FPGA3.3VIO口电压输入电路 | 3.332 | 0.01455 |
系统5V电压输入电路 | 4.948/ | 0.275 |
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种基于FPGA控制的电参数测量方法,其特征在于,所述测量方法包括:
IIC控制逻辑模块的控制信号RST端口在置高时,所述IIC控制逻辑模块正常工作,在置低时,所述IIC控制逻辑模块复位,将所有参数归零,所述IIC控制逻辑模块处于等待状态;
主控单元控制信号EN[1:0]的En[1]置高时为IIC控制逻辑模块写使能,所述主控单元将预定的配置值写入INA219电参数测量模块的配置寄存器,并将从主控单元输入的配置值写入INA219电参数测量模块的校准寄存器;
主控单元将En[1]置低时IIC控制逻辑模块不对INA219电参数测量模块的写操作;
主控单元将En[0]置高时为IIC控制逻辑模块读使能,所述主控单元将INA219电参数测量模块内部的电压寄存器和电流寄存器的值读出并通过数据信号Voltage[15:0]和数据信号Current[15:0]反馈至主控单元,主控单元置低En[1]时IIC控制逻辑模块不进行写操作;
状态信号Data_Valid为采集数据有效位,在IIC控制逻辑模块成功读取INA219电参数测量模块内部的电压寄存器与电流寄存器的值后,会将此位置高;
数据信号Cal_Reg[15:0]为要写入INA219电参数测量模块校准寄存器的配置值,由主控单元给出;IIC控制逻辑模块执行写操作时,将主控单元给定的值写入校准寄存器;
数据信号Voltage[15:0]为从INA219电参数测量模块的电压寄存器读取的电压值;
数据信号Current[15:0]为从INA219电参数测量模块的电流寄存器读取的电流值;
时钟信号CLK端口为IIC控制逻辑模块时钟输入口,输入时钟频率为200KHz;
时钟信号SCL为IIC控制逻辑模块的IIC总线时钟输出口;
数据线号SDA为IIC控制逻辑模块的IIC总线的数据输入输出口;
INA219电参数测量模块的电源接口VS引脚采用标准的TTL电平3.3V供电,VS引脚通过两个去耦的滤波电容接地滤除电源噪声;A0与A1引脚为芯片的地址引脚,SDA、SCL引脚为IIC总线引脚,与FPGA芯片进行数据通信,IIC总线挂载上拉电阻,上拉电阻的阻值计算公式如下:
Rmin={(VS)min-0.4V}/3mA
Rmax=(T/0.874)*c
Rmin与Rmax为上拉电阻的取值范围,单位为KΩ,(VS)min为VS电源输入引脚输入电压的最小值,取3.3V,T为IIC总线的周期,单位为μs,在IIC总线速率为400Kbps时T取0.3μs,c为总线负载电容,在IIC总线速率为400Kbps时负载最大容限<=200pF;上拉电阻阻值R的取值如下,单位为KΩ:
Rmin≈1<R<Rmax≈68
在IIC总线中,上拉电阻的阻值与功耗成正比;
VIN+和VIN-引脚为被测电路的差分输入引脚,并联一个30mΩ的采样电阻;两个引脚由一个0.1uF的滤波电容连接。
2.一种采用如权利要求1所述的基于FPGA控制的电参数测量方法的系统,其特征在于,所述基于FPGA控制的电参数测量系统包括:
主控单元,基于FPGA芯片,控制IIC控制逻辑模块对INA219电参数测量模块进行控制,并提供IIC控制逻辑模块的时钟;
IIC控制逻辑模块,为主控单元提供了配置参数与校准参数接口,通过主控单元根据需要改变电参数测量模块的相应参数;
INA219电参数测量模块,用于测量电压电流,测量的数据经由IIC总线发至IIC控制逻辑模块。
3.如权利要求2所述的基于FPGA控制的电参数测量方法的系统,其特征在于,所述主控单元内部的分频器将50MHz的系统时钟分频为200KHz,供IIC控制逻辑模块使用。
4.如权利要求2所述的基于FPGA控制的电参数测量方法的系统,其特征在于,
所述IIC控制逻辑模块用于提供IIC控制逻辑,对INA219电参数测量模块内部的寄存器进行写入与读取操作。
5.如权利要求1所述的测量方法,其特征在于,所述IIC控制逻辑模块的控制方法包括:
1)、模块初始时为空状态;
2)、当IIC控制器收到主控单元的写使能信号后,启动IIC初始信号;
3)、开始对INA219电参数测量模块的写操作,由硬件设计电路得到INA219电参数测量模块的地址0b1000000,则写INA219电参数测量模块的器件地址至IIC总线,地址写入后,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
4)、若有来自INA219电参数测量模块的回应信号,则开始写入配置寄存器地址,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
5)、若有回应,则写入配置寄存器的参数值,接着等待器件回应;
6)、器件回应后开始写入校准寄存器地址,写完后等待INA219电参数测量模块的回应;
7)、器件回应后,写入校准寄存器的值;
8)、器件回应后,写操作完成,写入IIC停止信号;
9)、当IIC控制器收到主系统的读使能信号后,启动IIC读信号,Data_Valid置0,开始读操作;
10)、写入电压寄存器的地址,写完后,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
11)、若有回应,则读取电压寄存器数据至数据信号Voltage[15:0];
12)、接着写入电流寄存器的地址,写完后,等待INA219电参数测量模块的回应,如果没有回应,则继续等待;
13)若有回应,则读取数据至Current[15:0],待数据读取完后,Data_Valid置1;
14)读操作完成,写入IIC停止信号。
6.如权利要求1所述的测量方法,其特征在于,所述测量方法进一步包括:
IIC控制逻辑模块的时钟信号输入由主控单元通过时钟分频器分频得到,将50MHZ的输入时钟频率降频为200KHZ,主控单元通过RST信号控制IIC控制器的复位;片选信号En[2:0],其中En[1]表示写使能,En[0]表示读使能;INA219电参数测量模块的校准寄存器的值由系统主控程序设定得出,IIC控制器得到值后,如果写使能,则对INA219的校准寄存器进行相关的写操作;
待配置寄存器和校准寄存器写入完成后,如果读使能,则将对INA219电参数测量模块所采集到的电压电流值进行读操作,每次读操作按成之后将通过Data_Valid信号向主系统发出读操作完成信号,而后将读出的电压电流数据分别通过Voltage[15:0]和Current[15:0]信号发送至主控芯片。
7.一种搭载权利要求2~4任意一项所述基于FPGA控制的电参数测量方法的系统的IIC控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010822303.7A CN112114189B (zh) | 2020-08-16 | 2020-08-16 | 一种基于fpga控制的电参数测量系统及测量方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010822303.7A CN112114189B (zh) | 2020-08-16 | 2020-08-16 | 一种基于fpga控制的电参数测量系统及测量方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112114189A CN112114189A (zh) | 2020-12-22 |
CN112114189B true CN112114189B (zh) | 2021-10-19 |
Family
ID=73804251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010822303.7A Active CN112114189B (zh) | 2020-08-16 | 2020-08-16 | 一种基于fpga控制的电参数测量系统及测量方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112114189B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113804962B (zh) * | 2021-08-10 | 2024-04-02 | 上海贝岭股份有限公司 | 计量芯片以及测量系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102169463A (zh) * | 2011-04-28 | 2011-08-31 | 杭州华三通信技术有限公司 | 一种基于iic总线的制造信息的获取方法和设备 |
CN102841869A (zh) * | 2012-07-03 | 2012-12-26 | 深圳市邦彦信息技术有限公司 | 一种基于fpga的多通道i2c控制器 |
CN104598418A (zh) * | 2015-01-27 | 2015-05-06 | 北京奥普维尔科技有限公司 | 一种基于fpga的控制i2c通信的系统及方法 |
CN106209220A (zh) * | 2016-07-05 | 2016-12-07 | 厦门优迅高速芯片有限公司 | 一种基于fpga的ux3328sfp光模块自动参数设置与测试方法 |
CN206411657U (zh) * | 2017-01-24 | 2017-08-15 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的板卡监测系统 |
CN109541295A (zh) * | 2018-10-16 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 测量移动设备功耗的系统和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7493433B2 (en) * | 2004-10-29 | 2009-02-17 | International Business Machines Corporation | System, method and storage medium for providing an inter-integrated circuit (I2C) slave with read/write access to random access memory |
-
2020
- 2020-08-16 CN CN202010822303.7A patent/CN112114189B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102169463A (zh) * | 2011-04-28 | 2011-08-31 | 杭州华三通信技术有限公司 | 一种基于iic总线的制造信息的获取方法和设备 |
CN102841869A (zh) * | 2012-07-03 | 2012-12-26 | 深圳市邦彦信息技术有限公司 | 一种基于fpga的多通道i2c控制器 |
CN104598418A (zh) * | 2015-01-27 | 2015-05-06 | 北京奥普维尔科技有限公司 | 一种基于fpga的控制i2c通信的系统及方法 |
CN106209220A (zh) * | 2016-07-05 | 2016-12-07 | 厦门优迅高速芯片有限公司 | 一种基于fpga的ux3328sfp光模块自动参数设置与测试方法 |
CN206411657U (zh) * | 2017-01-24 | 2017-08-15 | 济南浪潮高新科技投资发展有限公司 | 一种基于fpga的板卡监测系统 |
CN109541295A (zh) * | 2018-10-16 | 2019-03-29 | 深圳壹账通智能科技有限公司 | 测量移动设备功耗的系统和方法 |
Non-Patent Citations (2)
Title |
---|
基于FPGA的OLED微显示器的IIC控制模块设计;冉峰等;《电子技术应用》;20131231;第39卷(第5期);第15-17,21页 * |
张剑贤等.基于FPGA的8位SoC微体系结构设计.《计算机教育》.2020,(第3期), * |
Also Published As
Publication number | Publication date |
---|---|
CN112114189A (zh) | 2020-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112115006B (zh) | Dsp和fpga的空间辐射效应测试装置及测试方法 | |
CN102103535B (zh) | 多核处理器、多核处理器的调试系统和调试方法 | |
CN108255774A (zh) | 应用处理器、包括该处理器的计算系统及其操作方法 | |
CN112114189B (zh) | 一种基于fpga控制的电参数测量系统及测量方法 | |
CN209746085U (zh) | 一种soc芯片测试与验证系统 | |
CN103257277B (zh) | 基于恒流源的多功能虚拟仪器及控制方法 | |
CN107290654A (zh) | 一种fpga逻辑测试结构及方法 | |
CN112685239A (zh) | 一种针对多核dsp+fpga构架处理电路的自动测试系统及方法 | |
CN103292872B (zh) | 一种空气质量流量计性能检测系统 | |
CN115509834A (zh) | 一种基于jtag协议的微处理器在线调试系统及调试方法 | |
CN115932544A (zh) | 一种gpu芯片功耗自动化测试的装置和方法 | |
TWI742461B (zh) | 硬碟安裝檢測系統 | |
CN107727930A (zh) | 智能型高精度模拟信号采样系统和采样方法 | |
US20130268221A1 (en) | On-chip integrated circuit power measurement cell | |
CN107290588A (zh) | 一种高精度多线程测量频率的系统 | |
CN202267714U (zh) | 电容容量数据测试及采集系统 | |
CN109374971B (zh) | 基于嵌入式系统的兆赫兹阻抗测量计 | |
CN204556136U (zh) | 温度传感芯片测试电路 | |
US20240118340A1 (en) | Processor test pattern generation and application for tester systems | |
CN206114872U (zh) | 一种假负载电路 | |
CN117453491B (zh) | 功耗确定方法及闪存设备 | |
US6633237B2 (en) | Methods and apparatus for data transfer in electronic energy meters | |
Wu et al. | An Automatic Energy Consumption Measuring Platform for Embedded Systems | |
CN110672679A (zh) | 土壤电位梯度测量仪 | |
CN203643521U (zh) | I2c总线测试治具 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |