gxy123 发表于 2024-9-16 11:02:07

8H8K64U外部48M晶振无法正常工作 | 45MHz以下,常用40MHz


8H8K64U外部48M晶振无法正常工作

想用外部48M晶振时,芯片无法正常工作(IO口都没法翻转),使用内部晶振可以实现(排除IO口设置的问题)
切换到外部晶振代码如下:

void Switch_clock_xosccr(void)
{

    P_SW2 |= 0x80;
    P1IE = ~0xC0;
    XOSCCR=0XC0;      //开启外部晶振
    while(!(XOSCCR&0x01));

    CLKDIV =0x00;      //分频为1
    CLKSEL=0X01;    //切换

    HIRCCR = 0x00;
    IRC32KCR = 0x00;
    X32KCR = 0x00;
}

主函数代码:
void main(void)
{
    /*********** 初始化开始 ***********/

    EAXSFR();                /* 扩展寄存器访问使能 */
    Switch_clock_xosccr();
    GPIO_config();
    delay_ms(1000);
    EA = 1;
    while(1) {

      IR_CE = !IR_CE;

      delay100us();
    }
}

用示波器看了,晶振也正常起振了(不调用Switch_clock_xosccr函数无波形),晶振引脚有正常频率波形
但是IR_CE引脚只有高电平 不知道原因在哪 困扰比较久了
有无好心人帮忙看看问题,可有偿,VX:acdNumber



gxy123 发表于 2024-9-16 11:03:53

芯片型号时stc8h8k64U

邮箱 发表于 2024-9-16 11:19:28

不是45m以下?

soma 发表于 2024-9-16 11:31:37

8h8k的最高频率不是45mhz吗?正常工作在42mhz左右,48m有点超频了吧。

神农鼎 发表于 2024-9-16 12:03:32

8H8K64U 请工作在45MHz 以下,我们习惯用 40MHz
要再快,换管脚兼容的 32G12K128, 同频快 5倍以上




gxy123 发表于 2024-9-16 12:52:32

邮箱 发表于 2024-9-16 11:19
不是45m以下?

问题在于 有另一块板子 也是这样48M外部晶振使用的 就没有问题

gxy123 发表于 2024-9-16 12:53:59

神农鼎 发表于 2024-9-16 12:03
8H8K64U 请工作在45MHz 以下,我们习惯用 40MHz
要再快,换管脚兼容的 32G12K128, 同频快 5倍以上 ...

不换的情况下 使用会有问题吗

神农鼎 发表于 2024-9-16 12:55:54

gxy123 发表于 2024-9-16 12:53
不换的情况下 使用会有问题吗

以你实际测试为准

gxy123 发表于 2024-9-16 13:00:43

神农鼎 发表于 2024-9-16 12:55
以你实际测试为准

是这样的 我有几个红外发射板 几个接收板 原理图和pcb都一样 (mcu和晶振相对位置,走线) 最多可能铺铜等不一样 但是几个发射板用48M都行 几个接收板不行

gxy123 发表于 2024-9-16 13:01:15

神农鼎 发表于 2024-9-16 12:55
以你实际测试为准

主要是看到晶振都起振了 不应该就没问题吗
页: [1] 2
查看完整版本: 8H8K64U外部48M晶振无法正常工作 | 45MHz以下,常用40MHz