标题: 51单片机计数器与定时器怎么运用? [打印本页]

作者: 白亚涛147    时间: 2020-8-31 10:40
标题: 51单片机计数器与定时器怎么运用?
sbit K1=P3^0;
sbit led1=P2^1;
void main(void)

{
unsigned char count;

          while(1)
         if(!K1)
          {
              count++;
           {

如果3秒内count的值>2,对计时器,计数器复位,重新开始计时计数。
如果3秒内count的值<2,P2^1=0;

拜托大侠们有没有好的办法?


{

Screenshot_20200831_100656.jpg (358.23 KB, 下载次数: 71)

Screenshot_20200831_100656.jpg

作者: 幻剑心    时间: 2020-9-1 03:06
到芯片官网去下载对应的单片机手册。里面介绍得还是较详细的。先看中断,然后看定时器。当然,如果不想看文档,到论坛下载单片机视频看也是可以的。就是没有文档那么全面。不过入门是足够了。
作者: wwh2382    时间: 2020-9-1 08:20
计时器/计数器是单片机重要的知识点,还是应该认真学习一下的。
作者: aking991    时间: 2020-9-1 08:28
你这个首先要设置一个定时器,可以设置为50ms中断,然后在中断中判断计数60次是否到,时间到时再判断K1是否有大于等于2,如有即LED亮,如没有则计数器清0,并重启定时器再次进行重新计时,方法应就这样,至于程序如何编,可以先参考别人例程,不行再说
作者: cheney03    时间: 2020-9-1 08:33
站内有很多例程,先学习别人的,慢慢弄懂。
作者: aayon1979    时间: 2020-9-1 08:39
开始计数时,打开定时器倒计时,时间到,停止计数,判断计数值。定时器的应用可以看数据手册。
作者: 烈火    时间: 2020-9-1 09:39
设置定时器时,然后打开定时器倒计时,等待时间到了,停止计数,最后判断计数值。
作者: Xiyo    时间: 2020-9-2 15:37
计数器和定时器是单片机的重要部分也是基础,不知道怎么运用就是原理还没弄懂。建议去看看视频学习下,站内外都有。
作者: 下意识    时间: 2020-9-2 20:44
可以定义定时/计数器工作方式,类似于TMOD=0x01这样,利用好定时计数器,这个很简单的,可以用这个来判断,而且51单片机用定时/计数器要比delay延时函数要精准




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1