找回密码
 立即注册
楼主: Qiujie

Stc15w408as单片机没加外部晶振读bandgap 数值很准,加了外部晶振根本没法用,有人解决吗

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2024-1-13 21:53:02 | 显示全部楼层
Qiu*** 发表于 2024-1-13 20:36
Stc8加晶振能读内部电源电压是吗?

是的。STC8系列读15通道就是了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2025-03-08 09:58:16
已绑定手机

2

主题

2

回帖

21

积分

新手上路

积分
21
发表于 2025-3-7 10:44:46 | 显示全部楼层
我在STC15W4K48S2也遇到了相同的问题:
外接晶体时,第九通道ADC结果为0,短路2个无源晶体脚,第九通道正常,这是不是15W系列的BUG,pdf有没有答案呀。
void ADCtr(void)
{
        unsigned char i;
        P1ASF = 0X00;                        //ADC第9通道
        CLK_DIV |= 0X20;                //高2位,低8位
        ADC_CONTR = 0X80;                //POWR  = 0X80;
        for(n =5000; n !=0; n--);        //ADC上电延时
        n=0;
        for(i=16; i!=0; i--)
        {
                ADC_CONTR = 0X88;        //POWR=0X80;START = 0X08;通道0X00;
                _nop_();_nop_();_nop_();_nop_();
                while(!(ADC_CONTR & 0X10));
                ADC_CONTR = 0X80;
                n += ((ADC_RES<<8) | ADC_RESL);
        }
        n /= 16;
        VrH = n>>8;
        VrL = n;
        n=0;
        P1ASF = 0X20;                //ADC=P15
        ADC_CONTR = 0X85;        //POWR = 0X80;START=0X08;通道0X05(P15);
        for(i=16; i!=0 ;i--)
        {
                ADC_CONTR=0X8D;        //POWR = 0X80;START=0X08;通道0X05(P15);
                _nop_();_nop_();_nop_();_nop_();
                while(!(ADC_CONTR & 0X10));
                while(ADC_CONTR & 0X08);
                ADC_CONTR=0X85;        //POWR = 0X80;START=0X08;通道0X05(P15);
                n += ((ADC_RES<<8) | ADC_RESL);
        }
        n /= 16;
        VxH = n>>8;
        VxL = n;
}


点评

STC15W系列MCU当使用外部晶振时, ADC不能测量第9通道的Bandgap电压值,请改为STC8系列的。  详情 回复 发表于 2025-3-7 14:21
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-04-30 08:43:23

33

主题

2351

回帖

4860

积分

论坛元老

积分
4860
发表于 2025-3-7 13:42:53 | 显示全部楼层
oldzha*** 发表于 2025-3-7 10:44
我在STC15W4K48S2也遇到了相同的问题:
外接晶体时,第九通道ADC结果为0,短路2个无源晶体脚,第九通道正常 ...

15W的手册快10年没有更新了,楼上梁工也说了,手册里就是没有说这个事情。
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2025-3-7 14:21:17 | 显示全部楼层
oldzha*** 发表于 2025-3-7 10:44
我在STC15W4K48S2也遇到了相同的问题:
外接晶体时,第九通道ADC结果为0,短路2个无源晶体脚,第九通道正常 ...

STC15W系列MCU当使用外部晶振时, ADC不能测量第9通道的Bandgap电压值,请改为STC8系列的。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2025-03-08 09:58:16
已绑定手机

2

主题

2

回帖

21

积分

新手上路

积分
21
发表于 2025-3-8 09:58:16 | 显示全部楼层
梁*** 发表于 2024-1-13 16:26
注意: 当使用外部晶振时, 不能测量Bandgap电压值!读存贮的数据可以,但是使用外部晶振时,ADC没法切换 ...

注意: 当使用外部晶振时, 不能测量Bandgap电压值!读存贮的数据可以,但是使用外部晶振时,ADC没法切换到第9通道的。

您说的这条这个PDF找不到呀?还不知道要害多少人

点评

手册封存于2015年,之后没有更新,所以没有写。  详情 回复 发表于 2025-3-8 12:17
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:50
  • 最近打卡:2025-04-30 22:59:03

73

主题

5882

回帖

1万

积分

超级版主

积分
12073
发表于 2025-3-8 12:17:57 | 显示全部楼层
oldzha*** 发表于 2025-3-8 09:58
注意: 当使用外部晶振时, 不能测量Bandgap电压值!读存贮的数据可以,但是使用外部晶振时,ADC没法切换到 ...

手册封存于2015年,之后没有更新,所以没有写。
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 01:45 , Processed in 0.128432 second(s), 86 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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