CN109752986A - 采样控制方法及采样控制装置、电子设备和存储介质 - Google Patents
采样控制方法及采样控制装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN109752986A CN109752986A CN201711093472.6A CN201711093472A CN109752986A CN 109752986 A CN109752986 A CN 109752986A CN 201711093472 A CN201711093472 A CN 201711093472A CN 109752986 A CN109752986 A CN 109752986A
- Authority
- CN
- China
- Prior art keywords
- analog
- simulation
- analog signal
- extended capabilities
- signal
- 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.)
- Pending
Links
Landscapes
- Analogue/Digital Conversion (AREA)
Abstract
本发明提供了一种模拟信号的采样控制方法应用于包括单片机和外围扩展芯片的电子设备,其中单片机包括模数转换器,外围扩展芯片连接至模数转换器且包括多个模拟扩展端口,采样控制方法包括:在每个信号采样周期内,控制模数转换器按照设置参数启动并通过模数转换器的采样端口采集对应的第一模拟信号;当采样端口采集完第一模拟信号后,在每个信号采样周期内,控制依次开启多个模拟扩展端口;在开启每个模拟扩展端口后控制对应启动一次模数转换器采集每个模拟扩展端口对应的第二模拟信号,以完成对所有模拟扩展端口对应的所有模拟信号的采集。本发明还对应提出了采样控制装置、电子设备和存储介质,以在一个信号采样周期内完成所有模拟信号的采集。
Description
技术领域
本发明涉及信号采样技术领域,具体而言,涉及模拟信号的采样控制方法、模拟信号的采样控制装置、电子设备和计算机可读存储介质。
背景技术
目前,在电子设备中,当其单片机的ADC(Analog-to-Digital Converter,模数转换器)采样模块的采集口不够时,一般会使用外围芯片(例如74HC4851PW芯片)扩展单片机的模拟信号采集口,如图1所示,图1中MCU为微控制单元的英文Microcontroller Unit的缩写,又称单片微型计算机或单片机。
如图1所示,当通过软件控制对输入的模拟信号进行采样时需先将模拟信号的上拉电源打开,为保证采集数据的准确性需延时1ms待上拉电源稳定后,才能启动ADC模块对输入的模拟信号进行采集,考虑到软件的最小调度时间为1ms,所以设置延时时间为1ms。为了节省成本和降低系统功耗,硬件会减小电路中的上拉电阻的功率,所以上拉电源的打开时间受限制,一般上拉电源的打开时间必须小于其打开时间和关闭时间之和的33.33%,所以在采集完模拟信号后,需要立即关闭上拉电源,因为如果长时间打开上拉电源会导致相应的上拉电阻较快老化,缩短产品使用寿命。
而在相关技术中,通过软件控制对模拟扩展口输入的模拟信号的采样只能采用多次采样的方法,即:一个采样周期内只能采集一个模拟扩展口输入的模拟信号和ADC采样模块的所有非扩展口输入的模拟信号,这样ADC采样模块采集的时间短,上拉电源的打开时间就能满足要求。但要完成全部n(n≤8)个模拟扩展口输入的模拟信号的采集,需要n个采样周期,扩展通道比较多时,会导致信号采集时间长。若采样周期为6ms,则完成全部模拟扩展口的模拟信号采样则需要8×6ms=48ms,再加上需要对模拟信号进行多次确认的滤波处理,即使两次也要耗时48ms×2=96ms,而一般汽车电子模拟信号的滤波时间是50ms左右(譬如典型的车窗上升功能,当用户手松开后,这种延时也容易被车主感知),如此则会影响采集的模拟信号的稳定性和准确性。
发明内容
本发明正是基于上述问题,提出了一种新的技术方案,可以有效地缩短了模拟信号的采集时间,可以在一个信号采样周期内将所有输入的模拟信号都采集完成。
有鉴于此,根据本发明第一方面的技术方案,提供了一种模拟信号的采样控制方法,应用于包括单片机和外围扩展芯片的电子设备,其中单片机包括模数转换器,外围扩展芯片连接至模数转换器且包括多个模拟扩展端口,采样控制方法包括:在每个信号采样周期内,控制模数转换器按照设置参数启动并通过模数转换器的采样端口采集对应的第一模拟信号;当采样端口采集完第一模拟信号后,在每个信号采样周期内,控制依次开启多个模拟扩展端口;在开启每个模拟扩展端口后控制对应启动一次模数转换器采集每个模拟扩展端口对应的第二模拟信号,以完成对所有模拟扩展端口对应的所有模拟信号的采集。
在该技术方案中,将模拟信号的采样分为通过单片机的模数转换器的采样端口采集的第一模拟信号和通过外围扩展芯片的多个模拟扩展端口采集各自对应采集的第二模拟信号,且在同一个信号采样周期内,首先使模数转换器按照设置参数启动通过其采样端口进行第一模拟信号的采集,在该过程中单片机的软件可以去执行其他的程序代码而无需等待,在模数转换器采集完第一模拟信号后,再控制依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集,即先后依次通过模数转换器的采样端口和外围扩展芯片的多个模拟扩展端口在一个信号采样周期内完成对所有模拟信号的采样,包括第一模拟信号和所有的第二模拟信号,从而大大缩短模拟信号的采集时间,提高信号采样效率。
其中,第一模拟信号和第二模拟信号用于区分通过单片机的模数转换器非扩展的采样端口和外围扩展芯片扩展的多个模拟扩展端口分别采集的模拟信号。
在上述技术方案中,优选地,在开启每个模拟扩展端口后控制对应启动一次模数转换器,采集每个模拟扩展端口对应的第二模拟信号的步骤,具体包括;控制模数转换器在完成对每个模拟扩展端口的第二模拟信号的采集后,生成信号采集完成中断;根据信号采集完成中断触发运行中断服务函数,在中断服务函数的执行时间内控制存储在每个模拟扩展端口采集到的第二模拟信号对应的模拟数据,并控制选择开启下一个模拟扩展端口。
该技术方案,在依次开启外围扩展芯片的多个模拟扩展端口进行对应第二模拟信号采集的过程中,每开启一个模拟扩展端口需要对应开启一次模数转换器,以通过模数转换器完成对每个模拟扩展端口对应的第二模拟信号的采集,并在采集完成后由模数转换器生成信号采集完成中断触发中断服务函数的运行,以在每次中断服务函数运行时对应的执行时间内存储采集到的模拟数据,存储完毕后在该执行时间内选择开启下一个模拟扩展端口以在同一信号采样周期内进行对应的第二模拟信号的采集,如此,基于中断实现所有模拟扩展端口在同一个信号采样周期内连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间。
进一步地,在上述技术方案中,具体可以通过单片机生成端口选择信号控制多个模拟扩展端口的开启采样顺序。
在上述任一技术方案中,优选地,在模数转换器的采样端口采集完第一模拟信号后还包括:控制模数转换器生成信号采集完成中断,以触发运行中断服务函数,并在中断服务函数的执行时间内控制存储在采样端口采集到的第一模拟信号对应的模拟数据、以及控制开启多个模拟扩展端口中的第一个模拟扩展端口采集对应的第二模拟信号。
在该技术方案中,通过模数转换器的采样端口采集完第一模拟信号后,首先通过模数转换器生成信号采集完成中断触发中断服务函数的运行,以在该中断服务函数运行时对应的执行时间内存储采样端口采集到的模拟数据,存储完毕后在该执行时间内选择开启外围扩展芯片的多个模拟扩展端口中第一个开始对应采集第二模拟信号的模拟扩展端口,即启动进入依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集的程序,实现在同一个信号采集周期内,先后基于中断实现模数转换器的采集端口对第一模拟信号的采样存储以及所有模拟扩展端口连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间,提高信号采样效率。
在上述任一技术方案中,优选地,模拟信号的采样控制方法还包括:控制将在每个信号采样周期内依次通过采集端口采集第一模拟信号以及通过多个模拟扩展端口中的每个模拟扩展端口分别对应采集第二模拟信号并存储对应模拟数据的过程执行预设次数。
在该技术方案中,为了确保所有采集到的模拟信号的稳定性和准确性,可以对所有输入的第一模拟信号和第二模拟信号进行预设次数的确认滤波处理,具体在与预设次数的取值对应的多个信号采集周期中的每个信号采集周期内,分别通过单片机的模数转换器非扩展的采样端口对第一模拟信号进行预设次数的采样以及通过外围扩展芯片的多个模拟扩展端口对所有输入的第二模拟信号进行预设次数的采样,即对所有输入的模拟信号进行预设次数的重复采样;进一步地预设次数可以取3及其以上的整数。
根据本发明的第二方面,提出了一种模拟信号的采样控制装置,应用于包括单片机和外围扩展芯片的电子设备,其中单片机包括模数转换器,外围扩展芯片连接至模数转换器且包括多个模拟扩展端口,采样控制装置包括:第一启动模块,用于在每个信号采样周期内,控制模数转换器按照设置参数启动并通过模数转换器的采样端口采集对应的第一模拟信号;第二启动模块,用于当采样端口采集完第一模拟信号后,在每个信号采样周期内,控制依次开启多个模拟扩展端口;调度模块,用于在第二启动模块控制开启每个模拟扩展端口后调度第一启动模块控制对应启动一次模数转换器采集每个模拟扩展端口对应的第二模拟信号,以完成对所有模拟扩展端口对应的所有模拟信号的采集。
在该技术方案中,将模拟信号的采样分为通过单片机的模数转换器的采样端口采集的第一模拟信号和通过外围扩展芯片的多个模拟扩展端口采集各自对应采集的第二模拟信号,且在同一个信号采样周期内,首先使模数转换器按照设置参数启动通过其采样端口进行第一模拟信号的采集,在该过程中单片机的软件可以去执行其他的程序代码而无需等待,在模数转换器采集完第一模拟信号后,再控制依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集,即先后依次通过模数转换器的采样端口和外围扩展芯片的多个模拟扩展端口在一个信号采样周期内完成对所有模拟信号的采样,包括第一模拟信号和所有的第二模拟信号,从而大大缩短模拟信号的采集时间,提高信号采样效率。
其中,第一模拟信号和第二模拟信号用于区分通过单片机的模数转换器非扩展的采样端口和外围扩展芯片扩展的多个模拟扩展端口分别采集的模拟信号。
在上述技术方案中,优选地,模拟信号的采样控制装置还包括:生成模块,用于控制模数转换器在完成对每个模拟扩展端口的第二模拟信号的采集后,生成信号采集完成中断;处理模块,用于根据信号采集完成中断触发运行中断服务函数,在中断服务函数的执行时间内控制存储在每个模拟扩展端口采集到的第二模拟信号对应的模拟数据,并控制选择开启下一个模拟扩展端口。
该技术方案,在依次开启外围扩展芯片的多个模拟扩展端口进行对应第二模拟信号采集的过程中,每开启一个模拟扩展端口需要对应开启一次模数转换器,以通过模数转换器完成对每个模拟扩展端口对应的第二模拟信号的采集,并在采集完成后由模数转换器生成信号采集完成中断触发中断服务函数的运行,以在每次中断服务函数运行时对应的执行时间内存储采集到的模拟数据,存储完毕后在该执行时间内选择开启下一个模拟扩展端口以在同一信号采样周期内进行对应的第二模拟信号的采集,如此,基于中断实现所有模拟扩展端口在同一个信号采样周期内连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间。
进一步地,在上述技术方案中,具体可以通过单片机生成端口选择信号控制多个模拟扩展端口的开启采样顺序。
在上述任一技术方案中,优选地,调度模块还用于:在模数转换器的采样端口采集完第一模拟信号后以及在依次开启多个模拟扩展端口前,调度生成模块控制模数转换器生成信号采集完成中断,以触发运行中断服务函数,并在中断服务函数的执行时间内调度处理模块控制存储在采样端口采集到的第一模拟信号对应的模拟数据、以及调度第二启动模块控制开启多个模拟扩展端口中的第一个模拟扩展端口采集对应的所述第二模拟信号。
在该技术方案中,通过模数转换器的采样端口采集完第一模拟信号后,首先通过模数转换器生成信号采集完成中断触发中断服务函数的运行,以在该中断服务函数运行时对应的执行时间内存储采样端口采集到的模拟数据,存储完毕后在该执行时间内选择开启外围扩展芯片的多个模拟扩展端口中第一个开始对应采集第二模拟信号的模拟扩展端口,即启动进入依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集的程序,实现在同一个信号采集周期内,先后基于中断实现模数转换器的采集端口对第一模拟信号的采样存储以及所有模拟扩展端口连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间,提高信号采样效率。
在上述任一技术方案中,优选地,模拟信号的采样控制装置还包括:控制模块,用于控制将在每个信号采样周期内依次通过采集端口采集第一模拟信号以及通过多个模拟扩展端口中的每个模拟扩展端口分别对应采集第二模拟信号并存储对应模拟数据的过程执行预设次数。
在该技术方案中,为了确保所有采集到的模拟信号的稳定性和准确性,可以对所有输入的第一模拟信号和第二模拟信号进行预设次数的确认滤波处理,具体在与预设次数的取值对应的多个信号采集周期中的每个信号采集周期内,分别通过单片机的模数转换器非扩展的采样端口对第一模拟信号进行预设次数的采样以及通过外围扩展芯片的多个模拟扩展端口对所有输入的第二模拟信号进行预设次数的采样,即对所有输入的模拟信号进行预设次数的重复采样;进一步地预设次数可以取3及其以上的整数。
根据本发明的第三方面,提出了一种电子设备,电子设备包括处理器,处理器用于执行存储器中存储的计算机程序时实现如上述第一方面的技术方案中任一项的模拟信号的采样控制方法的步骤。
根据本发明第的四方面,提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面的技术方案中任一项的模拟信号的采样控制方法的步骤。
通过本发明的上述技术方案,可以有效地缩短了模拟信号的采集时间,可以在一个信号采样周期内将所有输入的模拟信号都采集完成。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1示出了采集模拟信号的扩展口的示意图;
图2示出了本发明实施例的模拟信号的采样控制方法的流程示意图;
图3示出了本发明实施例的模拟信号的采样控制装置的示意框图;
图4示出了本发明实施例的电子设备的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
图2示出了本发明实施例的模拟信号的采样控制方法的流程示意图。
如图2所示,根据本发明实施例的模拟信号的采样控制方法,应用于包括单片机和外围扩展芯片的电子设备,其中单片机包括模数转换器,外围扩展芯片连接至模数转换器且包括多个模拟扩展端口,该采样控制方法具体包括以下流程步骤:
步骤202,在每个信号采样周期内,控制模数转换器按照设置参数启动并通过模数转换器的采样端口采集对应的第一模拟信号。
步骤204,当采样端口采集完第一模拟信号后,在每个信号采样周期内,控制依次开启多个模拟扩展端口。
具体地,外围扩展芯片的多个模拟扩展端口的开启顺序具体可以通过单片机生成端口选择信号控制多个模拟扩展端口的开启采样顺序,即外围扩展芯片根据单片机生成的端口选择信号在多个模拟扩展端口之间依次进行切换,具体地端口选择信号可以由单片机中的CPU(Central Processing Unit,中央处理器)生成,通过单片机生成端口选择信号控制多个模拟扩展端口的采样顺序。
步骤206,在开启每个模拟扩展端口后控制对应启动一次模数转换器采集每个模拟扩展端口对应的第二模拟信号,以完成对所有模拟扩展端口对应的所有模拟信号的采集。
在该实施例中,将模拟信号的采样分为通过单片机的模数转换器的采样端口采集的第一模拟信号和通过外围扩展芯片的多个模拟扩展端口采集各自对应采集的第二模拟信号,且在同一个信号采样周期内,首先使模数转换器按照设置参数启动通过其采样端口进行第一模拟信号的采集,在该过程中单片机的软件可以去执行其他的程序代码而无需等待,在模数转换器采集完第一模拟信号后,再控制依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集,即先后依次通过模数转换器的采样端口和外围扩展芯片的多个模拟扩展端口在一个信号采样周期内完成对所有模拟信号的采样,包括第一模拟信号和所有的第二模拟信号,从而大大缩短模拟信号的采集时间,提高信号采样效率。
其中,第一模拟信号和第二模拟信号用于区分通过单片机的模数转换器非扩展的采样端口和外围扩展芯片扩展的多个模拟扩展端口分别采集的模拟信号。
进一步地,在上述实施例中,步骤206可以具体执行为:控制模数转换器在完成对每个模拟扩展端口的第二模拟信号的采集后,生成信号采集完成中断;根据信号采集完成中断触发运行中断服务函数,在中断服务函数的执行时间内控制存储在每个模拟扩展端口采集到的第二模拟信号对应的模拟数据,并控制选择开启下一个模拟扩展端口。
在该实施例中,在依次开启外围扩展芯片的多个模拟扩展端口进行对应第二模拟信号采集的过程中,每开启一个模拟扩展端口需要对应开启一次模数转换器,以通过模数转换器完成对每个模拟扩展端口对应的第二模拟信号的采集,并在采集完成后由模数转换器生成信号采集完成中断触发中断服务函数的运行,以在每次中断服务函数运行时对应的执行时间内存储采集到的模拟数据,存储完毕后在该执行时间内选择开启下一个模拟扩展端口以在同一信号采样周期内进行对应的第二模拟信号的采集,如此,基于中断实现所有模拟扩展端口在同一个信号采样周期内连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间。
进一步地,在上述实施例中,多个模拟扩展端口的个数取值可以为小于或等于8的正整数。
进一步地,在上述实施例中,在步骤202中的模数转换器的采样端口采集完第一模拟信号后,该模拟信号的采样控制方法还包括:
控制模数转换器生成信号采集完成中断,以触发运行中断服务函数,并在中断服务函数的执行时间内控制存储在采样端口采集到的第一模拟信号对应的模拟数据、以及控制开启多个模拟扩展端口中的第一个模拟扩展端口采集对应的第二模拟信号。
在该实施例中,通过模数转换器的采样端口采集完第一模拟信号后,首先通过模数转换器生成信号采集完成中断触发中断服务函数的运行,以在该中断服务函数运行时对应的执行时间内存储采样端口采集到的模拟数据,存储完毕后在该执行时间内选择开启外围扩展芯片的多个模拟扩展端口中第一个开始对应采集第二模拟信号的模拟扩展端口,即启动进入依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集的程序,实现在同一个信号采集周期内,先后基于中断实现模数转换器的采集端口对第一模拟信号的采样存储以及所有模拟扩展端口连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间,提高信号采样效率。
进一步地,在本发明一个具体实施例中,可以选用具有8个模拟扩展端口的外围扩展芯片,则在每个信号采样周期内,依次选通8个模拟扩展端口,每选通一个新的模拟扩展端口,就启动一次模数转换器在对应端口进行模拟信号的采集,并在完成采集后生成一个新的信号采集完成中断,进而在该信号采集完成中断对应的中断服务函数的执行时间内,存储生成该中断前采集的模拟数据并切换选通下一个新的模拟扩展端口,如此循环往复,直至8个模拟扩展端口的模拟信号均采集完成。
进一步地,在该具体实施例中,外围扩展芯片的模拟扩展端口的数量为8个,若信号采样周期为6ms,以及模数转换器每次生成的信号采集完成中断对应的中断服务函数的执行时间为46μs,且一般地,模数转换器每次生成信号采集完成中断完成一组模拟信号的采样任务所需的采集时间约为64μs,那么完成所有输入的模拟信号的采样所需的采集时间为:64μs×8+46μs×8=880μs,即在1ms的时间内能够完成对所有输入的模拟信号的采集任务,则显然能够在一个信号采样周期6ms内完成对所有输入的模拟信号的采集任务;进一步地,上拉电源的打开时间为1ms+880μs=1.88ms,也能满足上拉电源打开时间的限制要求。
进一步地,在上述实施例中,可以通过单片机中的存储器存储所有采集到的模拟数据。
进一步地,在上述任一实施例中,为了确保所有采集到的模拟信号的稳定性和准确性,可以对所有输入的第一模拟信号和第二模拟信号进行预设次数的确认滤波处理,具体地执行为:
控制将在每个信号采样周期内依次通过采集端口采集第一模拟信号以及通过多个模拟扩展端口中的每个模拟扩展端口分别对应采集第二模拟信号并存储对应模拟数据的过程执行预设次数。也就是说,在与预设次数的取值对应的多个信号采集周期中的每个信号采集周期内,分别通过单片机的模数转换器非扩展的采样端口对第一模拟信号进行预设次数的采样以及通过外围扩展芯片的多个模拟扩展端口对所有输入的第二模拟信号进行预设次数的采样,即对所有输入的模拟信号进行预设次数的重复采样;进一步地预设次数可以取3及其以上的整数。
进一步地,若信号采样周期为6ms,则当对所有输入的模拟信号进行3次的确认滤波处理后,所耗时长为:6ms×3=18ms,明显大大缩短了模拟信号的采样时间。
图3示出了本发明实施例的模拟信号的采样控制装置的示意框图。
如图3所示,根据本发明实施例的模拟信号的采样控制装置30,应用于包括单片机和外围扩展芯片的电子设备,其中单片机包括模数转换器,外围扩展芯片连接至模数转换器且包括多个模拟扩展端口,该采样控制装置30包括:第一启动模块302、第二启动模块304和调度模块306。
其中,第一启动模块302用于在每个信号采样周期内,控制模数转换器按照设置参数启动并通过模数转换器的采样端口采集对应的第一模拟信号;第二启动模块304用于当采样端口采集完第一模拟信号后,在每个信号采样周期内,控制依次开启多个模拟扩展端口;调度模块306用于在第二启动模块304控制开启每个模拟扩展端口后调度第一启动模块302控制对应启动一次模数转换器采集每个模拟扩展端口对应的第二模拟信号,以完成对所有模拟扩展端口对应的所有模拟信号的采集。
在该实施例中,将模拟信号的采样分为通过单片机的模数转换器的采样端口采集的第一模拟信号和通过外围扩展芯片的多个模拟扩展端口采集各自对应采集的第二模拟信号,且在同一个信号采样周期内,首先使模数转换器按照设置参数启动通过其采样端口进行第一模拟信号的采集,在该过程中单片机的软件可以去执行其他的程序代码而无需等待,在模数转换器采集完第一模拟信号后,再控制依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集,即先后依次通过模数转换器的采样端口和外围扩展芯片的多个模拟扩展端口在一个信号采样周期内完成对所有模拟信号的采样,包括第一模拟信号和所有的第二模拟信号,从而大大缩短模拟信号的采集时间,提高信号采样效率。
其中,第一模拟信号和第二模拟信号用于区分通过单片机的模数转换器非扩展的采样端口和外围扩展芯片扩展的多个模拟扩展端口分别采集的模拟信号。
进一步地,在上述实施例中,如图3所示,模拟信号的采样控制装置30还包括:生成模块308和处理模块310。
其中,生成模块308用于控制模数转换器在完成对每个模拟扩展端口的第二模拟信号的采集后,生成信号采集完成中断;处理模块310用于根据信号采集完成中断触发运行中断服务函数,在中断服务函数的执行时间内控制存储在每个模拟扩展端口采集到的第二模拟信号对应的模拟数据,并控制选择开启下一个模拟扩展端口。
该实施例,在依次开启外围扩展芯片的多个模拟扩展端口进行对应第二模拟信号采集的过程中,每开启一个模拟扩展端口需要对应开启一次模数转换器,以通过模数转换器完成对每个模拟扩展端口对应的第二模拟信号的采集,并在采集完成后由模数转换器生成信号采集完成中断触发中断服务函数的运行,以在每次中断服务函数运行时对应的执行时间内存储采集到的模拟数据,存储完毕后在该执行时间内选择开启下一个模拟扩展端口以在同一信号采样周期内进行对应的第二模拟信号的采集,如此,基于中断实现所有模拟扩展端口在同一个信号采样周期内连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间。
进一步地,在上述实施例中,多个模拟扩展端口的个数取值可以为小于或等于8的正整数,以及具体可以通过单片机生成端口选择信号控制多个模拟扩展端口的开启采样顺序。
进一步地,在上述实施例中,调度模块306还用于:在模数转换器的采样端口采集完第一模拟信号后以及在依次开启多个模拟扩展端口前,调度生成模块308控制模数转换器生成信号采集完成中断,以触发运行中断服务函数,并在中断服务函数的执行时间内调度处理模块310控制存储在采样端口采集到的第一模拟信号对应的模拟数据、以及调度第二启动模块304控制开启多个模拟扩展端口中的第一个模拟扩展端口采集对应的所述第二模拟信号。
在该实施例中,通过模数转换器的采样端口采集完第一模拟信号后,首先通过模数转换器生成信号采集完成中断触发中断服务函数的运行,以在该中断服务函数运行时对应的执行时间内存储采样端口采集到的模拟数据,存储完毕后在该执行时间内选择开启外围扩展芯片的多个模拟扩展端口中第一个开始对应采集第二模拟信号的模拟扩展端口,即启动进入依次开启外围扩展芯片的多个模拟扩展端口中的每个模拟扩展端口进行对应第二模拟信号的采集的程序,实现在同一个信号采集周期内,先后基于中断实现模数转换器的采集端口对第一模拟信号的采样存储以及所有模拟扩展端口连续完成对所有输入的第二模拟信号的采样,从而大大缩短模拟信号的采集时间,提高信号采样效率。
进一步地,在本发明一个具体实施例中,可以选用具有8个模拟扩展端口的外围扩展芯片,则在每个信号采样周期内,依次选通8个模拟扩展端口,每选通一个新的模拟扩展端口,就启动一次模数转换器在对应端口进行模拟信号的采集,并在完成采集后生成一个新的信号采集完成中断,进而在该信号采集完成中断对应的中断服务函数的执行时间内,存储生成该中断前采集的模拟数据并切换选通下一个新的模拟扩展端口,如此循环往复,直至8个模拟扩展端口的模拟信号均采集完成。
进一步地,在该具体实施例中,外围扩展芯片的模拟扩展端口的数量为8个,若信号采样周期为6ms,以及模数转换器每次生成的信号采集完成中断对应的中断服务函数的执行时间为46μs,且一般地,模数转换器每次生成信号采集完成中断完成一组模拟信号的采样任务所需的采集时间约为64μs,那么完成所有输入的模拟信号的采样所需的采集时间为:64μs×8+46μs×8=880μs,即在1ms的时间内能够完成对所有输入的模拟信号的采集任务,则显然能够在一个信号采样周期6ms内完成对所有输入的模拟信号的采集任务;进一步地,上拉电源的打开时间为1ms+880μs=1.88ms,也能满足上拉电源打开时间的限制要求。
进一步地,在上述实施例中,可以通过单片机中的存储器存储所有采集到的模拟数据。
进一步地,在上述实施例中,如图3所示,模拟信号的采样控制装置30还包括:控制模块312,用于控制将在每个信号采样周期内依次通过采集端口采集第一模拟信号以及通过多个模拟扩展端口中的每个模拟扩展端口分别对应采集第二模拟信号并存储对应模拟数据的过程执行预设次数。
在该实施例中,为了确保所有采集到的模拟信号的稳定性和准确性,可以对所有输入的第一模拟信号和第二模拟信号进行预设次数的确认滤波处理,具体在与预设次数的取值对应的多个信号采集周期中的每个信号采集周期内,分别通过单片机的模数转换器非扩展的采样端口对第一模拟信号进行预设次数的采样以及通过外围扩展芯片的多个模拟扩展端口对所有输入的第二模拟信号进行预设次数的采样,即对所有输入的模拟信号进行预设次数的重复采样;进一步地预设次数可以取3及其以上的整数。
图4示出了本发明实施例的电子设备的示意框图。
如图4所示,根据本发明实施例的电子设备40,包括存储器402、处理器404及存储在所述存储器402上并可在所述处理器404上运行的计算机程序,其中存储器402和处理器404之间可以通过总线连接,所述处理器404用于执行存储器402中存储的计算机程序时实现如上实施例所述的模拟信号的采样控制方法的步骤。
本发明实施例的方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例的模拟信号的采样控制装置和计算机设备中的单元可以根据实际需要进行合并、划分和删减。
根据本发明的实施例,提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上实施例所述的模拟信号的采样控制方法的步骤。
进一步地,本领域普通技术人员可以理解的是,上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(RandomAccess Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上结合附图详细说明了本公开实施例的技术方案,实现了基于中断技术的模拟扩展端口对输入的模拟信号进行连续采样,以有效地缩短了模拟信号的采集时间,可以在一个信号采样周期内将所有输入的模拟信号都采集完成。
在本说明书的描述中,术语“第一”、“第二”仅用于描述的目的,而不能理解为指示或暗示相对重要性,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明实施例中的具体含义。
在本说明书的描述中,术语“一个实施例”、“一些实施例”、“具体实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的性表述不一定指的是相同的实施例或实例。而且,描述的具体特征、结构、材料或特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种模拟信号的采样控制方法,其特征在于,应用于包括单片机和外围扩展芯片的电子设备,其中所述单片机包括模数转换器,所述外围扩展芯片连接至所述模数转换器且包括多个模拟扩展端口,所述采样控制方法包括:
在每个信号采样周期内,控制所述模数转换器按照设置参数启动并通过所述模数转换器的采样端口采集对应的第一模拟信号;
当所述采样端口采集完所述第一模拟信号后,在所述每个信号采样周期内,控制依次开启所述多个模拟扩展端口;
在开启每个模拟扩展端口后控制对应启动一次所述模数转换器采集所述每个模拟扩展端口对应的第二模拟信号,以完成对所有模拟扩展端口对应的所有模拟信号的采集。
2.根据权利要求1所述的模拟信号的采样控制方法,其特征在于,所述在开启每个模拟扩展端口后控制对应启动一次所述模数转换器,采集所述每个模拟扩展端口对应的第二模拟信号的步骤,具体包括;
控制所述模数转换器在完成对所述每个模拟扩展端口的所述第二模拟信号的采集后,生成信号采集完成中断;
根据所述信号采集完成中断触发运行中断服务函数,在所述中断服务函数的执行时间内控制存储在所述每个模拟扩展端口采集到的所述第二模拟信号对应的模拟数据,并控制选择开启下一个模拟扩展端口。
3.根据权利要求2所述的模拟信号的采样控制方法,其特征在于,在所述模数转换器的所述采样端口采集完所述第一模拟信号后还包括:
控制所述模数转换器生成所述信号采集完成中断,以触发运行所述中断服务函数,并在所述中断服务函数的执行时间内控制存储在所述采样端口采集到的所述第一模拟信号对应的模拟数据、以及控制开启所述多个模拟扩展端口中的第一个模拟扩展端口采集对应的所述第二模拟信号。
4.根据权利要求1至3中任一项所述的模拟信号的采样控制方法,其特征在于,
控制将在所述每个信号采样周期内依次通过所述采集端口采集所述第一模拟信号以及通过所述多个模拟扩展端口中的所述每个模拟扩展端口分别对应采集所述第二模拟信号并存储对应模拟数据的过程执行预设次数。
5.一种模拟信号的采样控制装置,其特征在于,应用于包括单片机和外围扩展芯片的电子设备,其中所述单片机包括模数转换器,所述外围扩展芯片连接至所述模数转换器且包括多个模拟扩展端口,所述采样控制装置包括:
第一启动模块,用于在每个信号采样周期内,控制所述模数转换器按照设置参数启动并通过所述模数转换器的采样端口采集对应的第一模拟信号;
第二启动模块,用于当所述采样端口采集完所述第一模拟信号后,在所述每个信号采样周期内,控制依次开启所述多个模拟扩展端口;
调度模块,用于在所述第二启动模块控制开启每个模拟扩展端口后调度所述第一启动模块控制对应启动一次所述模数转换器采集所述每个模拟扩展端口对应的第二模拟信号,以完成对所有模拟扩展端口对应的所有模拟信号的采集。
6.根据权利要求5所述的模拟信号的采样控制装置,其特征在于,还包括:
生成模块,用于控制所述模数转换器在完成对所述每个模拟扩展端口的所述第二模拟信号的采集后,生成信号采集完成中断;
处理模块,用于根据所述信号采集完成中断触发运行中断服务函数,在所述中断服务函数的执行时间内控制存储在所述每个模拟扩展端口采集到的所述第二模拟信号对应的模拟数据,并控制选择开启下一个模拟扩展端口。
7.根据权利要求6所述的模拟信号的采样控制装置,其特征在于,所述调度模块还用于:
在所述模数转换器的所述采样端口采集完所述第一模拟信号后,调度所述生成模块控制所述模数转换器生成所述信号采集完成中断,以触发运行所述中断服务函数,并在所述中断服务函数的执行时间内调度所述处理模块控制存储在所述采样端口采集到的所述第一模拟信号对应的模拟数据、以及调度所述第二启动模块控制开启所述多个模拟扩展端口中的第一个模拟扩展端口采集对应的所述第二模拟信号。
8.根据权利要求5至7中任一项所述的模拟信号的采样控制装置,其特征在于,还包括:
控制模块,用于控制将在所述每个信号采样周期内依次通过所述采集端口采集所述第一模拟信号以及通过所述多个模拟扩展端口中的所述每个模拟扩展端口分别对应采集所述第二模拟信号并存储对应模拟数据的过程执行预设次数。
9.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至4中任一项所述的模拟信号的采样控制方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的模拟信号的采样控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711093472.6A CN109752986A (zh) | 2017-11-08 | 2017-11-08 | 采样控制方法及采样控制装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711093472.6A CN109752986A (zh) | 2017-11-08 | 2017-11-08 | 采样控制方法及采样控制装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109752986A true CN109752986A (zh) | 2019-05-14 |
Family
ID=66402135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711093472.6A Pending CN109752986A (zh) | 2017-11-08 | 2017-11-08 | 采样控制方法及采样控制装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109752986A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110824977A (zh) * | 2019-09-24 | 2020-02-21 | 广东科瑞德电气科技有限公司 | 信号采样方法、mcu核心处理模块及配电自动化终端 |
CN111169184A (zh) * | 2020-02-19 | 2020-05-19 | 上海商米科技集团股份有限公司 | 采样方法和采样装置 |
CN111355491A (zh) * | 2020-02-25 | 2020-06-30 | 北京物资学院 | 一种单通道模拟信号采样方法及装置 |
CN116073832A (zh) * | 2023-03-03 | 2023-05-05 | 上海励驰半导体有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101726658A (zh) * | 2010-01-12 | 2010-06-09 | 河源市雅达电子有限公司 | 一种单通道分时复用采样方法及其采样电路 |
JP2011223532A (ja) * | 2010-04-14 | 2011-11-04 | Panasonic Corp | マルチチャネルサンプルホールド回路及びそれを用いたad変換器 |
CN103453983A (zh) * | 2013-08-15 | 2013-12-18 | 湘潭大学 | 一种基于时分复用和多通道的工业数据采集方法及系统 |
CN104503931A (zh) * | 2014-11-28 | 2015-04-08 | 上海富山精密机械科技有限公司 | 一种多路模拟信号采集方法 |
CN107014432A (zh) * | 2017-04-12 | 2017-08-04 | 上海琪云压缩空气系统服务有限公司 | 一种模拟信号监测系统及方法 |
-
2017
- 2017-11-08 CN CN201711093472.6A patent/CN109752986A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101726658A (zh) * | 2010-01-12 | 2010-06-09 | 河源市雅达电子有限公司 | 一种单通道分时复用采样方法及其采样电路 |
JP2011223532A (ja) * | 2010-04-14 | 2011-11-04 | Panasonic Corp | マルチチャネルサンプルホールド回路及びそれを用いたad変換器 |
CN103453983A (zh) * | 2013-08-15 | 2013-12-18 | 湘潭大学 | 一种基于时分复用和多通道的工业数据采集方法及系统 |
CN104503931A (zh) * | 2014-11-28 | 2015-04-08 | 上海富山精密机械科技有限公司 | 一种多路模拟信号采集方法 |
CN107014432A (zh) * | 2017-04-12 | 2017-08-04 | 上海琪云压缩空气系统服务有限公司 | 一种模拟信号监测系统及方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110824977A (zh) * | 2019-09-24 | 2020-02-21 | 广东科瑞德电气科技有限公司 | 信号采样方法、mcu核心处理模块及配电自动化终端 |
CN110824977B (zh) * | 2019-09-24 | 2023-06-27 | 广东科瑞德电气科技有限公司 | 信号采样方法、mcu核心处理模块及配电自动化终端 |
CN111169184A (zh) * | 2020-02-19 | 2020-05-19 | 上海商米科技集团股份有限公司 | 采样方法和采样装置 |
CN111355491A (zh) * | 2020-02-25 | 2020-06-30 | 北京物资学院 | 一种单通道模拟信号采样方法及装置 |
CN111355491B (zh) * | 2020-02-25 | 2023-03-28 | 北京物资学院 | 一种单通道模拟信号采样方法及装置 |
CN116073832A (zh) * | 2023-03-03 | 2023-05-05 | 上海励驰半导体有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109752986A (zh) | 采样控制方法及采样控制装置、电子设备和存储介质 | |
CN106201350B (zh) | 存储数据的方法、存储器和计算机系统 | |
CN105980959B (zh) | 低等待时间切换下的动态时钟和电压缩放 | |
CN101341657B (zh) | 模数转换器装置 | |
US7313730B1 (en) | Configuration logic for embedded software | |
CN1981442A (zh) | 用于对逐次逼近式模拟数字转换器进行子时钟控制的方法和装置 | |
CN105426299A (zh) | 一种基于工作流技术的测试数据实时判读系统 | |
CN103858115A (zh) | 外围设备触发产生器 | |
CN101206614B (zh) | 仿真特殊功能寄存器的仿真器 | |
CN105095569A (zh) | 一种基于arm和flash的fpga重配置系统 | |
CN102445943A (zh) | 汽车电控元件开发测试方法及开发测试平台 | |
CN109800012A (zh) | 一种mcu固件升级方法 | |
JPH0455778A (ja) | 半導体装置のテスト方法 | |
US8639853B2 (en) | Programmable waveform technology for interfacing to disparate devices | |
CN109491959A (zh) | 一种可编程逻辑器件配置器 | |
CN202632773U (zh) | 一种基于sd卡的便携式串行flash烧写装置 | |
CN105577052B (zh) | 一种基于fpga的步进电机无抖动驱动控制系统及基于该系统的控制方法 | |
CN102103643A (zh) | 芯片测试中存储测试向量的方法 | |
CN110851073A (zh) | 储存装置及巨集指令的执行方法 | |
CN202583866U (zh) | 汽车电控元件开发测试平台 | |
CN109782723A (zh) | 一种面向非特定ad的可配置多功能控制系统及方法 | |
CN103345377A (zh) | Fifo存储器控制方法及装置 | |
TWI631565B (zh) | 快閃記憶體之廢料收集方法以及使用該方法的裝置 | |
CN203117719U (zh) | 基于活动存储设备的逻辑控制器 | |
EP1570360B1 (en) | A method for direct memory access, related system and computer program product |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190514 |