CN111327319A - 一种多通道模拟信号采样方法及装置 - Google Patents
一种多通道模拟信号采样方法及装置 Download PDFInfo
- Publication number
- CN111327319A CN111327319A CN202010115520.2A CN202010115520A CN111327319A CN 111327319 A CN111327319 A CN 111327319A CN 202010115520 A CN202010115520 A CN 202010115520A CN 111327319 A CN111327319 A CN 111327319A
- Authority
- CN
- China
- Prior art keywords
- channel
- sampling
- analog
- state
- processing function
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M1/00—Analogue/digital conversion; Digital/analogue conversion
- H03M1/12—Analogue/digital converters
- H03M1/124—Sampling or signal conditioning arrangements specially adapted for A/D converters
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Analogue/Digital Conversion (AREA)
Abstract
本发明提供一种多通道模拟信号采样方法及装置,所述方法包括:根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;接收所述模数转换器发送的数字信号作为多通道采样信号。所述装置用于执行上述方法。本发明实施例提供的多通道模拟信号采样方法及装置,提高了处理器的运行效率。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种多通道模拟信号采样方法及装置。
背景技术
在仪器仪表、开关电源等领域应用中,常常需要采集如传感器输出、输出电压、输出电流等模拟量信号。
现有技术中,将模拟量转换为数字量的模拟量采样装置通常采用串行外设接口(Serial Peripheral Interface,简称SPI),以减少电路所占用面积。采用SPI的模拟量采样装置每次采样都是顺序完成采样的各个阶段,例如:模拟量采样装置的处理器先给出片选信号(Chip select,简称CS),等待芯片规定的一定时间,再发出转换指令,等待转换完成,转换完成后再读取数据。在现有的应用中,在多通道采样之后进行上述转换过程时,处理器采用等待方式,这样在整个转换过程中处理器不能处理其他事件。例如,100kpbs转换速率的模数转换装置,完成一次采样至少是10us,若再进行多通道的采样处理,所用时间是采样周期的好多倍,导致处理器的运行效率降低,对于外部事件响应效率也会降低。
发明内容
针对现有技术中的问题,本发明实施例提供一种多通道模拟信号采样方法及装置,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种多通道模拟信号采样方法,包括:
根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;
接收所述模数转换器发送的数字信号作为多通道采样信号。
另一方面,本发明提供一种多通道模拟信号采样装置,包括:
发送单元,用于根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;
接收单元,用于接收所述模数转换器发送的数字信号作为多通道采样信号。
再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述多通道模拟信号采样方法的步骤。
又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述多通道模拟信号采样方法的步骤。
本发明实施例提供的多通道模拟信号采样方法及装置,根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号,接收所述模数转换器发送的数字信号作为多通道采样信号,将多通道模拟信号的模数转换的时序操作通过采样状态标志量以及通道采样处理函数来实现,减少了时序操作的等待,提高了处理器的运行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明一实施例提供的多通道模拟量采样装置的结构示意图。
图2是本发明一实施例提供的多通道模拟信号采样方法的流程示意图。
图3是本发明一实施例提供的多通道模拟信号采样装置的结构示意图。
图4是本发明另一实施例提供的多通道模拟信号采样装置的结构示意图。
图5是本发明一实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1是本发明一实施例提供的多通道模拟量采样装置的结构示意图,如图1所示,本发明实施例提供的多通道模拟量采样装置包括多个放大电路1、模数转换器2、基准电压发生器3和处理器4,每个放大电路1与模数转换器2的一个通道相连,基准电压发生器3与模数转换器2相连,模数转换器2的数字控制接口与处理器4的SPI相连。通过传感器等装置采集的模拟量信号输入到放大电路1之后,放大电路1将输入的模拟量信号放大,然后通过相连的模数转换器2的通道将所述放大信号传输给模数转换器2,模数转换器2用于在处理器4的控制下将多个通道的模拟量转换为数字量,并将转换获得的数字量上传给处理器4,基准电压发生器3用于为模数转换器2提供基准电压,处理器4用于执行本发明实施例提供的多通道模拟信号采样方法,通过模数转换器2对多通道模拟信号进行采样,能够提高处理器的运行效率以及对外部事件的响应速度。其中,处理器4包括但不限于微控制器(Microcontroller Unit,简称MCU)、信号处理器、单片机等。
图2是本发明一实施例提供的多通道模拟信号采样方法的流程示意图,如图2所示,本发明实施例提供的多通道模拟信号采样方法包括:
S201、根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;
具体地,多通道模拟信号采样由处理器发起,所述处理器根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,所述模数转换器会接收每个通道的模数转换信号,然后根据每个通道的模数转换信号将每个通道的模拟信号转换成数字信号,再将转换获得的数字信号发送给所述处理器。其中,每个通道对应一个采样状态标志量和通道采样处理函数,每个通道的采样状态标志量与每个通道的采样处理函数对应。每个通道的采样状态标志量是预设的,且各个通道的采样状态标志量不同。各个通道的模拟信号的采样顺序根据实际需要进行设置,本发明实施例不做限定。
S202、接收所述模数转换器发送的数字信号作为多通道采样信号。
具体地,所述处理器会接收所述模数转换器发送的数字信号,然后将接收到的数字信号作为多通道模拟信号的采样信号,从而完成一次对多通道模拟信号的采样。
例如,某个模数转换器连接处理器的SPI接口,上述模数转换器有m个通道,每个通道设置一个采样状态标志量,此外还可以定义一个采样空闲状态标志量,用于表明多通道模拟信号采样停止。m个采样状态标志量可以分别表示为:AD_CHANNEL_0_STATE、AD_CHANNEL_1_STATE、AD_CHANNEL_2_STATE……D_CHANNEL_m-1_STATE,采样空闲状态标志量可以表示为AD_CHANNEL_IDLE_STATE。
所述处理器可以定期对多通道模拟信号进行采样,依次对多通道中每个通道的模拟信号进行采集。在进行多通道模拟信号采样时,所述处理器可以设置通道采样变量为AD_CHANNEL_0_STATE,启动AD_CHANNEL_0_STATE对应的通道采样处理函数,向模数转换器发送通道0的模数转换操作信号,在通道0采样完成之后,设置所述通道采样变量为AD_CHANNEL_1_STATE,启动AD_CHANNEL_1_STATE对应的通道采样处理函数,向模数转换器发送通道1的模数转换操作信号,在通道1采样完成之后,设置所述通道采样变量为AD_CHANNEL_2_STATE,启动AD_CHANNEL_2_STATE对应的通道采样处理函数,向模数转换器发送通道2的模数转换操作信号,以此类推,知道通道m-1采样完成之后,可以设置所述通道采样变量为AD_CHANNEL_IDLE_STATE,完成一次多通道模拟信号采样。其中,所述定期根据实际需要进行设置,本发明实施例不做限定。
本发明实施例提供的多通道模拟信号采样方法,根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号,接收所述模数转换器发送的数字信号作为多通道采样信号,将多通道模拟信号的模数转换的时序操作通过采样状态标志量以及通道采样处理函数来实现,减少了时序操作的等待,提高了处理器的运行效率。
在上述各实施例的基础上,进一步地,所述根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号包括:
若判断获知通道采样变量为所述通道的采样状态标志量,则启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下单次采样操作:根据预设数量的操作状态向所述模数转换器发送所述通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
具体地,在进行多通道模拟信号采样时,所述处理器将通道采样变量与各个通道的采样状态标志量进行比较,如果所述通道采样变量与一个通道的采样状态标志量相同,那么所述通道采样变量为所述通道的采样状态标志量,所述处理器会启动所述通道的通道采样处理函数。所述通道的通道采样处理函数可以执行如下单次采样操作:根据预设数量的操作状态向所述模数转换器发送模数转换操作信号,所述模数转换器接收到所述模数转换操作信号之后,对所述通道接收的模拟量信号进行模数转换,将所述通道接收的模拟量信号转换成数字信号,然后将转换获得的数字信号发送给所述处理器。其中,每个操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。所述预设数量可以根据模数转换器所需要的SPI接口通讯的转换时序进行设置,本发明实施例不做限定。所述状态处理函数根据实际需要进行设置,本发明实施例不做限定。所述预设数量的操作状态之间的状态转换顺序是预先设定的。
例如,在单次采样操作时需要经过n个时序操作,将每个时序操作与一个操作状态对应,此外可以定义一个处于空闲的操作状态,每个操作状态对应一个状态标志量,共n+1个状态标志量,n+1个状态标志量依次表示为:CONVERT_STATE_0、CONVERT_STATE_1、CONVERT_STATE_2……CONVERT_STATE_n-1、CONVERT_STATE_IDLE。其中,CONVERT_STATE_0、CONVERT_STATE_1、CONVERT_STATE_2……CONVERT_STATE_n-1分别为n个时序操作对应的操作状态的状态标志量,CONVERT_STATE_IDLE为处于空闲的操作状态对应空闲状态标志量。
状态标志量和状态处理函数一一对应,n个状态标志量CONVERT_STATE_0、CONVERT_STATE_1、CONVERT_STATE_2……CONVERT_STATE_n-1对应的状态处理函数分别为ad_convert_state_0_fun()、ad_convert_state_1_fun()、ad_convert_state_2_fun()……ad_convert_state_n-1_fun()。
所述处理器在处理所述进行模拟信号采样时,通过每个操作状态对应的状态标志量,依次调用每个操作状态对应的状态处理函数。预先定义一个状态变量,在需要模数转换时将状态变量赋值为CONVERT_STATE_0,执行状态处理函数ad_convert_state_0_fun(),在状态处理函数ad_convert_state_0_fun()执行完成之后,将状态变量赋值为CONVERT_STATE_1,执行状态处理函数ad_convert_state_1_fun(),在状态处理函数ad_convert_state_1_fun()执行完成之后,将状态变量赋值为CONVERT_STATE_2,执行状态处理函数ad_convert_state_2_fun(),依次类推,直到状态处理函数ad_convert_state_n-1_fun()执行完成,实现将所述通道的模拟信号转换成数字信号。在状态处理函数ad_convert_state_n-1_fun()执行完成之后,可以将状态变量设置为CONVERT_STATE_IDLE,表明转换完成,处于等待状态。如果再次需要进行模数转换,将状态变量赋值为CONVERT_STATE_0,重复上述过程。由于状态变量的顺序转换,保证了操作状态转换时序的正确,在模数转换的某个操作状态下的操作未完成时下一个操作状态下的操作不会置位。通过将模数转换的一系列时序操作划分成不同的状态,将整个时序操作的执行过程通过操作状态的转换来实现,避免了时序操作之间的等待,提高了模数转换的效率。
在上述各实施例的基础上,进一步地,所述根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号包括:
若判断获知通道采样变量为所述通道的采样状态标志量,则启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下多次采样操作:若判断获知采样次数小于阈值,则执行一次单次采样操作并更新所述采样次数直到所述采样次数等于所述阈值;
所述单次采样操作包括:根据预设数量的操作状态向所述模数转换器发送对应通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
具体地,在进行多通道模拟信号采样时,所述处理器将通道采样变量与各个通道的采样状态标志量进行比较,如果所述通道采样变量与一个通道的采样状态标志量相同,那么所述通道采样变量为所述通道的采样状态标志量,所述处理器会启动所述通道的通道采样处理函数。所述通道的通道采样处理函数可以执行如下多次采样操作:将采样次数与阈值进行比较,如果所述采样次数小于所述阈值,那么执行一次单次采样操作,并将所述采样次数加1,直到所述采样次数等于所述阈值时,停止对所述通道的多次采样。其中,所述采样次数的初始值为0,所述阈值根据实际需要进行设置,本发明实施例不做限定。所述单次采样操作的具体实现过程,见上一实施例所述,此处不进行赘述。
在上述各实施例的基础上,进一步地,每个状态处理函数包括状态变量,所述状态变量用于启动或者停止状态处理函数的执行。
具体地,每个状态处理函数都包括状态变量,所述状态变量用于启动状态处理函数的执行,或者停止状态处理函数的执行,例如所述状态变量为1,则执行所述状态处理函数进行后续处理过程,所述状态变量为0,停止所述状态处理函数的执行,退出所述状态处理函数。这样相当于在执行所述状态处理函数时,需要确定状态处理函数是否具备执行条件,条件具备就执行,不具备就退出,不会有等待的动作。
在上述各实施例的基础上,进一步地,本发明实施例提供的多通道模拟信号采样方法还包括:
若判断获知所述通道采样变量为采样空闲状态标志量,则停止多通道模拟信号采样。
具体地,所述处理器会将所述通道采样变量与采样空闲状态标志量比较,如果所述通道采样变量与所述采样空闲状态标志量相同,那么所述通道采样变量为所述采样空闲状态标志量,所述处理器会停止多通道模拟信号采样。
下面以ADS8344芯片进行8个通道的模拟信号采样为例,来说明本发明实施例提供的多通道模拟信号采样方法的实现过程。预先将ADS8344芯片的模数转换器的8个通道依次设置为CH0、CH1、CH2、CH3、CH4、CH5、CH6和CH7,设置通道CH0对应的采样状态标志量为AD_CHANNEL_0_STATE,通道CH1对应的采样状态标志量为AD_CHANNEL_1_STATE,通道CH2对应的采样状态标志量为AD_CHANNEL_2_STATE,通道CH3对应的采样状态标志量为AD_CHANNEL_3_STATE,通道CH4对应的采样状态标志量为AD_CHANNEL_4_STATE,通道CH5对应的采样状态标志量为AD_CHANNEL_5_STATE,通道CH6对应的采样状态标志量为AD_CHANNEL_6_STATE,通道CH7对应的采样状态标志量为AD_CHANNEL_7_STATE。每个通道对应一个通道采样处理函数,所述通道采样处理函数用于执行单次采样操作。其中,还设置了采样空闲状态标志量为AD_CHANNEL_IDLE_STATE。
ADS8344芯片的处理器的SPI需要输出32位的CLK波形,才能完成对一个通道的单次采样,将32位的CLK波形分成4个字节,模数转换的多个时序操作包括给出片选信号,发送命令字节,操作1、操作2、操作3和片选信号释放,那么可以将模数转换过程分为六个操作状态,空闲状态、片选态、命令发送态、转换1态、转换2态、转换3态。给出片选信号与片选态对应,对应的状态标志量CS1;发送命令字节与命令发送态对应,对应的状态标志量为send;操作1与转换1态对应,对应的状态标志量为CON1;操作2与转换2态对应,对应的状态标志量为CON2;操作3与转换3态对应,对应的状态标志量为CON3;片选信号释放与空闲状态对应,对应的状态标志量CS0。所述处理器执行六个操作状态的转换顺序为:片选态、命令发送态、转换1态、转换2态、转换3态、空闲状态。
预先设置ADS8344芯片定时进行多通道模拟信号采样,并且多通道模拟信号的采样顺序是通道CH0、CH1、CH2、CH3、CH4、CH5、CH6和CH7依次采样,当到达采样时间时,设置通道采样变量为AD_CHANNEL_0_STATE,ADS8344芯片的处理器会判断出所述通道采样变量为AD_CHANNEL_0_STATE,所述处理器会可以启动通道CH0对应的通道采样处理函数,CH0对应的通道采样处理函数执行单次采样操作,所述单次采样操作如下:
处理器首先设置状态变量为状态标志量CS1,然后执行片选态对应的状态处理函数,设置片选信号为低电平,以选中模数转换器,然后启动一个定时器进行计时,例如计时100微秒;在计时结束之后,会将所述状态变量设置为send,至此片选态对应的状态处理函数执行完成。定时器是单片机内部的一个功能模块,计时完成后会置位一个标志量,访问计时器的标志量即可判断片选态对应的状态处理函数是否执行完成。如果状态标志量CS1为1,不会执行片选态对应的状态处理函数。
当所述状态变量为send为1时,所述处理器执行命令发送态对应的状态处理函数,访问计时器的标志量,判断计时器的标志量是否置位,如果置位表明计时器计时完成,片选态对应的状态处理函数执行完成,然后发送命令字节给模数转换器,以设置所述模数转换器的通道为通道CH0和工作模式,并设置所述状态变量为CON1。如果判断出计时器的标志量没有置位,那么说明计时器计时没有完成,会跳出命令发送态对应的状态处理函数的执行,并保持所述状态变量为send,在下一个程序循环中再来判断计时器的计时完成与否。
当所述状态变量为CON1时,所述处理器执行转换1态对应的状态处理函数,查询单片机外围模块SPI模块数据发送完成标志位,判断命令字节是否发送完成,如果判断出命令字节完成发送,那么发送第一个数值为零的字节给模数转换器,使得ADS8344的DCLK有8个转换时钟脉冲,8个转换时钟脉冲会让模数转换器将接收到的单通道模拟量信号转换成数字信号,然后返回给所述处理器,所述处理器读取接收到的第一个字节,并设置所述状态变量为CON2。如果判断出命令字节没有完成发送,那么跳出转换1态对应的状态处理函数,并将状态变量保持为CON1,在下一个程序循环中再来判断命令字节发送完成与否。
当所述状态变量为CON2时,所述处理器执行转换2态对应的状态处理函数,查询单片机外围模块SPI模块数据发送完成标志位,判断第一个数值为零的字节是否发送完成,如果判断出第一个数值为零的字节完成发送,那么发送第二个数值为零的字节给模数转换器,使得ADS8344的DCLK有8个转换时钟脉冲,8个转换时钟脉冲会让模数转换器将接收到的单通道模拟量信号转换成数字信号,然后返回给所述处理器,所述处理器读取接收到的第二个字节,并设置所述状态变量为CON3。如果判断出第一个数值为零的字节没有完成发送,那么跳出转换2态对应的状态处理函数,并将状态变量保持为CON2,在下一个程序循环中再来判断第一个数值为零的字节发送完成与否。
当所述状态变量为CON3时,所述处理器执行转换3态对应的状态处理函数,查询单片机外围模块SPI模块数据发送完成标志位,判断第二个数值为零的字节是否发送完成,如果判断出第二个数值为零的字节完成发送,发送第三个数值为零的字节给模数转换器,使得ADS8344的DCLK有8个转换时钟脉冲,8个转换时钟脉冲会让模数转换器将接收到的单通道模拟量信号转换成数字信号,然后返回给所述处理器,所述处理器读取接收到的第三个字节,并设置所述状态变量为CS0。如果判断出第二个数值为零的字节没有完成发送,那么跳出转换3态对应的状态处理函数,并将状态变量保持为CON3,在下一个程序循环中再来判断第一个数值为零的字节发送完成与否。
当所述状态变量为CS0时,所述处理器执行空闲状态对应的状态处理函数,查询单片机外围模块SPI模块数据发送完成标志位,判断第三个数值为零的字节是否发送完成,如果判断出第三个数值为零的字节完成发送,那么所述处理器读取接收到的第四个字节,处理接收到的四个字节获得一个16位的二进制数字信号,进入空闲状态。如果判断出第三个数值为零的字节没有完成发送,那么跳出空闲状态对应的状态处理函数,并将状态变量保持为CS0,在下一个程序循环中再来判断第三个数值为零的字节发送完成与否。
至此,上述六个操作状态对应的状态处理函数执行完成之后,所述处理器完成对通道CH0的模拟信号的单次采样,结束通道CH0的模拟信号采样,然后设置所述通道采样变量为AD_CHANNEL_1_STATE,启动通道CH1对应的通道采样处理函数,通道CH1对应的通道采样处理函数执行单次采样操作,以此类推,直到完成通道CH7的采样,所述通道采样变量设置为AD_CHANNEL_IDLE_STATE,所述处理器完成一次多通道模拟信号采样。其中,上述八个通道的通道采样处理函数执行单次采样操作的具体过程类似,此处不进行赘述。
图3是本发明一实施例提供的多通道模拟信号采样装置的结构示意图,如图3所示,本发明实施例提供的多通道模拟信号采样装置包括发送单元301和接收单元302,其中:
发送单元301用于根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;接收单元302用于接收所述模数转换器发送的数字信号作为多通道采样信号。
具体地,多通道模拟信号采样由发送单元301发起,发送单元301根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,所述模数转换器会接收每个通道的模数转换信号,然后根据每个通道的模数转换信号将每个通道的模拟信号转换成数字信号,再将转换获得的数字信号发送给所述处理器。其中,每个通道对应一个采样状态标志量和通道采样处理函数,每个通道的采样状态标志量与每个通道的采样处理函数对应。每个通道的采样状态标志量是预设的,且各个通道的采样状态标志量不同。各个通道的模拟信号的采样顺序根据实际需要进行设置,本发明实施例不做限定。
接收单元302会接收所述模数转换器发送的数字信号,然后将接收到的数字信号作为多通道模拟信号的采样信号,从而完成一次对多通道模拟信号的采样。
本发明实施例提供的多通道模拟信号采样装置,根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号,接收所述模数转换器发送的数字信号作为多通道采样信号,将多通道模拟信号的模数转换的时序操作通过采样状态标志量以及通道采样处理函数来实现,减少了时序操作的等待,提高了处理器的运行效率。
在上述各实施例的基础上,进一步地,发送单元301具体用于:
在判断获知通道采样变量为所述通道的采样状态标志量之后,启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下单次采样操作:根据预设数量的操作状态向所述模数转换器发送所述通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
具体地,在进行多通道模拟信号采样时,发送单元301将通道采样变量与各个通道的采样状态标志量进行比较,如果所述通道采样变量与一个通道的采样状态标志量相同,那么所述通道采样变量为所述通道的采样状态标志量,发送单元301会启动所述通道的通道采样处理函数。所述通道的通道采样处理函数可以执行如下单次采样操作:根据预设数量的操作状态向所述模数转换器发送模数转换操作信号,所述模数转换器接收到所述模数转换操作信号之后,对所述通道接收的模拟量信号进行模数转换,将所述通道接收的模拟量信号转换成数字信号,然后将转换获得的数字信号发送给接收单元302。其中,每个操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。所述预设数量可以根据模数转换器所需要的SPI接口通讯的转换时序进行设置,本发明实施例不做限定。所述状态处理函数根据实际需要进行设置,本发明实施例不做限定。所述预设数量的操作状态之间的状态转换顺序是预先设定的。
在上述各实施例的基础上,进一步地,发送单元301具体用于:
若判断获知通道采样变量为所述通道的采样状态标志量,则启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下多次操作:若判断获知采样次数小于阈值,则执行一次单次采样操作并更新所述采样次数,直到所述采样次数等于所述阈值;
所述单次采样操作包括:根据预设数量的操作状态向所述模数转换器发送对应通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
具体地,在进行多通道模拟信号采样时,发送单元301将通道采样变量与各个通道的采样状态标志量进行比较,如果所述通道采样变量与一个通道的采样状态标志量相同,那么所述通道采样变量为所述通道的采样状态标志量,发送单元301会启动所述通道的通道采样处理函数。所述通道的通道采样处理函数可以执行如下多次采样操作:将采样次数与阈值进行比较,如果所述采样次数小于所述阈值,那么执行一次单次采样操作,并将所述采样次数加1,直到所述采样次数等于所述阈值时,停止对所述通道的多次采样。其中,所述采样次数的初始值为0,所述阈值根据实际需要进行设置,本发明实施例不做限定。所述单次采样操作的具体实现过程,见上一实施例所述,此处不进行赘述。
在上述各实施例的基础上,进一步地,每个状态处理函数包括状态变量,所述状态变量用于启动或者停止状态处理函数的执行。
具体地,每个状态处理函数都包括状态变量,所述状态变量用于启动状态处理函数的执行,或者停止状态处理函数的执行,例如所述状态变量为1,则执行所述状态处理函数进行后续处理过程,所述状态变量为0,停止所述状态处理函数的执行,退出所述状态处理函数。这样相当于在执行所述状态处理函数时,需要确定状态处理函数是否具备执行条件,条件具备就执行,不具备就退出,不会有等待的动作。
图4是本发明另一实施例提供的多通道模拟信号采样装置的结构示意图,如图4所示,在上述各实施例的基础上,进一步地,本发明实施例提供的多通道模拟信号采样装置还包括:
判断单元303用于在判断获知所述通道采样变量为采样空闲状态标志量之后,停止多通道采样;其中,所述采样空闲状态标志量是预设的。
具体地,判断单元303会将所述通道采样变量与采样空闲状态标志量,如果所述通道采样变量与所述采样空闲状态标志量相同,那么所述通道采样变量为所述采样空闲状态标志量,判断单元303会停止多通道模拟信号采样。
本发明实施例提供的多通道模拟信号采样装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图5是本发明一实施例提供的电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)501、通信接口(Communications Interface)502、存储器(memory)503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信。处理器501可以调用存储器503中的逻辑指令,以执行如下方法:根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;接收所述模数转换器发送的数字信号作为多通道采样信号。
此外,上述的存储器503中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;接收所述模数转换器发送的数字信号作为多通道采样信号。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;接收所述模数转换器发送的数字信号作为多通道采样信号。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种多通道模拟信号采样方法,其特征在于,包括:
根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;
接收所述模数转换器发送的数字信号作为多通道采样信号。
2.根据权利要求1所述的方法,其特征在于,所述根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号包括:
若判断获知通道采样变量为所述通道的采样状态标志量,则启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下单次采样操作:根据预设数量的操作状态向所述模数转换器发送所述通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
3.根据权利要求1所述的方法,其特征在于,所述根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号包括:
若判断获知通道采样变量为所述通道的采样状态标志量,则启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下多次采样操作:若判断获知采样次数小于阈值,则执行一次单次采样操作并更新所述采样次数,直到所述采样次数等于所述阈值;
所述单次采样操作包括:根据预设数量的操作状态向所述模数转换器发送对应通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
4.根据权利要求2或3所述的方法,其特征在于,每个状态处理函数包括状态变量,所述状态变量用于启动或者停止状态处理函数的执行。
5.根据权利要求1所述的方法,其特征在于,还包括:
若判断获知所述通道采样变量为采样空闲状态标志量,则停止多通道采样;其中,所述采样空闲状态标志量是预设的。
6.一种多通道模拟信号采样装置,其特征在于,包括:
发送单元,用于根据多通道中每个通道的采样状态标志量开启对应的通道采样处理函数向模数转换器发送每个通道的模数转换操作信号,以使得所述模数转换器将每个通道的模拟信号转换成数字信号;其中,每个通道对应一个采样状态标志量和通道采样处理函数;
接收单元,用于接收所述模数转换器发送的数字信号作为多通道采样信号。
7.根据权利要求6所述的装置,其特征在于,所述发送单元具体用于:
在判断获知通道采样变量为所述通道的采样状态标志量之后,启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下单次采样操作:根据预设数量的操作状态向所述模数转换器发送所述通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
8.根据权利要求6所述的装置,其特征在于,所述发送单元具体用于:
若判断获知通道采样变量为所述通道的采样状态标志量,则启动所述通道的通道采样处理函数;所述通道采样处理函数执行如下多次操作:若判断获知采样次数小于阈值,则执行一次单次采样操作并更新所述采样次数,直到所述采样次数等于所述阈值;
所述单次采样操作包括:根据预设数量的操作状态向所述模数转换器发送对应通道的模数转换操作信号,以使得所述模数转换器将所述通道的模拟信号转换成数字信号;其中,每个所述操作状态对应一个状态标志量和状态处理函数,所述状态标志量用于开启对应的操作状态,所述状态处理函数用于处理对应的操作状态下的操作。
9.根据权利要求7或8所述的装置,其特征在于,每个状态处理函数包括状态变量,所述状态变量用于启动或者停止状态处理函数的执行。
10.根据权利要求6所述的装置,其特征在于,还包括:
判断单元,用于在判断获知所述通道采样变量为采样空闲状态标志量之后,停止多通道采样;其中,所述采样空闲状态标志量是预设的。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010115520.2A CN111327319B (zh) | 2020-02-25 | 2020-02-25 | 一种多通道模拟信号采样方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010115520.2A CN111327319B (zh) | 2020-02-25 | 2020-02-25 | 一种多通道模拟信号采样方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111327319A true CN111327319A (zh) | 2020-06-23 |
CN111327319B CN111327319B (zh) | 2023-09-01 |
Family
ID=71168982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010115520.2A Active CN111327319B (zh) | 2020-02-25 | 2020-02-25 | 一种多通道模拟信号采样方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111327319B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113556125A (zh) * | 2021-06-28 | 2021-10-26 | 青岛中科英泰商用系统股份有限公司 | 一种提高ad转换效率的方法、系统、电子设备及介质 |
CN114236243A (zh) * | 2021-11-19 | 2022-03-25 | 湖南省拓联精密科技有限公司 | 电阻测量方法、装置、设备及存储介质 |
CN116107487A (zh) * | 2023-04-12 | 2023-05-12 | 上海励驰半导体有限公司 | 采样控制方法、相关设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1746838A (zh) * | 2005-10-17 | 2006-03-15 | 张金贵 | 一种多通道模拟信号的采样方法和系统 |
CN102415053A (zh) * | 2009-04-22 | 2012-04-11 | 韩国标准科学研究院 | 用于多通道信号的数据采集系统 |
US20140232582A1 (en) * | 2011-09-06 | 2014-08-21 | National University Of Singapore | Analog-to-digital converter for a multi-channel signal acquisition system |
CN104656514A (zh) * | 2015-01-20 | 2015-05-27 | 成都信升斯科技有限公司 | 一种智能型数据采集系统 |
-
2020
- 2020-02-25 CN CN202010115520.2A patent/CN111327319B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1746838A (zh) * | 2005-10-17 | 2006-03-15 | 张金贵 | 一种多通道模拟信号的采样方法和系统 |
CN102415053A (zh) * | 2009-04-22 | 2012-04-11 | 韩国标准科学研究院 | 用于多通道信号的数据采集系统 |
US20140232582A1 (en) * | 2011-09-06 | 2014-08-21 | National University Of Singapore | Analog-to-digital converter for a multi-channel signal acquisition system |
CN104656514A (zh) * | 2015-01-20 | 2015-05-27 | 成都信升斯科技有限公司 | 一种智能型数据采集系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113556125A (zh) * | 2021-06-28 | 2021-10-26 | 青岛中科英泰商用系统股份有限公司 | 一种提高ad转换效率的方法、系统、电子设备及介质 |
CN113556125B (zh) * | 2021-06-28 | 2024-02-06 | 青岛中科英泰商用系统股份有限公司 | 一种提高ad转换效率的方法、系统、电子设备及介质 |
CN114236243A (zh) * | 2021-11-19 | 2022-03-25 | 湖南省拓联精密科技有限公司 | 电阻测量方法、装置、设备及存储介质 |
CN116107487A (zh) * | 2023-04-12 | 2023-05-12 | 上海励驰半导体有限公司 | 采样控制方法、相关设备及存储介质 |
CN116107487B (zh) * | 2023-04-12 | 2023-08-08 | 上海励驰半导体有限公司 | 采样控制方法、相关设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111327319B (zh) | 2023-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111327319B (zh) | 一种多通道模拟信号采样方法及装置 | |
CN108886366B (zh) | 具有时间分离的adc控制器 | |
CN109039335B (zh) | 一种音频模数转换芯片阵列帧时钟同步的实现装置及实现方法 | |
EP1981169A1 (en) | Analog/digital converter | |
CN111355491B (zh) | 一种单通道模拟信号采样方法及装置 | |
CN110798269B (zh) | 基于gpio实现pcm从机功能的方法及系统 | |
US6023199A (en) | Pulse width modulation circuit and method | |
CN114048015A (zh) | 任务调度方法及装置 | |
CN115765743B (zh) | 基于zynq的多通道adc同步采集的装置及方法 | |
CN111143068B (zh) | 文件操作方法、装置及嵌入式控制器 | |
CN115098198B (zh) | 一种大量定时器实现方法 | |
CN116719388A (zh) | 波形信号生成方法、系统、终端及存储介质 | |
CN115395842A (zh) | 电流环带宽的扩展方法、装置、存储介质和伺服驱动器 | |
CN114793120A (zh) | 可重新配置的模数转换器 | |
US6831583B1 (en) | Integrated circuit comprising a microprocessor and an analogue to digital converter which is selectively operable under the control of the microprocessor and independently of the microprocessor, and a method for operating the integrated circuit | |
US8564465B2 (en) | Analog to digital conversion apparatus with a reduced number of ADCs | |
CN113691289B (zh) | 一种信号传输控制方法、装置及存储介质 | |
CN115599722B (zh) | 基于操作系统内核实现串口数据精准传输的方法和装置 | |
JPS63200234A (ja) | デ−タ処理装置 | |
CN118300610B (zh) | 基于saradc的模拟信号采样系统、采样方法及芯片 | |
CN112526205B (zh) | 基于mcu的dma功能控制ad转换器峰值采样方法 | |
CN101478513B (zh) | 一种兼容多速率的数字中频实现装置及方法 | |
CN117520220B (zh) | 自动更新数据方法、系统、装置及存储介质 | |
CN109067398B (zh) | 一种具备多路通道信号的adc电路的控制方法 | |
CN112433191B (zh) | 脉冲信号的处理方法、装置、电子设备及存储介质 |
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 |