关于S7_200时基中断问题 点击:1404 | 回复:9



梦回原野

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 30回
  • 年度积分:0
  • 历史总积分:55
  • 注册:2005年1月05日
发表于:2006-03-22 15:54:00
楼主

我在S7_200采用时基中断,想对一个数值进行定期采样,程序如下

主程序:
MAIN
LD SM0.0
CALL SBR-1


子程序:
SBR_1
Network 1
LD SM0.0
MOVE 250,SMB34
ATCH INT4,10
ENI

中断程序
INT 4
LD SM0.0
MOVD  VD600,VD608
-D      VD604,VD608
MOVD VD600,VD604

但在实际运行中, VD604始终为0。好象是中断4始终没有运行,在线监视时INT 4的植会变为2。(我怀疑是否在程序中采用高速计数器,时基中断的优先级太低始终得不到允许)
不知各位有没见过这种情况,该如何解决?



梦回原野

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 30回
  • 年度积分:0
  • 历史总积分:55
  • 注册:2005年1月05日
发表于:2006-03-23 08:13:00
1楼
这事有点麻烦,请高手指点!

流浪鱼

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 49回
  • 年度积分:0
  • 历史总积分:116
  • 注册:2005年6月15日
发表于:2006-03-24 14:49:00
2楼
数据采样用的是模拟量,但你的VD600是什么意思呀
那不是数字量了,你再看看西门子的手册,那里有专门讲这个的
我个人认为是程序有问题

李承亮

  • 精华:0帖
  • 求助:0帖
  • 帖子:9帖 | 88回
  • 年度积分:0
  • 历史总积分:143
  • 注册:2002年8月09日
发表于:2006-03-24 17:38:00
3楼
写清楚点吧,你的怀疑没有必要,高速记数的中断频率不可能那么高,不然光响应中断了,程序还执行不拉?呵呵

qinlihua

  • 精华:0帖
  • 求助:0帖
  • 帖子:17帖 | 154回
  • 年度积分:0
  • 历史总积分:200
  • 注册:2005年5月31日
发表于:2006-03-24 19:09:00
4楼
呵呵
    "李承亮"说的对,程序都不用执行啦,呵呵...

黑小鸟

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 21回
  • 年度积分:0
  • 历史总积分:61
  • 注册:2004年8月27日
发表于:2006-03-24 20:27:00
5楼
我也是才学西门子的,不过我觉得你的程序写得好象不对,中断那里

梦回原野

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 30回
  • 年度积分:0
  • 历史总积分:55
  • 注册:2005年1月05日
发表于:2006-03-28 08:01:00
6楼
我不是要采样模拟量,VD600是原来程序里面的量,我不想改变原来的程序,但又需要监视VD600的变化情况,所以加了一段。但我认为不管是模拟量,还是监视VD变量,用时基中断都应该是可以的。
也许我的怀疑是没道理,但为什么INT 的值明明编写时是4,运行时会变成2?

lcp365

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 12回
  • 年度积分:0
  • 历史总积分:14
  • 注册:2006年8月16日
发表于:2007-10-18 14:51:00
7楼
把调用定时中断处的SM0.0改为SM0.1

张文轩

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 105回
  • 年度积分:0
  • 历史总积分:154
  • 注册:2004年8月12日
发表于:2007-10-18 15:00:00
8楼
初始化只要调用一次就可以了


T22

  • 精华:1帖
  • 求助:0帖
  • 帖子:21帖 | 145回
  • 年度积分:0
  • 历史总积分:347
  • 注册:2006年5月23日
发表于:2007-10-18 15:36:00
9楼
下面引用由张文轩在 2007-10-18 15:00:00 发表的内容:
  初始化只要调用一次就可以了<br><br><br>
--------------------------------------------------------------------------------------------
西门子的200程式,也很讲究程式结构了,很值得学习,个人认为。中断初始化一次告诉CPU有这么个事就行了,SM0.0后的初始化放在主程式中,其他程式可能得不到执行(没上机)

热门招聘
相关主题

官方公众号

智造工程师