电子说
T触发器(Toggle Flip-Flop)Toggle是一个边缘触发的切换触发器,输出Q在输入CLK的每个上升沿时发生变化,在输入CLK的上升沿时翻转输出Q。输入RST为1时输出Q输出值为0且保持不变。
时间图如下:
其中:RST:重置, CLK:时钟, Q:输出
*假设最初 RST 和CLK 都是低电平 ( RST = CLK =0),输出 Q 是低电平 (Q = 0);
*当输入RST为低电平(RST = 0),在CLK脉冲的上升沿t1、t2、t3和t4处,Q 处的输出改变状态发生翻转;
*CLK在时间上从高电平到低电平的转换对Q输出没有影响,因为触发器处于一个稳定状态。
*当输入RST为高电平(RST = 1),可防止重置Q输出状态,无论CLK脉冲处于上升沿处(图为t6和t7)或下降沿处。因此,当 RST = 1 时,输出Q=0保持不变。
源代码:
FUNCTION_BLOCK "Toggle"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_INPUT
CLK : Bool;
RST : Bool;
END_VAR
VAR_OUTPUT
Q : Bool;
END_VAR
VAR
edge : Bool;
END_VAR
BEGIN
IF #RST THEN
#Q := 0;
ELSIF #CLK AND NOT #edge THEN
#Q := NOT #Q;
END_IF;
#edge := #CLK;
END_FUNCTION_BLOCK
全部0条评论
快来发表一下你的评论吧 !