工具与软件:
您好!
我目前正在处理一个使用 COMPDAC8x_OUT 和 OPA 函数的项目。 我想使用 COMP_DAC 作为输出、并将其作为输入馈送到 OPA。 不过、无论我如何配置 OPA 和编写代码、都没有响应。
当我使用 DAC 功能作为 OPA 的输入而不是 COMPDAC8时、OPA 工作正常。 但由于引脚要求、我必须使用 COMP_DAC8。
我在示例代码中找到了一个相关函数、名为"opa_dac8_output_buffer"。 但是、在使用此示例时、我仍然看不到 OPA 的任何输出。 我尝试了修改示例并使用相同的方法编写了测试方法、但仍然不起作用。 OPA 仍然没有输出。
至于环境设置、我没有进行任何更改。
您能否告诉我、如果我在代码中有任何错误、或者是否有任何需要更改的环境设置?
谢谢你。
#include "ti_msp_dl_config.h" /* * DAC8 Reference Voltage in mV * Adjust this value according to the internal VREF configuration. */ #define COMP_0_INST_REF_VOLTAGE_mV (3300) /* * DAC8 static output voltage in mV. * Adjust output as needed. */ #define COMP_0_INST_DAC8_OUTPUT_VOLTAGE_mV (1000) uint32_t list[]={ 2048, 2447, 2831, 3185, 3496, 3750,3940, 4056, 4095, 4056, 3940, 3750, 3496, 3185, 2831, 2447, 2048, 1648,1264, 910, 599, 345, 155, 39, 0,39, 155, 345, 599, 910, 1264, 1648 }; uint16_t count; uint32_t dacValue; int main(void) { // uint32_t dacValue; SYSCFG_DL_init(); /* * Set output voltage: * DAC value (8-bits) = DesiredOutputVoltage x 255 * ----------------------- * ReferenceVoltage */ // dacValue = (COMP_0_INST_DAC8_OUTPUT_VOLTAGE_mV * 255) / // COMP_0_INST_REF_VOLTAGE_mV; while(1){ dacValue = list[count++]>>4; DL_COMP_setDACCode0(COMP_0_INST, dacValue); DL_COMP_enable(COMP_0_INST); DL_OPA_enable(OPA_0_INST); if(count >= 32){ count = 0; } } // while (1) { // __WFI(); // } }