找回密码
 立即注册
查看: 111|回复: 8

使用8H8K642S对IO-P37的问题 | 已解决

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-04-14 00:31:51
已绑定手机

5

主题

43

回帖

355

积分

中级会员

积分
355
发表于 2025-4-9 22:41:52 | 显示全部楼层 |阅读模式

我用 8H8K64S2连接了一个外挂的蓝牙串口模块,电路如下图

MVIMG_20250409_223155.jpg

tips:图中的二极管实际上是个电阻

图中的这个IO P3.7连接了这个 PWRC,这是一个用以控制模块是否进入透传状态的IO。

在我的代码中,我将 P3.7配置为普通IO,然后对它进行拉低。正常来讲,这个蓝牙模块的 PWRC电压会降低,从而进入透传状态,但实际上电压并没有改变。我怀疑这个 P3.7默认就是高阻态,但是手册 STC8H-cn.pdf上又没有特别写明。请大佬们为小弟解惑,为什么这个MCU的IO P3.7无法下拉????

回复

使用道具 举报 送花

3

主题

1160

回帖

1031

积分

等待验证会员

积分
1031
发表于 2025-4-9 22:43:00 | 显示全部楼层
针对您在使用STC8H8K64S2微控制器时遇到的IO-P37无法下拉的问题,以下是一些可能的原因及解决方案,供您参考:

1. IO口配置问题
   STC8H8K64S2的IO口可以通过配置寄存器来设置其工作模式。您提到将P3.7配置为普通IO,但需要确认是否正确地将其配置为推挽输出模式或开漏输出模式。如果IO口被配置为输入模式或高阻态,则无法有效下拉外部电路。
推挽输出模式:在这种模式下,IO口可以主动输出高电平或低电平,适合驱动外部负载。您可以通过设置P3M1和P3M0寄存器来配置P3.7为推挽输出模式。
开漏输出模式:在这种模式下,IO口只能主动输出低电平或高阻态,适合需要外部上拉电阻的场合。如果您希望P3.7能够下拉外部电路,开漏输出模式也是一个可行的选择。

   确认配置寄存器的代码如下:
   ```c
   P3M1 &= ~(1

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:423
  • 最近打卡:2025-05-01 07:10:25
已绑定手机

76

主题

4833

回帖

8343

积分

超级版主

DebugLab

积分
8343
发表于 2025-4-10 07:36:53 | 显示全部楼层
没有看到程序,检查IO模式是否正常(上电默认高阻)
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:14
  • 最近打卡:2025-04-28 14:10:14

19

主题

385

回帖

2508

积分

版主

积分
2508
QQ
发表于 2025-4-10 08:51:23 | 显示全部楼层
1、建议将您的源程序发出来

2、 除 P3.0 和 P3.1 外,其余所有 IO口上电后的状态均为高阻输入状态,用户在使用 IO口前必须先设置 IO 口模式
截图202504100850525070.jpg
QQ:1463035472,微信:19952583954
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-04-14 00:31:51
已绑定手机

5

主题

43

回帖

355

积分

中级会员

积分
355
发表于 2025-4-12 16:04:42 | 显示全部楼层

在上电的时候,我会将所有的IO置为 准双向口

static void IO_Reset(void)
{
      /*IO reset*/
    P0M1 = 0x00; P0M0 = 0x00;
    P1M1 = 0x00; P1M0 = 0x00;
    P2M1 = 0x00; P2M0 = 0x00;
    P3M1 = 0x00; P3M0 = 0x00;
    P5M1 = 0x00; P5M0 = 0x00;
}

然后就就对IO P3.7直接拉低,就出现了上述情况。

随后我尝试对将IO P3.7配置为 开漏输出,亦未果。

int JDY_28M_init(void)
{
    char TmpData[UART_RECV_BUF_SIZE / 2];
#if ENABLE
        // 取消上拉
    CLEAR_BIT(P3PU, 7);

    // 配置 IO P37 为开漏输出
    //SET_BIT(P3M0, 7);
    CLEAR_BIT(P3M0, 7);
    SET_BIT(P3M1, 7);

#endif
    MODEL_LOG_EN(!ENABLE); // 开启回显, 退出透传
    Delay_100ms();
// 以下是初始化流程,省略
    return OK;
}

随后我直接将 PWRC焊了跟杜邦线,接到 GND,模块的信息回显就有了kelian

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-04-14 00:31:51
已绑定手机

5

主题

43

回帖

355

积分

中级会员

积分
355
发表于 2025-4-12 16:07:26 | 显示全部楼层
这是完整源码

project.7z

6.59 MB, 下载次数: 0

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-04-14 00:31:51
已绑定手机

5

主题

43

回帖

355

积分

中级会员

积分
355
发表于 2025-4-12 19:11:41 | 显示全部楼层
32位80*** 发表于 2025-4-10 08:51
1、建议将您的源程序发出来

2、 除 P3.0 和 P3.1 外,其余所有 IO口上电后的状态均为高阻输入状态,用户在使 ...

请看5、6楼
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-04-14 00:31:51
已绑定手机

5

主题

43

回帖

355

积分

中级会员

积分
355
发表于 2025-4-12 19:12:04 | 显示全部楼层
Debu*** 发表于 2025-4-10 07:36
没有看到程序,检查IO模式是否正常(上电默认高阻)

请看5、6楼
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:51
  • 最近打卡:2025-04-14 00:31:51
已绑定手机

5

主题

43

回帖

355

积分

中级会员

积分
355
发表于 2025-4-14 00:31:51 | 显示全部楼层
PCB问题,此贴终结
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 02:10 , Processed in 0.289920 second(s), 107 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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