上不了路
最近遇到一个题目,是关于数码管LED显示的. 请帮忙指教一下.谢谢你了
?启动SB1,数码管显示0,经过5秒后数码管LED自动变为数字1,按此规律连续下去,直到LED显示数字为9后,LED数码管重新显示数字0 .直到按下停止按钮SB2为止.
??请师傅们指点迷经啊!
李占生
能不能用上升沿后一个5秒的脉冲,然后用记数器 完成 ?
?
luckboypwd
用数字传输指令和七段译码指令
老狼
哥们你是想用单片机还是硬件电路来实现啊!题目很简单,给出具体条件啊~
老菜鸟
因为你的题目没有表达清楚,所以分情况讨论一下实现方法:
一、硬件连接的问题(以1个七段数码管来分析):
1、如果你的数码管就是“裸体”的数码管@_@,那么就需要7个PLC的输出,这是铁定的。
2、如果你所说的“数码管”是数码显示器成品,那么可能是采用十进制码、BCD码(8421码)、格雷码以及选通脉冲和数据输入等输入形式的显示器,不过这类显示器以8421码居多,例如欧姆龙、奥托尼克斯的数码显示器。
在下面,以原始的PLC输出7个信号的情况来分析。在硬件接线的时候,注意:每个PLC的输出设计一个限流电阻,以免数码管被烧坏。这个限流电阻的阻值计算请参阅帖子:http://www.gongkong.com/Forum/ForumTopic.aspx?Id=2008102107255800001
这个笨办法就是:该显示0的时候让abcdef导通,显示1的时候让bc导通。。。。。。。
接合到PLC程序就有2种方法实现:
1、直接写a输出:T0、T2、、T3、T5、T6、T7、、T8、T9导通时,a输出动作。。。。。。。。。。。。然后一直写到g输出。
这里说的Tn指的是:只有显示n的时候,Tn才会动作。当然,你也可以采取其他方式来实现这个控制,效果相同就行了。
2、采用七段译码指令来实现这个功能。七段译码指令就是为了显示七段数码而设计的。三菱、西门子都有这种指令。
S7-200的七段译码指令:段码指令(SEG)允许您产生一个点阵,用于点亮七段码显示 器的各个段。
限于篇幅,更具体的指令用法请参阅相关手册,在这里就不赘述了。
szbobo
如果是用三菱的PLC,直接使用BCD指令就可以了
一个数码管值需要占用PLC的四个输出点
详细参阅译码器的说明:输出点的接线需要对应到驱动数码管的译码器针脚,合理选择电阻,公共端的连接。。。
至于数据的变化时间,一次变多少,可以很灵活的控制:计时器确定变化时间,计数器确定变化量(或上升沿加法)