plc数码管显示程序梯形图

plc数码管显示程序梯形图,第1张

数码管每一段相当于二极管,连接PLC输出点,要显示数字几,就将对应段点亮,几输入端有就输入。

用途:将指定数字的十六进制内容转换为8位,7段显示代码,并将其放入指定目标字的高8位或低8位中。

七段数码管已可以特定的集成电路控制,只要向集成电路输入4-bit的二进制数字讯号就能控制七段数码管显示;市面上更有 8421-BCD 代码直接转为七划管控制电平的 IC,方便配合单片机使用。

扩展资料:

根据梯形图中各触点的状态和逻辑关系,求出与图中各线圈对应的编程元件的状态,称为梯形图的逻辑解算。

梯形图中逻辑解算是按从左至右、从上到下的顺序进行的。解算的结果,马上可以被后面的逻辑解算所利用。逻辑解算是根据输入映像寄存器中的值,而不是根据解算瞬时外部输入触点的状态来进行的。

参考资料来源:百度百科-梯形图

这是参考程序,把dofly_DuanMa[]里面的值改成a、b、c、d、e、f、g、h的对应段码值就行,然后位选信号看下你的连接电路是怎么接的。希望采纳,有疑问请追问。

#include<reg52h>

#define DataPort P0 //定义数据端口 程序中遇到DataPort 则用P0 替换 sbit LATCH1=P2^2;//定义锁存使能端口 段锁存

sbit LATCH2=P2^3;// 位锁存

unsigned char code dofly_DuanMa[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};// 显示段码值01234567

unsigned char code dofly_WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//分别对应相应的数码管点亮,即位码

void Delay(unsigned int t); //函数声明

/------------主函数-----------------/

main() {

unsigned char i=0;

while(1)

{ DataPort=dofly_WeiMa[i]; //取位码

LATCH2=1; //位锁存

LATCH2=0;

DataPort=dofly_DuanMa[i]; //取显示数据,段码

LATCH1=1; //段锁存

LATCH1=0;

Delay(600); // 扫描间隙延时,时间太长会闪烁,太短会造成重影,

i++;

if(8==i) //检测8位扫描完全结束?如扫描完成则从第一个

i=0; }

}

/------------------- 延时函数,含有输入参数 unsigned int t,无返回值 unsigned int 是定义无符号整形变量,其值的范围是 0~65535 ----------------/

void Delay(unsigned int t)

{ while(--t); }

只需要将单片机的P2端口输出数字对应的段码即可。

继电器的电压选择和可以为5V的用一个三极管做电流放大控制,毕竟单片机的输出能力不够驱动继电器,三极管选择8050系列或8550系列,基极电阻可选用2K的。5V/2K=25mA足够使三极管饱和导通输出最大800mA的电流(自然散热情况下,继电器的电流在100mA左右)。

数码管两位的采用共阳,同样使用三极管控制共阳位(占用两个I/O口)数码段及小数点占用8个I/O口采用500欧姆电阻。数码管以至少250HZ的频率轮显,每次停留1mS这样才能感觉不闪烁,并且亮度也够。

具体程序如下:

#include <reg51h>

#define uchar unsigned char

sbit P20=P2^0;

void delay_ms(unsigned int ms) //1ms延时

{

uchar a;

while(ms--)

for(a=123;a>0;a--);

}

uchar code tab[]={0x3F,0x06,0x5B,0x4F,0x66,

0x6D,0x7D,0x07,0x7F,0x6F};

void main()

{

while(1)

{ uchar b;

P20=0;

P0=tab[b];

delay_ms(1000);//1s延时

b++;

if(b==10)

b=0;

}

}

扩展资料:

数码管原理

数码管常用段数一般为7段有的另加一个小数点,还有一种数码管是类似于3位“+1”型。数码管位数有半位,1,2,3,4,5,6,8,10位等。数码管根据LED的接法不同分为共阴和共阳两类,了解数码管的这些特性,数码管对编程是很重要的。

因为不同类型的数码管,除了数码管的硬件电路有差异外,数码管编程方法也是不同的。数码管的发光原理是一样的,只是数码管的电源极性不同而已。

数码管颜色有红,绿,蓝,黄等几种。数码管广泛用于仪表,时钟,车站,家电等场合。选用数码管时要注意产品尺寸颜色,功耗,亮度,波长等。下面将介绍常用数码管内部引脚。

数码管引脚定义每一笔划都是对应数码管一个字母表示数码管DP是小数点。数码管透过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是数码管动态驱动。每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极体的余辉效应。

尽管实际上各位数码管并非同时点亮LED数码管,但只要数码管扫描的速度足够快,数码管给人的印象就是一组稳定的显示资料,数码管不会有闪烁感,数码管动态显示的效果和静态显示是一样的,数码管能够节省大量的I/O口,而且数码管功耗更低。

以上就是关于plc数码管显示程序梯形图全部的内容,包括:plc数码管显示程序梯形图、试编写程序:8位数码管动态显示数字AbcdEFgH、怎样使数码管在按键识别时能正常显示数字(考虑延时程序部分的处等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9841789.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存