机械必威体育网址

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: thenblue
打印 上一主题 下一主题

PLC定时器和计数器

[复制链接]
11#
发表于 2016-4-13 08:17:07 | 只看该作者
你的目的是 控制动作周期  而不是时间延时的  就会用计数器组合 而非  时间继电器。

点评

好像就是作者的编程习惯,他的目的并不是控制动作周期,比如延时30分钟关机等。  发表于 2016-4-14 17:40
回复 支持 反对

使用道具 举报

12#
发表于 2016-4-14 16:22:46 | 只看该作者
初学者  来看看
回复 支持 反对

使用道具 举报

13#
发表于 2016-4-16 08:54:46 | 只看该作者
有的PLC的定时器是有限制的,最大值32767转换过来45秒,再长的定时就需要用计数器。
回复 支持 反对

使用道具 举报

14#
发表于 2016-4-16 09:24:31 | 只看该作者
其实所有的定时器都是用计数器做的,PLC也是由单片机构成的。看看单片机的定时程序就明白了
0 z6 C: V) z" A* w& U6 L /****************************中断子程序_定时***************************************/
  x& u. G& u  \: _( zvoid Timer0() interrupt 1
1 d' N% k+ U3 h' B4 R {
9 W, \( w" c. s. [( t4 G: Z         static         Count1=0,Count2=0;          //静态变量计数器1
5 R& I; d% }  N7 w        Count1++;                      //每次中断计数器加11 c. N& U) b9 k- @% H, g
        Count2++;                      //每次中断计数器加1$ |# l7 t3 n( _) l- L: P' {
        if(Count1>=12)                   //如果计数器1超过123 ^3 T. ^+ u6 G
        {
! ^3 q1 ?$ N: R. v' g+ ]( G/ y        time_led_sansuo=!time_led_sansuo;
3 P: m  K$ x( [: o        Count1=0;
+ a$ V- Y8 O0 o        }
/ S  ]' i: }4 H5 O# r4 e- ~        if(time_led_sansuo)
" s( s  K* e1 k7 W        led_dis &= 0xbf;) S  C- |. j/ [% P( s& r
        else
( ]" @; ]( N, c7 p$ v$ R" I        led_dis |= 0x40;                ( d' z- ^2 J& ?7 e
        if(Count2>=100)                   //如果计数器2超过100+ I# E8 g- k* k5 l
        {        " d9 q5 O- V- d$ a; B/ M8 L' b- C
    time_run--;$ T! |2 v- C5 G3 h% [; u
        if(time_run==0)
4 B+ u) G+ F! J6 x         {
. o$ ^; u/ H  R8 O  m         ET0=0;                                                          //关定时器0
0 k% `, Q* H# B( b2 x( Y& K/ W4 Q8 d         Time_on=2;( I+ X6 b) k! {: _1 e
         EX0=1;                                          //开外部0中断;
  d2 Q5 f$ E* X         }
1 }2 _* P' }% \/ b  ~        Count2=0;                      //计数器清零4 {) Y1 a. i$ a& }" B) K
        }
' P) w" j8 Z3 R: l5 E0 G' R0 A+ Z/ y9 N( J( g, H
        TH0=0x28;                       //重置定时初值8 O4 L% a( ~+ ?
        TL0=0x4b;
; T% Q) o8 Q( c4 j }

点评

赞,这样就清除了。谢谢啦!  发表于 2016-4-16 12:12
回复 支持 反对

使用道具 举报

15#
发表于 2016-4-22 11:41:03 | 只看该作者
我也觉得这个跟写程序的人的习惯有关吧
回复 支持 反对

使用道具 举报

16#
发表于 2016-5-4 17:00:46 | 只看该作者
硬件程序的设计一是依靠片内资源,二就是设计者的编程习惯,在数字电路中'定时器的本质就是对时钟信号进行计数到指定值然后>进入对应的中断服务程序。所以没有必要特意区分二者区别,在实际案例中可以主要是否有其他子功能使用定时器,为了避免冲突二而采用计数器作为定时元件?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械必威体育网址 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2024-12-26 02:10 , Processed in 0.050140 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表