找回密码
 立即注册
查看: 516|回复: 5

stc8h1k08 ssop20的内部1.19V电压问题:

[复制链接]
  • TA的每日心情
    难过
    2024-8-22 11:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    6

    主题

    15

    回帖

    114

    积分

    注册会员

    积分
    114
    发表于 2024-1-1 18:12:51 | 显示全部楼层 |阅读模式
    1.19是稳定不变的,即使外部输入的参考电压(接VCC,即电源电压)改变,读取ADC15的值或许会变,但它所代表的电压永远是1.19V。
    如上,是不是可以这么认为?


    回复

    使用道具 举报 送花

    该用户从未签到

    643

    主题

    1万

    回帖

    1万

    积分

    管理员

    积分
    15587
    发表于 2024-1-1 18:18:41 | 显示全部楼层
    就是 内部有个 1117-1.19V, 但水平比较高,
    ===制造误差只有 千分之5,温漂只有 1%
    截图202401011819323434.jpg

    回复 支持 反对

    使用道具 举报 送花

    该用户从未签到

    643

    主题

    1万

    回帖

    1万

    积分

    管理员

    积分
    15587
    发表于 2024-1-1 18:21:49 | 显示全部楼层
    截图202401011820278592.jpg



    截图202401011821404699.jpg


    回复 支持 反对

    使用道具 举报 送花

  • TA的每日心情
    难过
    2024-8-22 11:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    6

    主题

    15

    回帖

    114

    积分

    注册会员

    积分
    114
     楼主| 发表于 2024-1-1 18:40:52 | 显示全部楼层
    本帖最后由 名字不是重点 于 2024-1-1 18:42 编辑

    有点挠头~~
    这么说,1.19存在Rom中的数值才是不变的,读ADC15是会变的,是不是?
    实例是这样的,我用ADC14采样电压,Verf接Vcc(3V3),当VCC下降到3.3V以下时,ADC14采样值计算后就不变了,3.3和3V时是一样的,想用1.19来校正,不知如何操作。。
    麻烦指点一下
    回复 支持 反对

    使用道具 举报 送花

  • TA的每日心情
    难过
    2024-8-22 11:08
  • 签到天数: 1 天

    [LV.1]初来乍到

    6

    主题

    15

    回帖

    114

    积分

    注册会员

    积分
    114
     楼主| 发表于 2024-1-1 18:44:55 | 显示全部楼层
    //ADC获取batt电压并显示
    void handel_adc(bit flag)
    {
      u16  adc_val;
      u16  u16_volt;
      float volt ;

          Get_Adc(15);     //获取ADC
         adc_val= ADC_RES<<8|ADC_RESL ;     //高低字节合并

        LCD_ShowChar(100+24,0,"0123456789ABCDEF"[ADC_RESL&0x0f],RED,BLACK,16,0,0);
        LCD_ShowChar(100+16,0,"0123456789ABCDEF"[ADC_RESL>>4],RED,BLACK,16,0,0);
        LCD_ShowChar(100+8,0,"0123456789ABCDEF"[ADC_RES&0x0f],RED,BLACK,16,0,0);
        LCD_ShowChar(100,0,"0123456789ABCDEF"[ADC_RES>>4],RED,BLACK,16,0,0);


          Get_Adc(14);     //获取ADC
         adc_val= ADC_RES<<8|ADC_RESL ;     //高低字节合并

          LCD_ShowChar(100+24,1,"0123456789ABCDEF"[ADC_RESL&0x0f],RED,BLACK,16,0,0);
        LCD_ShowChar(100+16,1,"0123456789ABCDEF"[ADC_RESL>>4],RED,BLACK,16,0,0);
        LCD_ShowChar(100+8,1,"0123456789ABCDEF"[ADC_RES&0x0f],RED,BLACK,16,0,0);
        LCD_ShowChar(100,1,"0123456789ABCDEF"[ADC_RES>>4],RED,BLACK,16,0,0);

    }
    以上运行后发现两处显示是一样的值,都 是016c

    回复 支持 反对

    使用道具 举报 送花

    该用户从未签到

    62

    主题

    4751

    回帖

    9770

    积分

    超级版主

    积分
    9770
    发表于 2024-1-10 15:02:18 | 显示全部楼层
    是的,1.19V是能隙电压源(就是常说的基准电压),工作电压在2.5~5.5V内变化很小。
    1.19V对应的10位ADC值 = 1024*1.19/AVREF
    1.19V对应的12位ADC值 = 4096*1.19/AVREF
    回复 支持 反对

    使用道具 举报 送花

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-11-11 03:41 , Processed in 0.068170 second(s), 55 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表