|
||||
山东济宁太阳能光伏板( /资讯)各种报废电缆电线
模块化编程实例我们使用AT89C52单片机,在编程软件keil环境下实施一个工程,来说明模块化编程具体操作的方法和步骤。例子要实现的功能:和P1相连的8个LED灯每500ms亮灭交替闪烁,通过串口将数字0-9发送给单片机并显示在一个数码管上。LED闪烁的时间使用定时器0中断方式来控制,T0每50ms溢出产生中断,定义一个计数器,每次T0中断就计数一次,累计计数10次,那么时长为500ms,作为LED闪烁时间间隔。举例来说,你需要控制10个电机,它们的属性都是基本相同的:如“正转(BOOL)”、“反转(BOOL)”、“速度(INT)”、“加速度(INT)”、“减速度(INT)”等,如果程序中你需要用到这些属性,那么你可能需要为10个电机都建立这些变量,如果是单独建立,你就需要建立10*5=50个变量;如果你用UDT来,那就简单多了:先定义一个UDT,名字是MOTOR,里面添加上面所说的2个BOOL变量和3个INT变量(当然有需要可以添加其它数据类型的变量),然后建一个DB块,在里面建立10个变量M1~M10,数据类型就是MOTOR,保存后你会发现这10个变量都包括以上的几个属性,这样你就可以直接在程序中使用了。下图中红色框中的选项一定要勾上,否则会出现变量只能读取不能写入的现象。注意本站号:当打时是10进制,这里必须把10进制转化成16进制,以方便组态王中使用。使用外置以太网模块个步骤同使用内置以太网模块,本例以外置三菱以太网模块QJ17E71-100为例;设置“网络参数”点击“MELSECNET/以太网”配置外置以太网模块可按照实际情况选择上图中的“网络类型”,“起始I/O号”,“网络号”,“组号”,“站号”,并选择对应“模式”。在PLC通信中常采用半双工和全双工通信。异步通信与同步通信在串行通信中,通信的速率与时钟脉冲有关,接收方和发送方的传送速率应相同,但是实际的发送速率与接收速率之间总是有一些微小的差别,如果不采取一定的措施,在连续传送大量的信息时,将会因积累误差造成错位,使接收方收到错误的信息。为了解决这一问题,需要使发送和接收同步。按同步方式的不同,可将串行通信分为异步通信和同步通信。异步通信的信息格式,发送的数据字符由一个起始位、7~8个数据位、l个奇偶校验位(可以没有)和停止位(1位、1.5或2位)组成。 |
|