王世凯 发表于 2025-11-25 17:04:55

STC32G144K246-LQFP64的CoreVcc为啥只有0.4v?

我用STC32G144K246-LQFP64做了几个电路板,原理图如附件,都是下载软件后没有反应,跑马灯不闪,测量CoreVcc电压只有0.4v,会不会是原理图绘制的不对?请老师给我指点一下

梁工 发表于 2025-11-25 17:32:58

如果能成功下载程序,则VCC-CORE电压应该是正常的1.5V左右,否则,如果VCC-CORE电压一直为0.4V,是下载不了程序的。

王世凯 发表于 2025-11-26 09:34:59

可以下载程序,运行不起来。我是编了一个跑马灯程序,参考网址上给的例程

王世凯 发表于 2025-11-26 09:46:06


这个程序可以编译通过,可以下载。就是发光二极管一直不亮。17脚电压3.5v,8脚电压0.4v
#include "../../comm/STC32G.h"
#include "stdio.h"
#include "intrins.h"
typedef         unsigned char        u8;
typedef         unsigned int        u16;
#define MAIN_Fosc      24000000UL
voiddelay_ms(u8 ms);
void main(void)
{
    WTST = 0;//设置程序指令延时参数,赋值为0可将CPU执行指令的速度设置为最快
    EAXFR = 1; //扩展寄存器(XFR)访问使能
    CKCON = 0; //提高访问XRAM速度
    P0M1 = 0x00;   P0M0 = 0x00;
    P1M1 = 0x00;   P1M0 = 0x00;   
    P2M1 = 0x00;   P2M0 = 0x00;
    P3M1 = 0x00;   P3M0 = 0x00;   
    P4M1 = 0x00;   P4M0 = 0x00;   
    P5M1 = 0x00;   P5M0 = 0x00;   
    P6M1 = 0x00;   P6M0 = 0x00;   
    P7M1 = 0x00;   P7M0 = 0x00;   
    while(1){
      P33 = 0;          P34 = 1;                //LED Off
      delay_ms(250);
      P33 = 1;                P34 = 0;          //LED on
      delay_ms(250);
      }
}
voiddelay_ms(u8 ms)
{
   u16 i;
   do{
          i = MAIN_Fosc / 6000;
          while(--i);
   }while(--ms);
}

王世凯 发表于 2025-11-26 10:04:08

把P3M0 = 0x00;改成P3M0 = 0xff;就都正常了

梁工 发表于 2025-11-26 10:59:32

王世凯 发表于 2025-11-26 10:04
把P3M0 = 0x00;改成P3M0 = 0xff;就都正常了

STC32G144K246不支持准双向口,所以要设置为推挽输出才行。
页: [1]
查看完整版本: STC32G144K246-LQFP64的CoreVcc为啥只有0.4v?