2619|8

348

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

检测P3.4低电平很快,但是检测P3.4高电平却要等几秒,求可能思路 [复制链接]



功能:检测P3.4的电平信号,高低电平各作出相应的动作

问题:   检测P3.4低电平很快,但是检测P3.4高电平却要等几秒,求指导思路,有什么可能性,单步调试的时候是很正常的走,但是全速运行会有这个问题,运行了这个函数之后,后面还有3个函数的,例如采AD, 谢谢大家

我用了一个LED进行高低电平的检验   





最新回复

取了太多次 进行软件滤波了? AD没这么慢。。  详情 回复 发表于 2016-9-1 11:31
 
点赞 关注

回复
举报

2700

帖子

0

TA的资源

五彩晶圆(初级)

沙发
 
用捕获功能的边缘触发中断

点评

功能是采用查询方法的的,没有使用中断 为了误操作,我用了5个循环判断P3.4口一定是高电平,在这个5个循环中,例如会不会在采AD的时候用了很长时间,或者其他函数用了过长的时间?  详情 回复 发表于 2016-8-31 19:54
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 

回复

348

帖子

0

TA的资源

一粒金砂(高级)

板凳
 
elvike 发表于 2016-8-31 19:50
用捕获功能的边缘触发中断

功能是采用查询方法的的,没有使用中断

为了误操作,我用了5个循环判断P3.4口一定是高电平,在这个5个循环中,例如会不会在采AD的时候用了很长时间,或者其他函数用了过长的时间?

点评

是有可能会被其他中断程序中断,  详情 回复 发表于 2016-8-31 19:57
 
 
 

回复

2700

帖子

0

TA的资源

五彩晶圆(初级)

4
 
火火山 发表于 2016-8-31 19:54
功能是采用查询方法的的,没有使用中断

为了误操作,我用了5个循环判断P3.4口一定是高电平,在这个5个 ...

是有可能会被其他中断程序中断,

点评

我没有开中断,只用了一个定时器  详情 回复 发表于 2016-8-31 20:00
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 

回复

348

帖子

0

TA的资源

一粒金砂(高级)

5
 
本帖最后由 火火山 于 2016-8-31 20:11 编辑
elvike 发表于 2016-8-31 19:57
是有可能会被其他中断程序中断,

我没有开中断,只用了一个定时器
然后我在Check In 这个函数后面放了一个time = 0; 在定时器中  time++ ,   然后在最后一个函数的最后读出这个time是多少值,这样可以求出我后面的函数所花的时间用了多少吗?(事实证明,是不可以的)

ADC我用的是也是查询的方法
 
 
 

回复

7228

帖子

192

TA的资源

五彩晶圆(高级)

6
 
没看出什么问题嘛 感觉还蛮正常的~~~~~

点评

我知道哪里的问题了。。。。。我采AD的函数,耗时1.424s 。。。。。。。我选择狗带  详情 回复 发表于 2016-9-1 09:01
 
 
 

回复

348

帖子

0

TA的资源

一粒金砂(高级)

7
 
常见泽1 发表于 2016-9-1 08:33
没看出什么问题嘛 感觉还蛮正常的~~~~~

我知道哪里的问题了。。。。。我采AD的函数,耗时1.424s  。。。。。。。我选择狗带

点评

取了太多次 进行软件滤波了? AD没这么慢。。  详情 回复 发表于 2016-9-1 11:31
 
 
 

回复

7228

帖子

192

TA的资源

五彩晶圆(高级)

8
 
火火山 发表于 2016-9-1 09:01
我知道哪里的问题了。。。。。我采AD的函数,耗时1.424s  。。。。。。。我选择狗带

取了太多次 进行软件滤波了? AD没这么慢。。

点评

取了32次,进行了软件滤波,但是问题不在这里,问题在于我在采AD的时候把总中断关了,结束时没有开,想请教一下,为什么采AD时需要把总中断关了再开? 像我这种情况,关了中断采AD,不开中断,程序就一直在AD中  详情 回复 发表于 2016-9-1 11:37
 
 
 

回复

348

帖子

0

TA的资源

一粒金砂(高级)

9
 
常见泽1 发表于 2016-9-1 11:31
取了太多次 进行软件滤波了? AD没这么慢。。

取了32次,进行了软件滤波,但是问题不在这里,问题在于我在采AD的时候把总中断关了,结束时没有开,想请教一下,为什么采AD时需要把总中断关了再开?

像我这种情况,关了中断采AD,不开中断,程序就一直在AD中跑,AD花了最长的时间
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表