主题中讨论的其他器件:MSP430WARE
尊敬的 PL:
我的客户在其新产品期间遇到 DAC 校准失败问题。 客户在初始阶段无法成功执行 DAC 校准。客户代码如下所示。 请帮您调试它吗?
DAC12_0CTL_bit.DAC12ENC = 0U; // DAC12 被禁用
DAC12_1CTL_bit.DAC12ENC = 0U; // DAC12 被禁用
// 将 控制 寄存器重置 为 它们 的默认 加电 状态。
DAC12_0CTL = 0x0000u;
DAC12_1CTL = 0x0000u;
DAC12_1CTL_bit.DAC12OPS = 0U; // 输出: DAC0 = P6.6、 DAC1 = P6.7
DAC12_1CTL_bit.DAC12SREFx = 2U; // DAC 基准 = eVref+
DAC12_1CTL_bit.DAC12RES = 0U; // 12位 分辨率
DAC12_1CTL_BIT.DAC12LSELx = 0U; // DAC12 值 被立即载入
DAC12_1CTL_bit.DAC12IR = 1U; // DAC 输出为1X 基准 输入
DAC12_1CTL_bit.DAC12AMPx = 7U; // 输入/输出 缓冲 器= 高速/电流
DAC12_1CTL_bit.DAC12DF = 0U; // 右 二进制 数据 (0 至 0xFFFF)
DAC12_1CTL_BIT.DAC12IE = 0U; // DAC12 中断 被禁用
DAC12_1CTL_BIT.DAC12IFG = 0U; // 清除 任何 现有 标志
DAC12_1CTL_bit.DAC12GRP=0U ; // DAC 输出 未编组
DAC12_1DAT = 0U; // 设置 初始 输出 = 0V
DAC12_1CTL_bit.DAC12ENC = 1U; // DAC12 被启用
DAC12_1CTL_bit.DAC12CALON = 1U; // 启动 DAC12 校准
// 等待 校准 完成。 位 将 自动 复位
执行 {TEST_AMBLE_TICK;} while (1U =DAC12_1CTL_BIT.DAC12CALON );