找回密码
 立即注册
查看: 320|回复: 9

大家帮我看看这个逻辑有什么问题,为什么不能实现

[复制链接]
  • 打卡等级:常住居民II
  • 打卡总天数:88
  • 最近打卡:2025-12-13 21:09:54

46

主题

32

回帖

616

积分

高级会员

积分
616
发表于 2025-11-29 13:51:47 | 显示全部楼层 |阅读模式
在一个while循环里,检测一个端口电平变化,有变化蜂鸣器响一声,
现在是端口出现低电平,蜂鸣器响一声,
出现高电平后等很长15秒左右蜂鸣器响一声,大家帮我分析分析问题出在哪里

sbit  SLEEP =  P0^1;
bit S_flag=1;
while
{

                          if(!SLEEP)
                                {
                                        if(S_flag)
                                                {
                                                        B_PID_enable=0;
                                                        S_flag=0;
                                                        BEEP=1;                                                
                                                        BPj=0;
                                                }
                                
                                }
                        else
                        {
                                if(!S_flag)
                                {
                                        B_PID_enable=1;
                                        S_flag=0;
                                        BEEP=1;                                                
                                        BPj=0;                                
                                }
                        
                        }


                       if(BPj>100)
                                {
                                        BEEP=0;        
                                }



}

回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:88
  • 最近打卡:2025-12-13 21:09:54

46

主题

32

回帖

616

积分

高级会员

积分
616
发表于 2025-11-29 17:20:55 | 显示全部楼层
问题找到了,端口设置成高阻状态的问题,高祖不是可以当成输入口的吗,奇怪奇怪,大家注意了,
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:268
  • 最近打卡:2025-12-18 08:51:37

814

主题

1万

回帖

2万

积分

管理员

积分
21314
发表于 2025-11-29 19:44:25 | 显示全部楼层
高阻输入,打开内部上拉,或外部有上拉
回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:88
  • 最近打卡:2025-12-13 21:09:54

46

主题

32

回帖

616

积分

高级会员

积分
616
发表于 2025-11-30 08:05:51 | 显示全部楼层
神*** 发表于 2025-11-29 19:44
高阻输入,打开内部上拉,或外部有上拉

我外部有上拉,高阻检测外部高低电平,应该没有问题吧,
你把它拉低立即响应,但拉高就等待十几秒才能响应,测量电平就是高电平,
昨天我弄了一天找不到原因,最后改成准双向口,他就行了,
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:747
  • 最近打卡:2025-12-18 07:58:13
已绑定手机

55

主题

1952

回帖

3883

积分

论坛元老

积分
3883
发表于 2025-11-30 08:47:47 | 显示全部楼层
配置成高阻好像是有些问题
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:747
  • 最近打卡:2025-12-18 07:58:13
已绑定手机

55

主题

1952

回帖

3883

积分

论坛元老

积分
3883
发表于 2025-11-30 08:48:40 | 显示全部楼层
你可以试试把端口先写1再读试试
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:268
  • 最近打卡:2025-12-18 08:51:37

814

主题

1万

回帖

2万

积分

管理员

积分
21314
发表于 2025-11-30 09:25:11 | 显示全部楼层
他可能配置成 强推挽了
用 下面的工具自动生成程序

截图202511300925049396.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:88
  • 最近打卡:2025-12-13 21:09:54

46

主题

32

回帖

616

积分

高级会员

积分
616
发表于 2025-12-2 14:32:57 | 显示全部楼层
jw*** 发表于 2025-11-30 08:48
你可以试试把端口先写1再读试试

试过了,没用
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:587
  • 最近打卡:2025-12-18 12:29:34

9

主题

562

回帖

3807

积分

论坛元老

积分
3807
发表于 2025-12-2 17:41:04 | 显示全部楼层
管脚配置高阻检测外部电平状态完全没有问题,
把电路原理图发上来,一眼就看出问题出在哪里了,
大概率是有外部上拉很大阻值电阻,还并了电容下地.
如果上拉电阻不大,电容也不大,就要考虑元件损坏或者焊接问题了.
回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:88
  • 最近打卡:2025-12-13 21:09:54

46

主题

32

回帖

616

积分

高级会员

积分
616
发表于 2025-12-3 09:42:45 | 显示全部楼层
网*** 发表于 2025-12-2 17:41
管脚配置高阻检测外部电平状态完全没有问题,
把电路原理图发上来,一眼就看出问题出在哪里了,
大概率是有外 ...

你这么一说,我看了看电路图,应该就是并联电容的问题,这个隔离二极管是“罪魁祸首”,任何时候认真看电路图都是必要的,我借鉴网上9号焊台电烙,单片机改成STC32G12K128,基本功能都实现了,在加入休眠时,出现上述问题,电路图如下:
aaaaa.bmp
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-12-18 16:19 , Processed in 0.112702 second(s), 87 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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