CN112671410A - 基于pwm模拟dac功能的方法、数模转换电路和存储介质 - Google Patents
基于pwm模拟dac功能的方法、数模转换电路和存储介质 Download PDFInfo
- Publication number
- CN112671410A CN112671410A CN202011596182.5A CN202011596182A CN112671410A CN 112671410 A CN112671410 A CN 112671410A CN 202011596182 A CN202011596182 A CN 202011596182A CN 112671410 A CN112671410 A CN 112671410A
- Authority
- CN
- China
- Prior art keywords
- pwm signal
- pwm
- signal
- level
- count pulses
- 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
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 12
- 238000004590 computer program Methods 0.000 claims description 7
- 229920005994 diacetyl cellulose Polymers 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 8
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 1
Images
Landscapes
- Analogue/Digital Conversion (AREA)
Abstract
本发明公开了一种基于PWM模拟DAC功能的方法、数模转换电路和存储介质,基于PWM模拟DAC功能的方法包括以下步骤:获取第一PWM信号的位数W1,以及用于构成第一PWM信号的第二PWM信号的位数W2;根据位数W1和位数W2,确定构成一个第一PWM信号需要的第二PWM信号的个数A;获取第一PWM信号的信号参数H1;根据信号参数H1,确定第二PWM信号的信号参数H2;根据位数W2和信号参数H2,输出由A个连续的第二PWM信号构成的第一PWM信号。本发明公开的基于PWM模拟DAC功能的方法能够提高谐波频率,从而提高低通滤波器的截止频率,进而减小DAC输出的相位滞后,减小RC滤波器的时间常数,以提高响应速度,满足系统对响应速度的需求。
Description
技术领域
本发明涉及电子应用技术领域,特别涉及一种基于PWM模拟DAC功能的方法、数模转换电路和存储介质。
背景技术
在电子应用技术领域,MCU和DAC广泛使用。然而许多MCU内部并没有集成DAC功能或者MCU内部集成的DAC比较少,在需要多路DAC功能的系统中,单片机的DAC功能资源是远远不够用,外扩DAC芯片成本增加不少。目前,在实际电路应用中,几乎所有的MCU都提供定时器或PWM输出功能;实际电路中的经典PWM模拟DAC使用PWM+RC滤波实现DAC功能。
然而,这种实现方法需要截止频率很低的低通滤波器,DAC输出的滞后也将增加,响应时间变长,响应速度变慢。传统解决方法就是减少单片机的计数脉冲宽度,即提高单片机的工作频率,但在实际中,这中解决方法受到单片机时钟和PWM后续电路开关特性的限制。对应需要微秒级,甚至更高级别响应速度的系统,实际电路的典型PWM+RC滤波输出DAC响应速度不能满足系统需求。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种基于PWM模拟DAC功能的方法,能够提高响应速度。
本发明还提出一种具有上述基于PWM模拟DAC功能的方法的数模转换电路。
本发明还提出一种具有上述基于PWM模拟DAC功能的方法的存储介质。
根据本发明第一方面实施例的基于PWM模拟DAC功能的方法,包括以下步骤:获取第一PWM信号的位数W1,以及用于构成所述第一PWM信号的第二PWM信号的位数W2;根据所述位数W1和所述位数W2,确定构成一个所述第一PWM信号需要的第二PWM信号的个数A;获取所述第一PWM信号的信号参数H1;根据所述信号参数H1,确定所述第二PWM信号的信号参数H2;根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号。
根据本发明实施例的基于PWM模拟DAC功能的方法,至少具有如下有益效果:控制单元获取第一PWM信号的位数W1,以及第二PWM信号的位数W2,第二PWM信号用于构成第一PWM信号,根据位数W1和位数W2计算得到构成一个第一PWM信号所需要的第二PWM信号的个数A,以便于用位数较低的第二PWM信号构成位数较高的第一PWM信号。控制单元获取第一PWM信号的信号参数H1,从而确定第二PWM信号的信号参数H2,根据位数W2可以得到第二PWM信号的计数脉冲的个数K21,结合控制单元的计数脉冲的基本周期T,得到第二PWM信号的周期T2,从而输出A个第二PWM信号,而A个第二PWM信号构成一个第一PWM信号,即周期T2小于第一PWM信号的周期T1,使得谐波频率提高,则使低通滤波器截止频率提高,从而减小DAC输出的相位滞后,进而提高响应速度。
根据本发明的一些实施例,所述获取所述第一PWM信号的信号参数H1,包括:获取所述第一PWM信号的高电平计数脉冲的个数K12,以便于确定第二PWM信号的第一高电平计数脉冲的个数K22。
根据本发明的一些实施例,所述根据所述信号参数H1,确定所述第二PWM信号的信号参数H2,包括:根据所述高电平计数脉冲的个数K12和所述第二PWM信号的个数A,确定所述第二PWM信号的第一高电平计数脉冲的个数K22,以及所述第二PWM信号的第二高电平计数脉冲的个数B,所述第二高电平计数脉冲的个数B小于所述第二PWM信号的个数A,以便于确定第二PWM信号的波形。
根据本发明的一些实施例,所述根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,包括:根据所述位数W2、所述第一高电平计数脉冲的个数K22和所述第二高电平计数脉冲的个数B,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,以便于通过第二PWM信号来构成第一PWM信号。
根据本发明的一些实施例,当所述第二高电平计数脉冲的个数B等于0,则所述第二PWM信号的表达式为:f1(t)表示所述第二高电平计数脉冲的个数B为0的所述第二PWM信号的表达式,VH为高电平电压值,VL为低电平电压值,k为谐波次数,M是计数脉冲的个数K21,T是计数脉冲的基本周期,t是时间,m是第一高电平计数脉冲的个数K22,以便于通过第二PWM信号来构成第一PWM信号。
根据本发明的一些实施例,当所述第二高电平计数脉冲的个数B大于0,则A个所述第二PWM信号中,至少有一个所述第二PWM信号的所述第二高电平计数脉冲的个数B大于0,以便于通过第二PWM信号来构成第一PWM信号。
根据本发明的一些实施例,所述第二PWM信号的个数A为4,当所述第二高电平计数脉冲的个数B等于1,则所述第二PWM信号的表达式为:当所述第二高电平计数脉冲的个数B等于2,则所述第二PWM信号的表达式为:
f2(t)表示所述第二高电平计数脉冲的个数B为1的所述第二PWM信号的表达式,f3(t)表示所述第二高电平计数脉冲的个数B为2的所述第二PWM信号的表达式,f4(t)表示所述第二高电平计数脉冲的个数B为3的所述第二PWM信号的表达式,VH为高电平电压值,VL为低电平电压值,k为谐波次数,M是计数脉冲的个数K21,T是计数脉冲的基本周期,t是时间,m是第一高电平计数脉冲的个数K22,以便于通过第二PWM信号来构成第一PWM信号。
根据本发明的一些实施例,所述获取所述第一PWM信号的信号参数H1,包括:获取所述第一PWM信号的低电平计数脉冲的个数K13;所述根据所述信号参数H1,确定所述第二PWM信号的信号参数H2,包括:根据所述低电平计数脉冲的个数K13和所述第二PWM信号的个数A,确定所述第二PWM信号的第一低电平计数脉冲的个数K23,以及所述第二PWM信号的第二低电平计数脉冲的个数C,所述第二低电平计数脉冲的个数C小于所述第二PWM信号的个数A;所述根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,包括:根据所述位数W2、所述第一低电平计数脉冲的个数K23和所述第二低电平计数脉冲的个数C,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号;或者,所述获取所述第一PWM信号的信号参数H1,包括:获取所述第一PWM信号的占空比L1;所述根据所述信号参数H1,确定所述第二PWM信号的信号参数H2,包括:根据所述占空比L1,确定所述第二PWM信号的占空比L2;所述根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,包括:根据所述位数W2和所述占空比L2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,以便于通过第二PWM信号来构成第一PWM信号。
根据本发明第二方面实施例的数模转换电路,包括第一RC回路、第二RC回路、控制单元和存储在所述控制单元上并在所述控制单元上运行的计算机程序,所述控制单元的PWM输出端与所述第一RC回路的输入端连接,所述第一RC回路的输出端与所述第二RC回路的输入端连接,所述控制单元执行所述计算机程序时实现第一方面的全部或部分所述的基于PWM模拟DAC功能的方法。
根据本发明实施例的数模转换电路,至少具有如下有益效果:通过控制单元实现基于PWM模拟DAC功能的方法,输出的第二PWM波的位数更低,提高数模转换电路的响应速度。
根据本发明第二方面实施例的存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行第一方面的全部或部分所述的基于PWM模拟DAC功能的方法。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例的基于PWM模拟DAC功能的方法的流程图;
图2为图1所示的基于PWM模拟DAC功能的方法的具体流程图之一;
图3为图1所示的基于PWM模拟DAC功能的方法的具体流程图之二;
图4为图1所示的基于PWM模拟DAC功能的方法的具体流程图之三;
图5为本发明实施例的基于PWM模拟DAC功能的方法的波形示意图;
图6为本发明实施例的数模转换电路的示意图。
附图标记如下:
第一RC回路600、第二RC回路700、控制单元800、计算机程序。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个及两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
信号参数指PWM信号的占空比、高电平计数脉冲的个数或者低电平计数脉冲的个数。占空比、高电平计数脉冲的个数和低电平计数脉冲的个数,这三者可以通过公式互相转换得到,即,这三者之间知道其中一个信号参数,结合PWM信号的位数,则可以计算得到另外两个信号参数。在同一个PWM信号中,位数与计数脉冲的关系满足:K=2W,占空比与高电平计数脉冲的关系满足:KH=L×K,占空比与低电平计数脉冲的个数的关系满足:KL=(1-L)×K,高电平计数脉冲的个数与低电平计数脉冲的个数的关系满足:K=KH+KL,其中KH表示高电平计数脉冲的个数,KL表示低电平计数脉冲的个数,K表示计数脉冲的个数,L表示占空比,W表示位数。
第一方面
参照图1,基于PWM模拟DAC功能的方法,包括以下步骤:步骤S100、步骤S200、步骤S300、步骤S400和步骤S500。
步骤S100,获取第一PWM信号的位数W1,以及用于构成第一PWM信号的第二PWM信号的位数W2。
步骤S200,根据位数W1和位数W2,确定构成一个第一PWM信号需要的第二PWM信号的个数A。
具体地,控制单元获取第一PWM信号的位数W1和第二PWM信号的位数W2,位数W1大于位数W2,再通过计算式(1):计算得到第二PWM信号的个数A,第二PWM信号用于构成第一PWM信号,则构成一个第一PWM信号需要A个第二PWM信号,即控制单元依次输出A个第二PWM信号相当于输出一个第一PWM信号。
需要说明的是,控制单元获取位数W1,通过计算式(2):K11=2W1,可以计算得到第一PWM信号的计数脉冲的个数K11;控制单元获取位数W2,通过计算式(3):K21=2W2,或者计算式(4):可以计算得到第二PWM信号的计数脉冲的个数K21。
需要说明的是,控制单元包括单片机、PLC、FPGA等。
步骤S300,获取第一PWM信号的信号参数H1。
步骤S400,根据信号参数H1,确定第二PWM信号的信号参数H2。
具体地,控制单元获取第一PWM信号的信号参数H1,即获取第一PWM信号的占空比L1、高电平计数脉冲K12和低电平计数脉冲K13中的一个。根据信号参数H1,控制单元可以得到第二PWM信号的信号参数H2,即得到第二PWM信号的占空比L2、高电平计数脉冲K22和低电平计数脉冲K23中的一个。
步骤S500,根据位数W2和信号参数H2,输出由A个连续的第二PWM信号构成的第一PWM信号。
具体地,控制单元根据位数W2,则可以通过计算式(3)或计算式(4)得到计数脉冲的个数K21。由于控制单元输出一个计数脉冲的时间是固定的,即计数脉冲的基本周期T是确定的,则根据计算式(5):T2=K21×T,控制单元得到第二PWM信号的周期T2,再根据信号参数H2,即根据占空比L2、高电平计数脉冲K22和低电平计数脉冲K23中的任一个,可以确定第二PWM信号的波形,则控制单元可以输出第二PWM信号,并且输出A个连续的第二PWM信号相当于输出一个第一PWM信号。因此,A个周期T2的总和等于第一PWM信号的周期T1,即周期T2小于周期T1,从而减小了谐波周期,即提高了谐波频率,进而可以提高低通滤波器的截止频率,以减小DAC输出的相位滞后,减小RC滤波器的时间常数,使电路的响应速度得到提高,以满足系统对响应速度的需求。
参照图2,步骤S300包括步骤S310。
步骤S310,获取第一PWM信号的高电平计数脉冲的个数K12。
具体地,控制单元可以先获取第一PWM信号的占空比L1,再结合计数脉冲的个数K11,即通过计算式(6):K12=K11×L1,得到高电平计数脉冲的个数K12;也可以直接获取高电平计数脉冲的个数K12;还可以获取低电平计数脉冲的个数K13,由于PWM信号由高电平计数脉冲和低电平计数脉冲组成,则有计算式(7):K11=K12+K13,通过计算式(7)得到高电平计数脉冲的个数K12。
参照图2,步骤S400包括步骤S410。
步骤S410,根据高电平计数脉冲的个数K12和第二PWM信号的个数A,确定第二PWM信号的第一高电平计数脉冲的个数K22,以及第二PWM信号的第二高电平计数脉冲的个数B,第二高电平计数脉冲的个数B小于第二PWM信号的个数A。
具体地,通过步骤S310,控制单元获得了高电平计数脉冲的个数K12,将高电平计数脉冲的个数K12除以第二PWM信号的个数A得到第一高电平计数脉冲的个数K22,以及余数,余数用于表示第二高电平计数脉冲的个数B,则一个第二PWM信号中,包括第一高电平计数脉冲和第二高电平计数脉冲。
参照图2,步骤S500包括步骤S510。
步骤S510,根据位数W2、第一高电平计数脉冲的个数K22和第二高电平计数脉冲的个数B,输出由A个连续的第二PWM信号构成的第一PWM信号。
具体地,控制单元获取了第二PWM信号的位数W2,则可以计算得到计数脉冲的个数K21;控制单元还获取了第一高电平计数脉冲的个数K22和第二高电平计数脉冲的个数B;从而控制单元输出K21个计数脉冲,其中包括K22个第一高电平计数脉冲和B个第二高电平计数脉冲,则控制单元输出一个第二PWM信号。当控制单元依次输出A个第二PWM信号,则相当于输出一个第一PWM信号,即以A个连续输出的第二PWM信号为一组,构成一个第一PWM信号,以确保DAC输出性能保持或提高。此外,由于第一PWM信号由A个第二PWM信号构成,第二PWM信号的周期T2小于第一PWM信号的周期T1,则谐波频率增加,从而可以提高低通滤波器的截止频率,进而减小DAC输出的相位滞后,减小RC滤波器的时间常数,以便于提高响应速度,满足系统对响应速度的需求。
需要说明的是,当余数为0,即第二高电平计数脉冲的个数B为0,则第二PWM信号中不存在第二高电平计数脉冲,第二PWM信号的表达式为:f1(t)表示第二高电平计数脉冲的个数B为0的第二PWM信号的表达式,VH为高电平电压值,VL为低电平电压值,k为谐波次数,M是计数脉冲的个数K21,T是计数脉冲的基本周期,t是时间,m是第一高电平计数脉冲的个数K22,以使DAC的输出性能保持或提高。
参照图5,以10位的第二PWM信号构成12位的第一PWM信号为例,则需要4个第二PWM信号来构成第一PWM信号,计数脉冲的个数K11为4096,计数脉冲的个数K21为1024。图5中,经典方式是指以传统的输出方式输出的第一PWM信号,例如,根据第一PWM信号的位数W1和占空比L1,输出第一PWM信号。当余数为0,即第二高电平计数脉冲的个数B为0,则控制单元以方式1的输出方式来输出第二PWM信号,例如,高电平计数脉冲的个数K12为1024,则第一高电平计数脉冲的个数K22为256,第二高电平计数脉冲的个数B为0。
当余数为1,即第二高电平计数脉冲的个数B为1,则控制单元以方式2的输出方式来输出第二PWM信号,表达式为:
f2(t)表示第二高电平计数脉冲的个数B为1的第二PWM信号的表达式。参照图5,在4个连续的第二PWM信号中,由于第二高电平计数脉冲的个数B为1,则将第二高电平计数脉冲叠加到其中一个第二PWM信号上,即在4个连续的第二PWM信号中,一个第二PWM信号包括K22个第一高电平计数脉冲和1个第二高电平计数脉冲,另外三个第二PWM信号包括K22个第一高电平计数脉冲和0个第二高电平计数脉冲。此外,包括1个第二高电平计数脉冲的第二PWM信号可以是4个连续的第二PWM信号中的任意一个。
当第二高电平计数脉冲的个数B为2,则控制单元以方式3的输出方式来输出第二PWM信号,表达式为:f3(t)表示第二高电平计数脉冲的个数B为2的第二PWM信号的表达式。参照图5,在4个连续的第二PWM信号中,由于第二高电平计数脉冲的个数B为2,则将2个第二高电平计数脉冲分别叠加到第一个第二PWM信号和第三个第二PWM信号上,即在4个连续的第二PWM信号中,两个第二PWM信号包括K22个第一高电平计数脉冲和1个第二高电平计数脉冲,另外两个第二PWM信号包括K22个第一高电平计数脉冲和0个第二高电平计数脉冲。此外,也可以将2个第二高电平计数脉冲叠加到同一个第二PWM信号上,即至少有一个第二PWM信号的第二高电平计数脉冲的个数B大于0。
当第二高电平计数脉冲的个数B为3,则控制单元以方式4的输出方式来输出第二PWM信号,表达式为:f4(t)表示第二高电平计数脉冲的个数B为3的第二PWM信号的表达式。参照图5,在4个连续的第二PWM信号中,由于第二高电平计数脉冲的个数B为3,则将3个第二高电平计数脉冲分别叠加到第一个第二PWM信号、第二个第二PWM信号和第三个第二PWM信号上,即在4个连续的第二PWM信号中,三个第二PWM信号包括K22个第一高电平计数脉冲和1个第二高电平计数脉冲,另外一个第二PWM信号包括K22个第一高电平计数脉冲和0个第二高电平计数脉冲。此外,也可以将3个第二高电平计数脉冲叠加到同一个第二PWM信号上,即至少有一个第二PWM信号的第二高电平计数脉冲的个数B大于0。
需要说明的是,当第二高电平计数脉冲的个数B大于0,则A个第二PWM信号中,至少有一个第二PWM信号的第二高电平计数脉冲的个数B大于0。以第一高电平计数脉冲的个数K22是128,4个10位的第二PWM信号构成1个12位的第一PWM信号为例。
当第二高电平计数脉冲的个数B为0,则4个连续的第二PWM信号中,任意一个第二PWM信号都包括128个高电平计数脉冲。
当第二高电平计数脉冲的个数B为1,则4个连续的第二PWM信号中,其中一个第二PWM信号包括129个高电平计数脉冲,另外三个第二PWM信号包括128个高电平计数脉冲。
当第二高电平计数脉冲的个数B为2,则4个连续的第二PWM信号中,其中两个第二PWM信号包括129个高电平计数脉冲,另外两个第二PWM信号包括128个高电平计数脉冲;或者,其中一个第二PWM信号包括130个高电平计数脉冲,另外三个第二PWM信号包括128个高电平计数脉冲。
当第二高电平计数脉冲的个数B为3,则4个连续的第二PWM信号中,其中三个第二PWM信号包括129个高电平计数脉冲,另外一个第二PWM信号包括128个高电平计数脉冲;或者,其中一个第二PWM信号包括130个高电平计数脉冲,其中一个第二PWM信号包括129个高电平计数脉冲,另外两个第二PWM信号包括128个高电平计数脉冲;又或者,其中一个第二PWM信号包括131个高电平计数脉冲,另外三个第二PWM信号包括128个高电平计数脉冲。
参照图3,步骤S300包括步骤S320,步骤S400包括步骤S420,步骤S500包括步骤S520。
步骤S320,获取第一PWM信号的低电平计数脉冲的个数K13。
步骤S420,根据低电平计数脉冲的个数K13和第二PWM信号的个数A,确定第二PWM信号的第一低电平计数脉冲的个数K23,以及第二PWM信号的第二低电平计数脉冲的个数C,第二低电平计数脉冲的个数C小于第二PWM信号的个数A。
步骤S520,根据位数W2、第一低电平计数脉冲的个数K23和第二低电平计数脉冲的个数C,输出由A个连续的第二PWM信号构成的第一PWM信号。
具体地,步骤S310、步骤S410和步骤S510通过第一PWM信号的高电平计数脉冲的个数K12,得到第一高电平计数脉冲的个数K22和第二高电平计数脉冲的个数B,从而输出由A个连续的第二PWM信号构成的第一PWM信号;而步骤S320、步骤S410和步骤S520通过第一PWM信号的低电平计数脉冲的个数K13,得到第一低电平计数脉冲的个数K23和第二低电平计数脉冲的个数C,从而输出由A个连续的第二PWM信号构成的第一PWM信号。
此外,由于PWM信号由高电平计数脉冲和低电平计数脉冲构成,当第一PWM信号的位数W1确定,则控制单元获取第一PWM信号的低电平计数脉冲的个数K13,可以计算得到高电平计数脉冲的个数K12,即在步骤S320、步骤S420和步骤S520中,控制单元获取低电平计数脉冲的个数K13后,可以计算得到高电平计数脉冲的个数K12,再利用步骤S310、步骤S410和步骤S510来实现输出由A个连续的第二PWM信号构成的第一PWM信号,即步骤S320、步骤S420和步骤S520的实现原理与步骤S310、步骤S410和步骤S510的实现原理相同,故而在此不再叙述。
参照图4,步骤S300包括步骤S330,步骤S400包括步骤S430,步骤S500包括步骤S530。
步骤S330,获取第一PWM信号的占空比L1。
步骤S430,根据占空比L1,确定第二PWM信号的占空比L2。
具体地,控制单元通过获取第一PWM信号的占空比L1,进而确定第二PWM信号的占空比L2。此外,A个占空比L2的平均值等于占空比L1的数值。例如,占空比L1为40%,则设置占空比L2为40%;或者,占空比L1为50%,则设置占空比L2为50%;又或者,占空比L1为50%,4个占空比L2分别为40%,60%,40%,60%,则4个占空比L2的平均值为50%,以确保A个第二PWM信号构成占空比为L1的第一PWM信号。
步骤S530,根据位数W2和占空比L2,输出由A个连续的第二PWM信号构成的第一PWM信号。
具体地,控制单元获取第二PWM信号的位数W2,则可以通过计算式(3)或计算式(4)得到计数脉冲的个数K21。由于控制单元输出一个计数脉冲的时间是固定的,即计数脉冲的基本周期T是确定的,控制单元可以根据计算式(5)得到第二PWM信号的周期T2。结合占空比L2,控制单元则可以输出第二PWM信号,并且输出A个连续的第二PWM信号相当于输出一个第一PWM信号。因此,A个周期T2的总和等于第一PWM信号的周期T1,即周期T2小于周期T1,从而减小了谐波周期,即提高了谐波频率,进而可以提高低通滤波器的截止频率,以减小DAC输出的相位滞后,减小RC滤波器的时间常数,使电路的响应速度得到提高,以满足系统对响应速度的需求。
第二方面
参照图6,一种数模转换电路,包括第一RC回路600、第二RC回路700、控制单元800和存储在控制单元800上并在控制单元800上运行的计算机程序,控制单元800的PWM输出端与第一RC回路600的输入端连接,第一RC回路600的输出端与第二RC回路700的输入端连接,控制单元800执行计算机程序时实现第一方面的基于PWM模拟DAC功能的方法。具体地,通过控制单元800实现第一方面的基于PWM模拟DAC功能的方法,可以使DAC输出性能保持不变或提高的情况下,提高谐波频率,从而提高低通滤波器的截止频率,进而减小DAC输出的相位滞后,减小RC滤波器的时间常数,以提高响应速度,满足系统对响应速度的需求。
第三方面
一种存储介质,存储有计算机可执行指令,计算机可执行指令用于使计算机执行第一方面的基于PWM模拟DAC功能的方法。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (10)
1.基于PWM模拟DAC功能的方法,其特征在于,包括以下步骤:
获取第一PWM信号的位数W1,以及用于构成所述第一PWM信号的第二PWM信号的位数W2;
根据所述位数W1和所述位数W2,确定构成一个所述第一PWM信号需要的所述第二PWM信号的个数A;
获取所述第一PWM信号的信号参数H1;
根据所述信号参数H1,确定所述第二PWM信号的信号参数H2;
根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号。
2.根据权利要求1所述的基于PWM模拟DAC功能的方法,其特征在于,所述获取所述第一PWM信号的信号参数H1,包括:
获取所述第一PWM信号的高电平计数脉冲的个数K12。
3.根据权利要求2所述的基于PWM模拟DAC功能的方法,其特征在于,所述根据所述信号参数H1,确定所述第二PWM信号的信号参数H2,包括:
根据所述高电平计数脉冲的个数K12和所述第二PWM信号的个数A,确定所述第二PWM信号的第一高电平计数脉冲的个数K22,以及所述第二PWM信号的第二高电平计数脉冲的个数B,所述第二高电平计数脉冲的个数B小于所述第二PWM信号的个数A。
4.根据权利要求3所述的基于PWM模拟DAC功能的方法,其特征在于,所述根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,包括:
根据所述位数W2、所述第一高电平计数脉冲的个数K22和所述第二高电平计数脉冲的个数B,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号。
6.根据权利要求3或4中任一项所述的基于PWM模拟DAC功能的方法,其特征在于,当所述第二高电平计数脉冲的个数B大于0,则A个所述第二PWM信号中,至少有一个所述第二PWM信号的所述第二高电平计数脉冲的个数B大于0。
7.根据权利要求6所述的基于PWM模拟DAC功能的方法,其特征在于,所述第二PWM信号的个数A为4,当所述第二高电平计数脉冲的个数B等于1,则所述第二PWM信号的表达式为:当所述第二高电平计数脉冲的个数B等于2,则所述第二PWM信号的表达式为:当所述第二高电平计数脉冲的个数B等于3,则所述第二PWM信号的表达式为:f2(t)表示所述第二高电平计数脉冲的个数B为1的所述第二PWM信号的表达式,f3(t)表示所述第二高电平计数脉冲的个数B为2的所述第二PWM信号的表达式,f4(t)表示所述第二高电平计数脉冲的个数B为3的所述第二PWM信号的表达式,VH为高电平电压值,VL为低电平电压值,k为谐波次数,M是计数脉冲的个数K21,T是计数脉冲的基本周期,t是时间,m是第一高电平计数脉冲的个数K22。
8.根据权利要求1所述的基于PWM模拟DAC功能的方法,其特征在于,所述获取所述第一PWM信号的信号参数H1,包括:
获取所述第一PWM信号的低电平计数脉冲的个数K13;
所述根据所述信号参数H1,确定所述第二PWM信号的信号参数H2,包括:
根据所述低电平计数脉冲的个数K13和所述第二PWM信号的个数A,确定所述第二PWM信号的第一低电平计数脉冲的个数K23,以及所述第二PWM信号的第二低电平计数脉冲的个数C,所述第二低电平计数脉冲的个数C小于所述第二PWM信号的个数A;
所述根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,包括:
根据所述位数W2、所述第一低电平计数脉冲的个数K23和所述第二低电平计数脉冲的个数C,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号;
或者,所述获取所述第一PWM信号的信号参数H1,包括:
获取所述第一PWM信号的占空比L1;
所述根据所述信号参数H1,确定所述第二PWM信号的信号参数H2,包括:
根据所述占空比L1,确定所述第二PWM信号的占空比L2;
所述根据所述位数W2和所述信号参数H2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号,包括:
根据所述位数W2和所述占空比L2,输出由A个连续的所述第二PWM信号构成的所述第一PWM信号。
9.一种数模转换电路,其特征在于,包括第一RC回路、第二RC回路、控制单元和存储在所述控制单元上并在所述控制单元上运行的计算机程序,所述控制单元的PWM输出端与所述第一RC回路的输入端连接,所述第一RC回路的输出端与所述第二RC回路的输入端连接,所述控制单元执行所述计算机程序时实现如权利要求1至8中任一项所述的基于PWM模拟DAC功能的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至8中任一项所述的基于PWM模拟DAC功能的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011596182.5A CN112671410A (zh) | 2020-12-29 | 2020-12-29 | 基于pwm模拟dac功能的方法、数模转换电路和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011596182.5A CN112671410A (zh) | 2020-12-29 | 2020-12-29 | 基于pwm模拟dac功能的方法、数模转换电路和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112671410A true CN112671410A (zh) | 2021-04-16 |
Family
ID=75411995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011596182.5A Pending CN112671410A (zh) | 2020-12-29 | 2020-12-29 | 基于pwm模拟dac功能的方法、数模转换电路和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112671410A (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0613231U (ja) * | 1992-07-17 | 1994-02-18 | 三洋電機株式会社 | ディジタル/アナログ変換装置 |
US6191722B1 (en) * | 1999-01-14 | 2001-02-20 | Setra Systems, Inc. | Pulse width modulation digital to analog converter |
JP2003101413A (ja) * | 2001-09-25 | 2003-04-04 | Ricoh Co Ltd | Da変換器 |
JP2003249854A (ja) * | 2002-02-22 | 2003-09-05 | Seiko Epson Corp | ディジタル/アナログ変換回路 |
CN1636322A (zh) * | 1999-07-09 | 2005-07-06 | 特利泰尔R&D丹麦有限公司 | 数模转换装置 |
CN101320977A (zh) * | 2008-04-18 | 2008-12-10 | 段志刚 | Pwm通道合成高数位da的方法及其电路 |
EP2081295A1 (en) * | 2008-01-21 | 2009-07-22 | Robert Bosch Gmbh | A device and a method for generating a PWM signal and a system using a PWM signal |
CN102916702A (zh) * | 2012-09-29 | 2013-02-06 | 西安龙腾新能源科技发展有限公司 | 一种基于dsp的pwm引脚实现的数模转换方法 |
FR2999836A1 (fr) * | 2012-12-18 | 2014-06-20 | Sagem Defense Securite | Procede de conversion numerique analogique a modulation de largeur d'implulsion optimise |
CN105913809A (zh) * | 2016-05-30 | 2016-08-31 | 武汉精测电子技术股份有限公司 | 一种调整液晶模组背光亮度的装置及方法 |
CN109274369A (zh) * | 2018-08-29 | 2019-01-25 | 苏州瑞迈斯医疗科技有限公司 | 一种闪烁脉冲数字化的方法及装置 |
CN111490760A (zh) * | 2020-05-19 | 2020-08-04 | 广东海悟科技有限公司 | 基于pwm波形的单片机高精度模拟量输出方法、装置、设备 |
-
2020
- 2020-12-29 CN CN202011596182.5A patent/CN112671410A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0613231U (ja) * | 1992-07-17 | 1994-02-18 | 三洋電機株式会社 | ディジタル/アナログ変換装置 |
US6191722B1 (en) * | 1999-01-14 | 2001-02-20 | Setra Systems, Inc. | Pulse width modulation digital to analog converter |
CN1636322A (zh) * | 1999-07-09 | 2005-07-06 | 特利泰尔R&D丹麦有限公司 | 数模转换装置 |
JP2003101413A (ja) * | 2001-09-25 | 2003-04-04 | Ricoh Co Ltd | Da変換器 |
JP2003249854A (ja) * | 2002-02-22 | 2003-09-05 | Seiko Epson Corp | ディジタル/アナログ変換回路 |
EP2081295A1 (en) * | 2008-01-21 | 2009-07-22 | Robert Bosch Gmbh | A device and a method for generating a PWM signal and a system using a PWM signal |
CN101320977A (zh) * | 2008-04-18 | 2008-12-10 | 段志刚 | Pwm通道合成高数位da的方法及其电路 |
CN102916702A (zh) * | 2012-09-29 | 2013-02-06 | 西安龙腾新能源科技发展有限公司 | 一种基于dsp的pwm引脚实现的数模转换方法 |
FR2999836A1 (fr) * | 2012-12-18 | 2014-06-20 | Sagem Defense Securite | Procede de conversion numerique analogique a modulation de largeur d'implulsion optimise |
CN105913809A (zh) * | 2016-05-30 | 2016-08-31 | 武汉精测电子技术股份有限公司 | 一种调整液晶模组背光亮度的装置及方法 |
CN109274369A (zh) * | 2018-08-29 | 2019-01-25 | 苏州瑞迈斯医疗科技有限公司 | 一种闪烁脉冲数字化的方法及装置 |
CN111490760A (zh) * | 2020-05-19 | 2020-08-04 | 广东海悟科技有限公司 | 基于pwm波形的单片机高精度模拟量输出方法、装置、设备 |
Non-Patent Citations (1)
Title |
---|
于进杰等: "基于单片机的PWM 转D/A 输出模块的设计", 《科技视界》, no. 23, 15 August 2017 (2017-08-15), pages 112 - 113 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5337338A (en) | Pulse density modulation circuit (parallel to serial) comparing in a nonsequential bit order | |
CN101689852B (zh) | 具有经改善的脉宽调制频率分辨率的系统、方法及设备 | |
CN104038048B (zh) | 升压转换器 | |
US11063577B2 (en) | Pulse width modulation technique with time-ratio duty cycle computation | |
TWI387188B (zh) | 輸入串聯輸出並聯的多個變換器之結構的控制方法 | |
CN105205242A (zh) | 一种空间矢量pwm谐波分析方法 | |
CN102684495B (zh) | 一种数字电源控制电路、控制方法以及应用其的数字电源 | |
CN112671410A (zh) | 基于pwm模拟dac功能的方法、数模转换电路和存储介质 | |
CN101594146B (zh) | 锁相环电路 | |
CN110086197B (zh) | 电感电流采样计算方法 | |
CN109857188B (zh) | 一种基于dds的脉冲波产生方法、装置及其系统 | |
CN214315114U (zh) | 微步电机计数序列电路 | |
JPH05167450A (ja) | アナログ・デジタル変換回路 | |
JP5334927B2 (ja) | Ledコントローラ、ledの制御回路及び制御方法 | |
CN112072967B (zh) | 一种电机驱动脉冲产生方法、装置及可读存储介质 | |
CN209486540U (zh) | 一种脉冲波产生电路 | |
US7480331B2 (en) | Method and device for pulse width modulation | |
CN110235373A (zh) | D/a转换设备、方法、存储介质、电子乐器和信息处理装置 | |
CN107579726A (zh) | 一种提高计数器型数字脉宽调制器输出精度的方法 | |
CN118713631A (zh) | 边沿时间可调信号发生器和生成边沿时间可调信号的方法 | |
KR101768603B1 (ko) | 주파수와 듀티가 변화하는 인버터 제어용 pwm 신호 발생기 | |
JP2003101413A (ja) | Da変換器 | |
CN118566703B (zh) | 一种亚稳态实时监测并动态校正的系统及方法 | |
CN202663301U (zh) | 一种数字电源控制电路以及应用其的数字电源 | |
CN117948296A (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 |