单片机/MCU论坛
直播中

呵呵呵呵abc

5年用户 8经验值
私信 关注

求解三菱PLC中BIN、BCD指令和变址寄存器的一个应用示例其中几个细节

本帖最后由 呵呵呵呵abc 于 2019-7-22 19:50 编辑

2019722-91334.png

题主头皮屑都抓出来了也没想通,求各位大佬点化~
如图所说,“根据Z0=0~9”,为什么Z0的范围确定在0~9之间?
"(X003~X000)BCD"这四个开关量的BCD值是怎么转化出来的?
我这样想的,比如本周期读取到x003~x000四个开关量为1011,转10进制后等于11,Z0不就等于11了吗?
再比如 假设Z0=9,T0Z0=T9, T9的设定值K为50,当前值为49,那么K4Y0对应的Y017到 Y000这16个输出端子即【十进制49的BCD码01001001】不足16位,是不是应该在前面加8个 0即0000 0000 0100 1001,这样理解对吗?

回帖(4)

杜喜喜

2019-7-22 18:34:39
16位那个直接在前面补零就行
举报

阿信509

2019-7-23 10:40:33
BCD码就是咱们的10进制中的一位,只能是0~9啊
1 举报
  • 呵呵呵呵abc: 【追问】比如本周期读取到x003~x000四个开关量为1011,转10进制后等于11,Z0不就等于11了吗?

呵呵呵呵abc

2019-7-24 23:50:13
"这个例题是说明 Bin 和BCD指令的。
K1Y0 这个存储器 他是取值范围是0-15(0000-1111),如果规定这个存储器是BCD码,那么他的取值范围就只是0-9(0000-1001)。程序第一行是把K1Y0转换成二进制,看右边的图知道X3-X0接了噶一位BCD拨码器 一位拨码器只能拨成0-9(0000-1001)。也就是你只能在0-9之间选数。
T0Z0 的意思是 T0开始的Z0里的值的个数定时器(T0-T9),第二行是把T0或者T0-9的实时值用16位的输出点用4位BCD的7段码现在出来 。4位7段码显示最大9999 最小0000
如果T9 的当前值(实时值)是49 那么7段码 就是0049 Y17-Y0的而二进制就是
0000 0000 0100 1001
这样就明白了吗?"

百度知道--WS无名小卒
举报

呵呵呵呵abc

2019-7-24 23:50:58
"这个例题是说明 Bin 和BCD指令的。
K1Y0 这个存储器 他是取值范围是0-15(0000-1111),如果规定这个存储器是BCD码,那么他的取值范围就只是0-9(0000-1001)。程序第一行是把K1Y0转换成二进制,看右边的图知道X3-X0接了噶一位BCD拨码器 一位拨码器只能拨成0-9(0000-1001)。也就是你只能在0-9之间选数。
T0Z0 的意思是 T0开始的Z0里的值的个数定时器(T0-T9),第二行是把T0或者T0-9的实时值用16位的输出点用4位BCD的7段码现在出来 。4位7段码显示最大9999 最小0000
如果T9 的当前值(实时值)是49 那么7段码 就是0049 Y17-Y0的而二进制就是
0000 0000 0100 1001
这样就明白了吗?"

百度知道--WS无名小卒
举报

更多回帖

发帖
×
20
完善资料,
赚取积分