This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28379D:我的实验套件中的 ADCD 无响应

Guru**** 2599045 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/675474/tms320f28379d-adcd-not-responding-in-my-experimenter-kit

器件型号:TMS320F28379D

您好!

我更新了 C28xx 实验套件中的 LAB7示例、以包含 ADCA0、ADCC0和 ADCD0以及 ADCA0。 当我调试代码并在我的实验套件上运行时、ADCC0可能无法工作、而另一个 ADC 可能工作、我在内存浏览器或表达式窗口中看到转换结果、我可以绘制转换结果。 我尝试更改 ADCC 通道、但仍然没有得到任何转换结果、输出缓冲器仍然为空。

下面是 ADC 文件以及 ADCC 的 ISR 中断:

InitAdca ()

asm (" EALLOW");//启用 EALLOW 受保护寄存器访问

//--复位 ADC。 这是一种良好的编程实践。

DevCfgRegs.SOFTPRES13.bit.ADC_A = 1;// ADC 复位

DevCfgRegs.SOFTPRES13.bit.ADC_A = 0;// ADC 从复位中释放

DevCfgRegs.SOFTPRES13.bit.ADC_B = 1;// ADC 复位

DevCfgRegs.SOFTPRES13.bit.ADC_B = 0;// ADC 从复位中释放

DevCfgRegs.SOFTPRES13.bit.ADC_C = 1;// ADC 复位

DevCfgRegs.SOFTPRES13.bit.ADC_C = 0;// ADC 从复位中释放

DevCfgRegs.SOFTPRES13.bit.ADC_D = 1;// ADC 复位

DevCfgRegs.SOFTPRES13.bit.ADC_D = 0;// ADC 从复位中释放

//---配置 ADC 基址寄存器

AdcaRegs.ADCCTL1.ALL = 0x0004;//主 ADC 配置

AdcbRegs.ADCCTL1.ALL = 0x0004;//主 ADC 配置

AdccRegs.ADCCTL1.ALL = 0x0004;//主 ADC 配置

AdcdRegs.ADCCTL1.ALL = 0x0004;//主 ADC 配置

//位15-14 00:保留

//位13 0:ADCBSY、ADC 忙、只读

//位12 0:保留

//位11-8 0:ADCBSYCHN、ADC 忙通道、只读

//位7 0:ADCPWDNZ、ADC 断电、0 =断电、1 =上电

//位6-3 0000:保留

//位2 1:INTPULSEPOS、INT 脉冲生成、0=转换开始、1=转换结束

//位1-0 00:保留

AdcaRegs.ADCCTL2.all = 0x0006;// ADC 时钟配置

AdcbRegs.ADCCTL2.all = 0x0006;// ADC 时钟配置

AdccRegs.ADCCTL2.ALL = 0x0006;// ADC 时钟配置

AdcdRegs.ADCCTL2.all = 0x0006;// ADC 时钟配置

//位15-8 0:保留

//位7 0:SIGNALMODE,由下面的 AdcSetMode()配置以获得正确的校准

//位6 0:分辨率,由下面的 AdcSetMode()配置以获得正确的校准

//位5-4 00:保留

//位3-0 0110:预分频、ADC 时钟预分频器。 0110=CPUCLK/4、Hence ADC 时钟= SYSCLK / 4 = 200MHz/4 = 50MHz

AdcaRegs.ADCBURSTCTL.ALL = 0x0000;

AdcbRegs.ADCBURSTCTL.ALL = 0x0000;

AdccRegs.ADCBURSTCTL.ALL = 0x0000;

AdcdRegs.ADCBURSTCTL.ALL = 0x0000;

//位15 0:BURSTEN、0 =禁用突发模式、1 =启用突发模式

//位14-12000:保留

//位11-8 0000:BURSTSIZE、0=1 SOC 已转换(无关)

//位7-6 00:保留

//位5-0 000000:BURSTTRIGSEL,00=仅软件(无关)

//---调用 AdcSetMode()以配置分辨率和信号模式。

//这也会对配置的模式执行正确的 ADC 校准。

AdcSetMode (ADC_ADCA、ADC_resolution_12位、ADC_SIGNALMODE_SINGLE);

AdcSetMode (ADC_ADCB、ADC_Resolution、12位、ADC_SIGNALMODE_SINGLE);

AdcSetMode (ADC_ADCC、ADC_Resolution、12位、ADC_SIGNALMODE_SINGLE);

AdcSetMode (ADC_ADCD、ADC_Resolution、12位、ADC_SIGNALMODE_SINGLE);

//-- SOC0配置

AdcaRegs.ADCSOC0CTL.bit.TRIGSEL = 7;//使用 ePWM2-ADCSOCA 触发

AdcaRegs.ADCSOC0CTL.bit.CHSEL = 0;//转换通道 ADCINA0 (通道0)

AdcaRegs.ADCSOC0CTL.bit.ACQPS = 19;//采集窗口设置为(19+1)=20个周期(200MHz SYSCLK 时为100ns)

AdcaRegs.ADCINTSOCSEL.bit.SOC0 = 0;//无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)

AdcaRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;//所有 SOC 在循环模式下处理

///--- ADCA2的 SOC1配置

AdcaRegs.ADCSOC1CTL.bit.TRIGSEL = 7;//使用 ePWM2-ADCSOCA 触发

AdcaRegs.ADCSOC1CTL.bit.CHSEL = 2;//转换通道 ADCINA2 (通道2)

AdcaRegs.ADCSOC1CTL.bit.ACQPS = 19;//采集窗口设置为(19+1)=20个周期(200MHz SYSCLK 时为100ns)

AdcaRegs.ADCINTSOCSEL1.bit.SOC1 = 0;//无 ADC 中断触发 SOC1 (TRIGSEL 域决定触发)

AdcaRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;//所有 SOC 在循环模式下处理

///--- ADC B 的 SOC0配置

AdcbRegs.ADCSOC0CTL.bit.TRIGSEL = 7;//使用 ePWM2-ADCSOCA 触发

AdcbRegs.ADCSOC0CTL.bit.CHSEL = 0;//转换通道 ADCINB0 (通道0)

AdcbRegs.ADCSOC0CTL.bit.ACQPS = 19;//采集窗口设置为(19+1)= 20个周期(200MHz SYSCLK 时为100ns)

AdcbRegs.ADCINTSOCSEL.bit.SOC0 = 0;//无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)

AdcbRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;//所有 SOC 在循环模式下处理

///--- ADC C 的 SOC0配置

AdccRegs.ADCSOC0CTL.bit.TRIGSEL = 7;//使用 ePWM2-ADCSOCA 触发

AdccRegs.ADCSOC0CTL.bit.CHSEL = 0;//转换通道 ADCINB0 (通道0)

AdccRegs.ADCSOC0CTL.bit.ACQPS = 19;//采集窗口设置为(19+1)=20个周期(200MHz SYSCLK 时为100ns)

AdccRegs.ADCINTSOCSEL.bit.SOC0 = 0;//无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)

AdccRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;//所有 SOC 在循环模式下处理

///--- ADC D 的 SOC0配置

AdcdRegs.ADCSOC0CTL.bit.TRIGSEL = 7;//使用 ePWM2-ADCSOCA 触发

AdcdRegs.ADCSOC0CTL.bit.CHSEL = 0;//转换通道 ADCINB0 (通道0)

AdcdRegs.ADCSOC0CTL.bit.ACQPS = 19;//采集窗口设置为(19+1)=20个周期(200MHz SYSCLK 时为100ns)

AdcdRegs.ADCINTSOCSEL.bit.SOC0 = 0;//无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)

AdcdRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;//所有 SOC 在循环模式下处理

//-- ADCA1中断配置

AdcaRegs.ADCINTSEL1N2.bit.INT1CONT = 1;//中断脉冲、与标志状态无关

AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1;//启用 ADC 中的中断

AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 0;// EOC0触发中断

//-- ADCB1中断配置

AdcbRegs.ADCINTSEL1N2.bit.INT1CONT = 1;//中断脉冲、与标志状态无关

AdcbRegs.ADCINTSEL1N2.bit.INT1E = 1;//启用 ADC 中的中断

AdcbRegs.ADCINTSEL1N2.bit.INT1SEL = 0;// EOC0触发中断

//-- ADCC1中断配置

AdccRegs.ADCINTSEL1N2.bit.INT1CONT = 1;//中断脉冲、与标志状态无关

AdccRegs.ADCINTSEL1N2.bit.INT1E = 1;//启用 ADC 中的中断

AdccRegs.ADCINTSEL1N2.bit.INT1SEL = 0;// EOC0触发中断

//-- ADCD1中断配置

AdcdRegs.ADCINTSEL1N2.bit.INT1CONT = 1;//中断脉冲、与标志状态无关

AdcdRegs.ADCINTSEL1N2.bit.INT1E = 1;//启用 ADC 中的中断

AdcdRegs.ADCINTSEL1N2.bit.INT1SEL = 0;// EOC0触发中断

//--启用 ADC 中断

PieCtrlRegs.PIEIER1.bit.INTx1 = 1;//在 PIE 组1中启用 ADCA1中断

PieCtrlRegs.PIEIER1.bit.INTx2 = 1;//在 PIE 组1中启用 ADCB1中断

PieCtrlRegs.PIEIER1.bit.INTx3=1//在 PIE 组1中启用 ADCC1中断

PieCtrlRegs.PIEIER1.bit.INTx6 = 1;//在 PIE 组1中启用 ADCD1中断

IER |= 0x0001;//在 IER 中启用 INT1以启用 PIE 组

//--完成

AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1;//为 ADC 加电

AdcbRegs.ADCCTL1.bit.ADCPWDNZ = 1;//为 ADC 加电

AdccRegs.ADCCTL1.bit.ADCPWDNZ = 1;//为 ADC 加电

AdcdRegs.ADCCTL1.bit.ADCPWDNZ = 1;//为 ADC 加电

DelayU (1000);//加电后等待1ms、然后再使用 ADC

asm (" EDIS");//禁用 EALLOW 受保护寄存器访问

}//结束 InitAdc()

//----文件结尾------------


ISR 代码为:

中断 ADCC1_ISR ()// PIE1.3 @ 0x000D44 ADC-C 中断#1

静态 uint16 * AdcBufPtr2 = AdcBuf2;//指向缓冲区的指针

PieCtrlRegs.PIEACX.ALL = PIEACK_Group1;//必须确认 PIE 组

//--管理 ADC 寄存器

AdccRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;//清除 ADCINT1标志

//---读取 ADC 结果

*AdcBufPtr2++= AdccResultRegs.ADCRESULT3//读取结果

//--蛮力强制循环缓冲器

if (AdcBufPtr2 ==(AdcBuf2 + ADC_BUF_LEN))

AdcBufPtr2 = AdcBuf2;//将指针回卷到开头




非常感谢您的帮助
此致

 

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hayder、

    首先、对于 ADCA、您将同时转换通道 A0和 A2。 正确、只需检查? 然后、在 ADCC 中、您将配置 SOC0以读取通道 A0、但在 ISR 中、您将读取 ADCRESULT3、而不是 ADCRESULT0。 请检查此项。

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Ken、

    是的、您是正确的 A0和 A2。
    很抱歉、当我运行代码时、ISR 中的 ADCC0和 ADCRESULT30会出现键入错误。 因此、我为所选转换通道选择了正确的结果通道。 因此、我使用 ADCRESUTL0来执行 ADCC0、使用 ADCRESUTL3来执行 ADCC3。

    此致
    Hayder
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hayder、

    我不确定我是否跟随。 它现在工作吗? 如果没有、则在 ISR 中放入一个断点并单步执行以查看发生的情况。

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    它不工作、

    我在 ISR ADCC1中放置一个断点、然后我单步运行代码、直到它返回到 main、并且在分配给 ADCC 结果的 Adcbuf 中没有发生任何情况。 例如,我激活了 ADCC 通道0,并检查了 ADCCRESULT0,然后我将通道更改为3和 ADCCRESUTL3。 但我仍然看不到任何转换结果。

    除了缓冲正确的结果通道之外、代码中是否存在任何错误?
    此致
    Hayder
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hayder、

    就我所见、代码看起来不错。 您使用的是哪个开发目标板- F28379D LaunchPad 或实验套件(controlCARD)? ADC 输入端使用的信号。 您是否仔细检查了是否使用了正确的输入引脚?

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Ken、

    我发现、当我激活 ADCC0和 ADCC1时 、在表达式窗口中打开的"AdccResultsRegs"中不会发生任何情况。 但当我激活 ADC 通道2至5时、 "AdccResultsRegs"仅在 ADCRESULT0中显示结果、而不在相应的结果位中显示结果。

    查看下面的 CCS 窗口、在此窗口中我将保存 AdcBuf2中的 ADCRESULT0、并在 Single Time 3 Graph (正弦波 GRAG 是转换为 RESULT0位的 ADCC2正弦输入的数字输出)中进行展示。  

    我真的很感谢您的介绍、这是正确的操作吗?  

    此致

    Hayder

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Ken、

    我正在使用 F28379D 实验套件(controlCARD)。  我尝试了内部生成的2kHz PWM 和正弦波以及外部生成的2kHz 频率的正弦波。  我已仔细检查是否使用了正确的输入引脚。 我将为引脚 selection.e2e.ti.com/.../4162.TMDSCNCD28377D_5F00_180cCARD_5F00_pinout_5F00_R1_5F00_3.pdf 使用随附的文件"TMDSCNCD28377D_180cCARD_pinout_R1_3.pdf"

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hayder、

    请尝试注释掉 ADCA、ADCB 和 ADCD 并检查 ADCC 是否正常工作?

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Ken、  

    我对  ADCA、ADCB 和 ADCD 进行了注释、并尝试了以下操作:  

    1 - 在本例中、ADCC0不起作用、我将输入连接到实验套件上的引脚25、查看 ADC.C 和 ISR 中的代码。 在表达式窗口中、我没有看到"AdccResultRegs"中的任何更改。

    ///--- ADC C 的 SOC0配置
    AdccRegs.ADCSOC0CTL.bit.TRIGSEL = 7;           //使用 ePWM2-ADCSOCA 触发
    AdccRegs.ADCSOC0CTL.bit.CHSEL = 0;             //转换通道 ADCINC0 (通道0)
    AdccRegs.ADCSOC0CTL.bit.ACQPS = 19;            //采集窗口设置为(19+1)= 20个周期(200MHz SYSCLK 时为100ns)

    AdccRegs.ADCINTSOCSEL.bit.SOC0 = 0;           //无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)
    AdccRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;     //所有 SOC 在循环模式下处理

    中断空 ADCC1_ISR (空)// PIE1.3 @ 0x000D44 ADC-C 中断#1

    静态 uint16 * AdcBufPtr2 = AdcBuf2;//指向缓冲区的指针

    PieCtrlRegs.PIEACX.ALL = PIEACK_Group1;//必须确认 PIE 组

    //--管理 ADC 寄存器
    AdccRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;//清除 ADCINT1标志

    //---读取 ADC 结果
    *AdcBufPtr2++= AdccResultRegs.ADCRESULT0;//读取结果

    //--蛮力强制循环缓冲器
    if (AdcBufPtr2 ==(AdcBuf2 + ADC_BUF_LEN))

    AdcBufPtr2 = AdcBuf2;//将指针回卷到开头

    2 -在本例中、ADCC1不起作用、我将输入连接到实验套件上的引脚27、查看 ADC.C 和 ISR 中的代码。  在表达式窗口中、我没有看到"AdccResultRegs"中的任何更改

    ///--- ADC C1的 SOC1配置
    AdccRegs.ADCSOC1CTL.bit.TRIGSEL = 7;               //使用 ePWM2-ADCSOCA 触发
    AdccRegs.ADCSOC1CTL.bit.CHSEL = 1;                //转换通道 ADCINC1 (通道1)
    AdccRegs.ADCSOC1CTL.bit.ACQPS = 19;               //采集窗口设置为(19+1)= 20个周期(200MHz SYSCLK 时为100ns)

    AdccRegs.ADCINTSOCSEL1.bit.SOC1 = 0;               //无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)
    AdccRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;        //所有 SOC 在循环模式下处理

    中断空 ADCC1_ISR (空)// PIE1.3 @ 0x000D44 ADC-C 中断#1

    静态 uint16 * AdcBufPtr2 = AdcBuf2;//指向缓冲区的指针

    PieCtrlRegs.PIEACX.ALL = PIEACK_Group1;//必须确认 PIE 组

    //--管理 ADC 寄存器
    AdccRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;//清除 ADCINT1标志

    //---读取 ADC 结果
    *AdcBufPtr2++= AdccResultRegs.ADCRESULT1;//读取结果

    //--蛮力强制循环缓冲器
    if (AdcBufPtr2 ==(AdcBuf2 + ADC_BUF_LEN))

    AdcBufPtr2 = AdcBuf2;//将指针回卷到开头

    3 -在本例中、ADCC2正常工作、我将输入连接到实验套件上的引脚31、查看下面 ADC.C 和 ISR 中的代码。  在表达式窗口中、我看到"AdccResultRegs"位 ADCRESULT2发生了相当于转换的变化。

    但是、在这种情况下、ISR AdcBuf2数组不显示任何内容、当我打开为缓冲 AdcC2结果而创建的 AdcBuf2时、现在发生了变化、AdcBuf2保持为零、不会随着 ADCRESULT2的转换而更新。

    ///--- ADC C2的 SOC2配置
    AdccRegs.ADCSOC2CTL.bit.TRIGSEL = 7;                   //使用 ePWM2-ADCSOCA 触发
    AdccRegs.ADCSOC2CTL.bit.CHSEL = 2;                     //转换通道 ADCINC2 (通道2)
    AdccRegs.ADCSOC2CTL.bit.ACQPS = 19;                   //采集窗口设置为(19+1)= 20个周期(200MHz SYSCLK 时为100ns)

    AdccRegs.ADCINTSOCSEL1.bit.SOC2 = 0;                   //无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)
    AdccRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;             //所有 SOC 在循环模式下处理

    中断空 ADCC1_ISR (空)// PIE1.3 @ 0x000D44 ADC-C 中断#1

    静态 uint16 * AdcBufPtr2 = AdcBuf2;//指向缓冲区的指针

    PieCtrlRegs.PIEACX.ALL = PIEACK_Group1;//必须确认 PIE 组

    //--管理 ADC 寄存器
    AdccRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;//清除 ADCINT1标志

    //---读取 ADC 结果
    *AdcBufPtr2++= AdccResultRegs.ADCRESULT2;//读取结果

    //--蛮力强制循环缓冲器
    if (AdcBufPtr2 ==(AdcBuf2 + ADC_BUF_LEN))

    AdcBufPtr2 = AdcBuf2;//将指针回卷到开头




    4 -在本例中、我重复了3次、但我将 SOC 从2更改为0、如下面 ADC.c 和 ISR 文件中的代码所示。 在本例中、我在表达式窗口的 RESULT0中看到 ADCC2的转换 、我也可以在 内存浏览器的 AdcBuf2中看到缓冲结果。  

    ///--- ADC C2的 SOC0配置
    AdccRegs.ADCSOC0CTL.bit.TRIGSEL = 7;                   //使用 ePWM2-ADCSOCA 触发
    AdccRegs.ADCSOC0CTL.bit.CHSEL = 2;                     //转换通道 ADCINC2 (通道2)
    AdccRegs.ADCSOC0CTL.bit.ACQPS = 19;                   //采集窗口设置为(19+1)= 20个周期(200MHz SYSCLK 时为100ns)

    AdccRegs.ADCINTSOCSEL.bit.SOC0 = 0;                   //无 ADC 中断触发 SOC0 (TRIGSEL 域决定触发)
    AdccRegs.ADCSOCPRICTL.bit.SOCPRIORITY = 0;             //所有 SOC 在循环模式下处理

    中断空 ADCC1_ISR (空)// PIE1.3 @ 0x000D44 ADC-C 中断#1

    静态 uint16 * AdcBufPtr2 = AdcBuf2;//指向缓冲区的指针

    PieCtrlRegs.PIEACX.ALL = PIEACK_Group1;//必须确认 PIE 组

    //--管理 ADC 寄存器
    AdccRegs.ADCINTFLGCLR.bit.ADCINT1 = 1;//清除 ADCINT1标志

    //---读取 ADC 结果
    *AdcBufPtr2++= AdccResultRegs.ADCRESULT0;//读取结果

    //--蛮力强制循环缓冲器
    if (AdcBufPtr2 ==(AdcBuf2 + ADC_BUF_LEN))

    AdcBufPtr2 = AdcBuf2;//将指针回卷到开头

    老实说、我不理解 为什么 Case4中的 AdcBuf2起作用、但在第3种情况下不起作用。  
    如果我继续使用案例4、我有任何建议或我没有问题

    此致  

    Hayder  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hayder、

    请参阅 F28379D 数据表、网址为:

    www.ti.com/lit/sprs880.pdf

    请注意、对于 ADC-C 通道、C0和 C1没有输出引脚。 ADC-C 只有通道 C2、C3、C4和 C5的引脚输出。

    但愿这对您有所帮助。 如果您的问题得到了解答、请单击绿色的"验证答案"按钮。 谢谢。

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Ken、  

    非常感谢您的澄清。
    我仍然不明白、为什么我将 SOC2与 ADCC 通道2一起使用时、ISR AdcBuf2 不像我之前评论中的情况3那样工作、而当我使用 SOC0和 RESULT0时、AdcBuf2会显示缓冲转换、如 情况4所示。  

    此致

    Hayder

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hayder、

    根据您所描述的内容、对于情况3和4、ADC 在 SOC2和 SOC0下按预期工作。 在第3种情况下、您遇到了 ISR 中的缓冲区问题。 请仔细检查 ISR (断点、单步执行等)。

    - Ken
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Ken、

    我尝试了 ISR (断点、单步)、但没有看到任何差异。 但是、目前这并不重要、因为具有 soc0的 ADCC2可能正在工作、而另一个 ADC 可能工作。

    感谢你的帮助
    此致
    Hayder