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.

[参考译文] CCS/MSP430FR5969:ADC12_B:未进入 ADC12MEM25的 ISR

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/585999/ccs-msp430fr5969-adc12_b-not-entering-into-isr-of-adc12mem25

器件型号:MSP430FR5969

工具/软件:Code Composer Studio

我 的简单代码是 A7的 ADC12_B 作为输入、ADC12MEM25作为存储器。我的代码未进入 ADC12MEM25的 ISR。。。。请报告任何更改

#include "driverlib.h"
int 值= 0;
void GPIO_init();
void adc_init();
void main (void)

//停止 WDT
WDT_A_HOLD (WDT_A_base);


PMM_unlockLPM5 ();

GPIO_init();
adc_init();
_bis_SR_register (GIE);
while (1)

_delay_cycles (5000);


ADC12_B_startConversion (ADC12_B_base、ADC12_B_MEMORY_25、ADC12_B_SINGLECHANNEL);

// LPM0、ADC12_B_ISR 将强制退出
__no_operation();//用于调试器

void GPIO_init()


GPIO_setPeripheralModuleFunctionOutputPin (GPIO_PORT_P2、GPIO_PIN4、GPIO_ternary_MODULE_Function);

void adc_init()

ADC12_B_initParam initParam ={0};
initParam.sampleHoldSignalSourceSelect = ADC12_B_SAMPLEHOLDSOURCE_SC;
initParam.clockSourceSelect = ADC12_B_CLOCKSOURCE_SMCLK;
initParam.clockSourceDivider = ADC12_B_CLOCKDIVIDER_1;
initParam.clockSourcePredivider = ADC12_B_CLOCKPREDIVIDER__1;
initParam.internalChannelMap = ADC12_B_NOINTCH;
ADC12_B_init (ADC12_B_B_base、&initParam);

//启用 ADC12B 模块
ADC12_B_ENABLE (ADC12_B_B_BASE);

ADC12_B_setupSamplingTimer (ADC12_B_BASE、ADC12_B_CYCLEHOLD_16_CYCLES、ADC12_B_CYCLEHOLD_4_CYCLLES、ADC12_B_MULTIPLESAMPLESDISABLE);


ADC12_B_configureMemoryParam configureMemoryParam ={0};
configureMemoryParam.memoryBufferControlIndex = ADC12_B_MEMORY_25;
configureMemoryParam.inputSourceSelect = ADC12_B_INPUT_A7;
configureMemoryParam.refVoltageSourceSelect =
ADC12_B_VREFPS_AVCC_VREFNEG_VSS;
configureMemoryParam.endOfSequence = ADC12_B_NOTENDOSEQUENCE;
configureMemoryParam.windowComparatorSelect =
ADC12_B_WINDOW_Comparator_DISABLE;
configureMemoryParam.特色 模式选择=
ADC12_B_different_mode_disable;
ADC12_B_configureMemory (ADC12_B_base、&configureMemoryParam);

ADC12_B_clearInterrupt (ADC12_B_B_base、1、ADC12_B_IFG25);

//启用存储器缓冲器0中断
ADC12_B_enableInterrupt (ADC12_B_base、0、ADC12_B_IE25、0);

#if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
#pragma vector=ADC12_vector
_interrupt
#Elif defined (_GNU_)
__attribute__((中断(ADC12_vector))
#endif
空 ADC12_ISR (空)

switch (__evo_in_range (ADC12IV、62))

情况0:中断;//向量0:无中断
情况2:中断;//向量2:ADC12BMEMx 溢出
情况4:中断;//矢量4:转换时间溢出
情况6:中断;//向量6:ADC12BHI
情况8:中断;//向量8:ADC12BLO
情况10:中断;//向量10:ADC12BIN
情况12:中断;//向量12:ADC12BMEM0中断
情况14:中断;//向量14:ADC12BMEM1
情况16:中断;//向量16:ADC12BMEM2
情况18:中断;//向量18:ADC12BMEM3
情况20:中断;//向量20:ADC12BMEM4
情况22:中断;//向量22:ADC12BMEM5
情况24:中断;//向量24:ADC12BMEM6
情况26:中断;//向量26:ADC12BMEM7
情况28:中断;//向量28:ADC12BMEM8
情况30:中断;//向量30:ADC12BMEM9
情况32:中断;//向量32:ADC12BMEM10
案例34:中断;//向量34:ADC12BMEM11
案例36:中断;//向量36:ADC12BMEM12
案例38:中断;//向量38:ADC12BMEM13
情况40:中断;//向量40:ADC12BMEM14
情况42:中断;//向量42:ADC12BMEM15
案例44:中断;//向量44:ADC12BMEM16
情况46:中断;//向量46:ADC12BMEM17
情况48:中断;//向量48:ADC12BMEM18
情况50:中断;//向量50:ADC12BMEM19
情况52:中断;//向量52:ADC12BMEM20
情况54:中断;//向量54:ADC12BMEM21
情况56:中断;//向量56:ADC12BMEM22
判例58:中断;//向量58:ADC12BMEM3
情况60:中断;//向量60:ADC12BMEM24
情况62:
值=ADC12MEM25;
中断;//向量62:ADC12BMEM25
情况64:中断;//向量64:ADC12BMEM26
案例66:中断;//向量66:ADC12BMEM27
情况68:中断;//向量68:ADC12BMEM28
情况70:中断;//向量70:ADC12BMEM29
情况72:中断;//向量72:ADC12BMEM30
案例74:中断;//向量74:ADC12BMEM31
情况76:中断;//向量76:ADC12BRDY
默认值:break;

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

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