实验目的:使用 C200H-CT021 的计数器 1 计数,更改当前值
实验器材:C200HG-CPU43 C200H-CT021 E6B2-CWZ6C
实验步骤:
1. 把 E6B2-CWZ6C 接入到 C200H-CT021 上
2.把 C200H-CT021 模块上的单元号设置为 0,计数模式为 1,线性模式
3.开启计数器 1,N 的 00 位置 ON,用 MOV 指令传送#1 到 100
在内存区进行以下设置(如图)
4.更改当前值两种方法:IOWR 指令和预置值功能(只有当计数器没有计数时才可以做这两种操作,即没有开启计数时操作)
<1>用 IOWR 更改计数器 1 当前值: 在断电上电时更改当前值是不能直接用 P_First_Cycle 来导通 IOWR,刚上电时模块正在初始化,无法写入,可以自己做一个延时,验证下来是要 0.5S 左右,程序
如下:
控制字:#F100 为更改计数器 1 的当前值
源字:在 DM200 中设置要更改的值。(此处一定要用通道,不能用常数)
目标单元号和传送通道数:#0002
<2>用预置值功能更改计数器 1 当前值:
M+3:0002 第一个传送数据通道号为 2
M+4:0100 传送数据的通道为 DM 区
DM2:00F1 更改计数器 1 的当前值
DM3:1234 预置值为 1234
DM4:0000
当没有开启计数时把 N 的 03 位置 ON 就开始传送了。