最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
mangui zhang:
第一个没有问题啊 TI给的可能不在一个结构体里面体现而已
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
Yang Cao4:
回复 mangui zhang:
I don't understand what you said,but you should detect it in your computer or controlSUIT before reply me.
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
yun long2:
回复 Yang Cao4:
PWMSYNC是PWM里面的同步信号,在ePWM模块里面设置,一般在计数器COUNT=0或者COUNT=周期值,或者软件同步,或者,前面模块的PWMSYNC信号输入产生的,在这里它只是一个斜坡信号输入同步的一个复位信号,或者比较输出复位的一个同步信号,考虑其宽度没有多少意义,只要是信号边沿。
你说的输出,能否具体一下,不知道怎么理解。
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
Yang Cao4:
回复 yun long2:
Thanks for your help,yunlong2
@1:以下是来源于“SPRUGE5”<TMS320x2802x, 2803x Piccolo Analog-to-DigitalConverter (ADC) and Comparator >中的关于PWMSYNC 信号宽度的说明。
"The PWMSYNC signal width must be greater than SYSCLK to ensure that the ramp generator is able to detect the PWMSYNC signal."
@2:RAMPSTS是高10位输出到DAC,但是我们可以看到RAMPSTS的输入信号一共有4个,输出信号2个(箭头指向),那么关键的问题是RAMPSTS的输出值是由谁决定?
best regards
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
yun long2:
回复 Yang Cao4:
你的那张原理图画的不太好,这是f280049上面关于CMPSS模块RAMP的解释,简而言之就是:
RAMPSTS是个16位的寄存器,12位用来给DACxVALA寄存器,因为它是12位,后面的4位作为递减时候的预定标,就是控制减的速率(这里面TI没有给出怎么控制的解释),RAMPMAXREFA是刚开始在PWMSYNC同步的时候给RAMPSTS的最大值,接下,如果出现PWMSYNC信号表示谐波开始递减,递减的时钟是SYSCLK, RAMPSTS的高12位减去RAMPDECVALA中的值,后面结果还是放在RMAPSTS中,RMAPSTS再把这个值放在DACVALA中。
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
yun long2:
回复 yun long2:
你是做DC-DC峰值电流控制的吗?否则RAMP比较的用到的不多?
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
Yang Cao4:
回复 yun long2:
Thanks yun long2
是的,我准备采用峰值电流控制去解决推挽电拓扑磁偏问题,TI在Piccolo系列的2802x中对Ramp Generator的解释不尽如人意,查了很多资料发现没有讲清楚相关寄存器运转机制,您描述的“RAMPSTS是个16位的寄存器,12位用来给DACxVALA寄存器,因为它是12位,后面的4位作为递减时候的预定标,就是控制减的速率(这里面TI没有给出怎么控制的解释)”我是一直有疑问的,比如我电压外环输出值需要更新到RAMPMAXREF_ACTIVE中去RAMPMAXREF_ACTIVE再经过斜坡补偿放入DAC模块中去,但是电压外环输出是12位的数字值,RAMPMAXREF_ACTIVE是16位的但是只存高10位,而DAC是10位的,那么这中间的转换关系是怎么样的呢?
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
yun long2:
回复 Yang Cao4:
我的意思280049是12位的DACxVALA,假设你DAC参考电压为3V,那么你只能在CMPSS引脚比较电压为范围为0-3V,RAMPSTS是16位,但是其中的12位用来实时输出斜坡寄存器的值,RAMPSTS的高12位输入到DACxVALA了,RAMPSTS的后4位用来控制斜坡的递减速率。
针对你的问题,我个人感觉可以从下面方面是否可以解决,你的电压环输出值是基于ADC采样参考值的,一般采样完了要标幺值,而你的DAC输出是基于DAC参考电压的,采样标幺值去试一下,但是要注意ADC采样参考电压与DAC参考电压的匹配,这只是我个人的思路,不知是否可以。
最近正在使用TMS320F2802x系列的芯片的 on-chip comporator来做峰值电流控制,但是这种片内模拟比价器使用的时候发现TI官方给出的头文件寄存器虎头蛇尾没给全,以下是TI给出的寄存器定义:
struct COMP_REGS {
union COMPCTL_REG COMPCTL;
Uint16 rsvd1;
union COMPSTS_REG COMPSTS;
Uint16 rsvd2[3];
union DACVAL_REG DACVAL;
Uint16 rsvd4[10];
};
但是这个定义与实际地址是对应不上的,实际寄存器的地址片段在DataSheet中如下图1所示:
图1 片内模拟比较器模块寄存器
以上是第一个问题,问题2,在TMS320F2802x的 on-chip comporator中有一个Ramp Generator Block,我需要他来做斜坡补偿,但是找了官方资料发现TI对这个模块功能讲的非常少,导致理解起来非常困难,想向各位老师请教,其Diagram如图2所示:
图2 斜坡补偿模块
问题1:PWMSYNC是什么信号?
问题2:PWMSYNC信号宽度怎么设定?
问题3:RAMPSTS一共有两个决定性的输入,其输出由哪个决定?
Yang Cao4:
回复 yun long2:
Thank you very much,yun long2
寄存器运转机制基本弄明白,谢谢你的idea,我也是采用了标幺化的处理方式,目前还在调试中,验证之后会来标定答案。
Best Wishes,
Yang Cao4