拖了很久的问题,测自行车车速的,求帮助

已锁定

kkkkkkkkkk00

  • 帖子

    1
  • 精华

    0
  • 被关注

    0

论坛等级:新手

注册时间:2014-08-01

普通 普通 如何晋级?

拖了很久的问题,测自行车车速的,求帮助

469

0

2014-12-03 14:02:06

展开查看
引用自找答案,问题ID:121932

s7-200 高速计数器HC0 输入端I0.0 高电平有效,模式脉冲
SBR_0
TITLE=子程序注释//执行子程序进行自由口和高速计数器的初始化
Network 1 // 网络标题
// 自由口的初始化
LD SM0.0
MOVB 16#09, SMB30

Network 2
// 数据块初始化
LD SM0.0
MOVB 16#1, VB100 //发送的内容字符"1"
MOVB 16#31, VB101

Network 3
// 高速计数器初始化
LD SM0.0
MOVB 16#F8, SMB37 //针对0计数器的控制字节
HDEF 0, 1 //第0个计数器, 模式1脉冲方式
MOVD 0, SMD38 //高速计数器的当前值和设定值
MOVD 1, SMD42
ATCH INT0, 12 //申请中断指令 12事件为HSC0 CV=PV(当前值=预设值)
ENI //允许中断指令
HSC 0

INT_0
LD SM0.0
A SM4.5 //通讯端口闲置时为1
XMT VB100, 0
MOVD 0, SMD38 //高速计数器的当前值和设定值
MOVD 1, SMD42
HSC 0 //使高速计数器0有效
= Q0.4

我发现用手去闭合输入端,一次输出不止一个"1",脉冲不是从低到高的一瞬间吗?还有闭合几次程序就无输出了,我在中断程序里边重新赋值当前值和设定值的,请高手解答下,谢谢!

提问者:kkkkkkkkkk00


WWCWWC 回答道:

你的高速计数器预设值怎么设置为1(SMD42),和当前值怎么是0。
一次人工触发高速输入口,实际上在连接过程中高速计数器已经接受到几个脉冲了。
参考高速计数器初始化程序:
LD     SM0.1
MOVB   16#FC, SMB37
HDEF   0, 9
MOVD   VD100, SMD38
MOVD   16#FFFFFFFF, SMD42
ATCH   长度到达:INT1, 12
ENI
HSC    0

还有2人在找答案上回答了该问题,查看全部>
神人来帮助啊!
拖了很久的问题,测自行车车速的,求帮助 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。