您现在所在的是:

现场总线

回帖:1个,阅读:3900 [上一页] [1] [下一页]
840
norman
文章数:9
年度积分:50
历史总积分:840
注册时间:2002/12/18
发站内信
发表于:2003/1/9 13:15:00
#0楼
'实现连续多个数据寄存器值的打印!
'与诸多触摸屏不同,这里的打印不是画面的硬拷贝,因为这里使用的是微打!
'只要打印机支持,可以打印任意汉字;支持打印的各种格式控制,如换行、字体选择、字体放大等!
'使用非常灵活,廉价使用!

declare BcdBinConvert%(mode%,data%)

init
  cyclic [局号]~[寄存器]*[寄存器个数]  '对多个数据寄存器值进行监控
  static num%([寄存器个数]-1)          '定义一个静态数组变量

  opentim3([定时器号])                    '为了实现定时打印功能,可以启动内部定时器(连续3行一块使用)
  settim [定时器号],[定时打印间隔时间],1
  starttim [定时器号]

end init

conf
end conf

evnt
   input type%, id@, data%    
   if type%=16 then
      offset%=getoffset([局号]~[寄存器]*[寄存器个数],id@)
      num%(offset%)=BcdBinConvert%([Bin:1/SignBin:2/BCD:3],data%)  '判断数据的类型,是BCD数还是BIN数
   else if type%=3 or type%=4 then
      for i%=0 to [寄存器个数]-1
          print num%(i%),chr$(&H0D)                                '打印数据(格式为:数据,结束码——结束码不打印)
      next
      print chr$(&H1B),chr$(&H40)                                  '格式控制码
      send prn                                                     '送打印机
   end if
end evnt
487
kim8488960
文章数:3
年度积分:-16
历史总积分:487
注册时间:2009/6/30
发站内信
发表于:2019/8/14 12:12:42
#1楼
此楼内容不符合板块规定,不予显示! 查看原帖内容>>

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003