【问题标题】:MicroChip Sample Code setting Current to a CMPDAC, DAC threshold which expect an voltageMicroChip 示例代码设置电流到 CMPDAC、DAC 阈值,期望电压
【发布时间】:2013-06-29 22:19:40
【问题描述】:

对不起,微芯片论坛很慢,我更喜欢用 Stack Overflow 提问。

dsPIC33FJ06GS101/X02 and dsPIC33FJ16GSX02/X04    device 

 Sample Code   
              // configure comparator2  


    CMPCON2bits.CMPON = 1;   // enable comparator 
CMPCON2bits.INSEL = 1;   // select CMP2B input pin (RB0) 
CMPCON2bits.RANGE = 1;   // select high range, max DAC value = Avdd/2        
//CMPDACx: COMPARATOR DAC CONTROL REGISTER        
//CMREF<9:0>: Comparator Reference Voltage Select bits 
CMPDAC2 = CURR_HWLIM;    // DAC threshold 


  #define CURR_HWLIM 1023 // 1023 // 10.15 * 101A  

Microchip 示例代码设置 CURR_HWLIM 是 1023A 到 CMPDAC2,需要电压。

这是一个错误吗?

【问题讨论】:

    标签: embedded microcontroller pic microchip


    【解决方案1】:

    请参阅数据表中的寄存器 20-2:CMPDACx:比较器 DAC 控制寄存器

    bit 9-0 CMREF<9:0>: Comparator Reference Voltage Select bits
    
    1111111111 = (CMREF * INTREF/1024) or (CMREF * (AVDD/2)/1024) volts depending on
    RANGE bit or (CMREF * EXTREF/1024) if EXTREF is set
    .
    .
    .
    0000000000 = 0.0 volts
    

    RANGE位好像设置为1,所以公式是VOLTAGE = CMPDAC2 * (AVDD/2) / 1024

    要根据输入电压计算数字值,请使用CMPDAC2 = 1024 * VOLTAGE / (AVDD/2)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-07
      • 1970-01-01
      • 2013-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多