wuzhengmin 发表于 2026-3-6 14:53:24

实验现象:

wuzhengmin 发表于 2026-3-6 14:55:56

这里驱动程序有一句逻辑搞反了:

if(UART1_RX_STA & 0x8000)//判断16位数据UART1_RX_STA最高位是否=1

高位是1就应该结束接收,只有最高位=0的时候才能接收,所以要改成:

if(!(UART1_RX_STA & 0x8000))//判断16位数据UART1_RX_STA最高位是否=1

wuzhengmin 发表于 2026-3-6 15:12:10

我手头的板子P36 接74HC595 (可以把JP595拔掉解决)

AD/DA光敏 XPT2046 用到P36 是焊死的,导致接收的字符出现乱码

无线接口 NRF 2041 接P37

真的只能把核心板拆下来,用杜邦线连接HC6800-ES V2.0 的P30 P31 去核心板P3.6P3.7

就一切正常

wuzhengmin 发表于 2026-3-6 15:27:03

然后把板子上P30(RxD) 接核心板RxD2(P3.6),板子上P31(TxD) 接核心板TxD2(P3.7),

P36P37有没有其他公用设备,且焊死,只能把核心板拆下来,2者共地,只使用HC6800-ESV2.0 的USC转TTL电路

见下图:


wuzhengmin 发表于 2026-3-6 15:31:40

把主函数改动一下:

////////////////////////////////////////
// 项目主函数
// 入口参数: 无
// 函数返回: 无
////////////////////////////////////////
void main(void)
{
    //<<AICUBE_USER_MAIN_INITIAL_BEGIN>>
    // 在此添加用户主函数初始化代码
        u16 len = 0;
        u16 i = 0;
    //<<AICUBE_USER_MAIN_INITIAL_END>>

    SYS_Init();

    //<<AICUBE_USER_MAIN_CODE_BEGIN>>
    // 在此添加主函数中运行一次的用户代码
    printf("Hello World !\n");
    //<<AICUBE_USER_MAIN_CODE_END>>

    while (1)
    {
      //<<AICUBE_USER_MAIN_LOOP_BEGIN>>
      // 在此添加主函数中用户主循环代码
                if(UART1_RX_STA & 0x8000)//判断16位数据UART1_RX_STA最高位是否=1
                {
                        len= UART1_RX_STA%0x3FFF; //取出状态字中的长度
                        for(i=0;i<len;i++)
                        {
                                UART1_SendData(UART1_RX_BUF);
                                while(!UART1_CheckTxFlag());//等待每个字符发送完成
                                UART1_ClearTxFlag();            //清除串口发送中断标志
                        }
                        UART1_RX_STA = 0; //本次发送完成,清状态字准备好下一次接收
                        printf("Hello World !\n");
                }
      //<<AICUBE_USER_MAIN_LOOP_END>>
    }
}


证实printf()函数也是正常的,到处可以本实验结束

wuzhengmin 发表于 2026-3-7 19:49:00

我们先搁置各种问题,继续往下学习18.1-WDT看门狗实验-简介

wuzhengmin 发表于 2026-3-7 19:52:53

我们看看看门狗寄存器:

wuzhengmin 发表于 2026-3-7 19:55:49

我们的主频是40MHZ,时间就是2.5S,不能超过,超过就会溢出,重新启动

wuzhengmin 发表于 2026-3-7 19:57:13

用到的硬件如下:

wuzhengmin 发表于 2026-3-7 20:00:18

重点看软件配置:

页: 12 13 14 15 16 17 18 19 20 21 [22] 23 24 25 26 27 28
查看完整版本: 学习休眠唤醒遇到的问题:1无法开启休眠 2舍弃一下功能后能进入休眠但无法唤醒