各位大侠们,你们有发现TI28035官方例程中,设置ADC采集A、B相电流寄存器设置和28035datasheet对应不上,f280xileg_vdc.c文件中的初始化的寄存器和资料中不对应,是不是我找错了,还请指正!!!
Young Hu:
哪儿对不上了?贴出来看看
各位大侠们,你们有发现TI28035官方例程中,设置ADC采集A、B相电流寄存器设置和28035datasheet对应不上,f280xileg_vdc.c文件中的初始化的寄存器和资料中不对应,是不是我找错了,还请指正!!!
Rogers:
void F280X_ileg2_dcbus_drv_init(ILEG2DCBUSMEAS *p) { DELAY_US(ADC_usDELAY); AdcRegs.ADCTRL1.all = ADC_RESET_FLAG; // Reset the ADC Module asm(" NOP "); asm(" NOP "); AdcRegs.ADCTRL3.bit.ADCBGRFDN = 0x3; // Power up bandgap/reference circuitry DELAY_US(ADC_usDELAY); // Delay before powering up rest of ADC AdcRegs.ADCTRL3.bit.ADCPWDN = 1; // Power up rest of ADC DELAY_US(ADC_usDELAY); AdcRegs.ADCTRL3.bit.ADCCLKPS = 16; // Set up ADCTRL3 register AdcRegs.ADCTRL1.all = ADCTRL1_INIT_STATE; // Set up ADCTRL1 register AdcRegs.ADCTRL2.all = ADCTRL2_INIT_STATE; // Set up ADCTRL2 register AdcRegs.ADCMAXCONV.bit.MAX_CONV1 = 2; // Specify three conversions AdcRegs.ADCCHSELSEQ1.all = p->ChSelect; // Configure channel selection AdcRegs.ADCREFSEL.all = 39; // Set up the ADC reference select register AdcRegs.ADCOFFTRIM.all = 65534; // Set up the ADC offset trim register // Set up Event Trigger with CNT_zero enable for Time-base of EPWM1 EPwm1Regs.ETSEL.bit.SOCAEN = 1; // Enable SOCA EPwm1Regs.ETSEL.bit.SOCASEL = 1; // Enable CNT_zero event for SOCA EPwm1Regs.ETPS.bit.SOCAPRD = 1; // Generate SOCA on the 1st event EPwm1Regs.ETCLR.bit.SOCA = 1; // Clear SOCA flag }
里面的寄存器大多都和28035中ADCGEG寄存器对不上,请您帮忙看看,28035ADC模块关于采集AB相电流的程序在哪可以找到??
各位大侠们,你们有发现TI28035官方例程中,设置ADC采集A、B相电流寄存器设置和28035datasheet对应不上,f280xileg_vdc.c文件中的初始化的寄存器和资料中不对应,是不是我找错了,还请指正!!!
Rogers:
void F280X_ileg2_dcbus_drv_init(ILEG2DCBUSMEAS *p)
{
DELAY_US(ADC_usDELAY);
AdcRegs.ADCTRL1.all = ADC_RESET_FLAG; // Reset the ADC Module
asm(" NOP ");
asm(" NOP ");
AdcRegs.ADCTRL3.bit.ADCBGRFDN = 0x3; // Power up bandgap/reference circuitry
DELAY_US(ADC_usDELAY); // Delay before powering up rest of ADC
AdcRegs.ADCTRL3.bit.ADCPWDN = 1; // Power up rest of ADC
DELAY_US(ADC_usDELAY);
AdcRegs.ADCTRL3.bit.ADCCLKPS = 16; // Set up ADCTRL3 register
AdcRegs.ADCTRL1.all = ADCTRL1_INIT_STATE; // Set up ADCTRL1 register
AdcRegs.ADCTRL2.all = ADCTRL2_INIT_STATE; // Set up ADCTRL2 register
AdcRegs.ADCMAXCONV.bit.MAX_CONV1 = 2; // Specify three conversions
AdcRegs.ADCCHSELSEQ1.all = p->ChSelect; // Configure channel selection
AdcRegs.ADCREFSEL.all = 39; // Set up the ADC reference select register
AdcRegs.ADCOFFTRIM.all = 65534; // Set up the ADC offset trim register
// Set up Event Trigger with CNT_zero enable for Time-base of EPWM1
EPwm1Regs.ETSEL.bit.SOCAEN = 1; // Enable SOCA
EPwm1Regs.ETSEL.bit.SOCASEL = 1; // Enable CNT_zero event for SOCA
EPwm1Regs.ETPS.bit.SOCAPRD = 1; // Generate SOCA on the 1st event
EPwm1Regs.ETCLR.bit.SOCA = 1; // Clear SOCA flag
}
这里的ADCREG寄存器里的位寄存器和28035芯片资料上的都对应不上,如AdcRegs.ADCREFSEL.all = 39; 而芯片资料上的ADCREG就没有ADCREFSEL这个位,ADCREFSEL是属于ADCCTL1寄存器中,请您帮忙看看
各位大侠们,你们有发现TI28035官方例程中,设置ADC采集A、B相电流寄存器设置和28035datasheet对应不上,f280xileg_vdc.c文件中的初始化的寄存器和资料中不对应,是不是我找错了,还请指正!!!
Rogers:
请求大侠们给予指点啊!!!
各位大侠们,你们有发现TI28035官方例程中,设置ADC采集A、B相电流寄存器设置和28035datasheet对应不上,f280xileg_vdc.c文件中的初始化的寄存器和资料中不对应,是不是我找错了,还请指正!!!
Terry Deng:
请下载最新版的controlsuite,在里面的例程应该都是对的
各位大侠们,你们有发现TI28035官方例程中,设置ADC采集A、B相电流寄存器设置和28035datasheet对应不上,f280xileg_vdc.c文件中的初始化的寄存器和资料中不对应,是不是我找错了,还请指正!!!
Rogers:
谢谢各位的回答,确实我的错了,我贴出来的不是从controlsuite里找的,是直接从TI官网关于28035的应用中PMSM3_4中关于场定向控制使用QEP的例程,里面有关于A、B相电流的采集,但是寄存器确实对不上,例程不是针对28035的,那你们知道TI官网有关于28035对应的磁场定向控制的代码吗?