搜索
bottom↓
回复: 9

想写一个51定时器延时五秒的子函数

[复制链接]

出0入0汤圆

发表于 2011-5-11 22:35:05 | 显示全部楼层 |阅读模式
请教傻孩子一个问题,我想写一个51定时器延时五秒钟的子函数请赐教。

出0入296汤圆

发表于 2011-5-12 10:02:25 | 显示全部楼层
没有用过51……你的疑问觉得在什么地方?

出0入0汤圆

 楼主| 发表于 2011-5-12 10:10:29 | 显示全部楼层
回复【1楼】Gorgon Meducer 傻孩子
-----------------------------------------------------------------------

想实现,定时器延时五秒的时候CPU可以去做其他的事情,我的CPU要重复去检测P2.1,如果用其他延时的话,会出现检测不到和检测滞后的现像,所以想封装一个能延时五秒的函数,用定时器0,谢谢了

出0入296汤圆

发表于 2011-5-13 17:02:50 | 显示全部楼层
你用的51有定时器么?可以产生定时器中断么?你会设定定时器中断的周期么?

出0入0汤圆

发表于 2011-6-4 11:09:13 | 显示全部楼层
回复【3楼】Gorgon Meducer 傻孩子
----------------------------------------------------------------------
真是很谢谢傻孩子这样的大侠 不管什么样小的问题也会细细教

出0入0汤圆

发表于 2011-6-4 14:22:12 | 显示全部楼层
设立一个标志位,就用定时器中断做个5秒,然后对标志位判断

出0入0汤圆

发表于 2011-7-21 16:29:43 | 显示全部楼层
定时器定时时间设为50毫秒~按晶振还有指令周期算出THL,THH值
定义一个全局变量NUM
定时时间到了,装初值,NUM++.。。。。num=20的时候说明一秒到了
主程序里判断if(num==100),及到5秒。再将NUM清零
思路就是这样

出0入0汤圆

发表于 2011-7-21 22:25:18 | 显示全部楼层
我也觉得用定时器就好、

出0入0汤圆

 楼主| 发表于 2011-7-25 00:30:35 | 显示全部楼层
解决了 这个是51中断程序

void timer0 () interrupt 1
        {
                TH0=(65536-50000)/256; //设置初值
                TL0=(65536-50000)%256;
                LED_5=0;
                AA++;
                if(AA==156)   //8秒
                { LED_5=1;
              EA=0;      //关总中断开关
                  ET0=0;     //关定时器中断
                  TR0=0;     //关定时器
                  AA=0;
                  CTOUT_1=0,         //开一号                  
                  CTOUT_1=0;         //开一号
                  CTOUT_1=0;         //开一号
                  EA=0;      //关总中断开关
                  ET0=0;     //关定时器中断
                  TR0=0;     //关定时器
                }
        }

出0入0汤圆

 楼主| 发表于 2011-7-25 00:31:04 | 显示全部楼层
解决了 这个是51中断程序

void timer0 () interrupt 1
        {
                TH0=(65536-50000)/256; //设置初值
                TL0=(65536-50000)%256;
                LED_5=0;
                AA++;
                if(AA==156)   //8秒
                { LED_5=1;
              EA=0;      //关总中断开关
                  ET0=0;     //关定时器中断
                  TR0=0;     //关定时器
                  AA=0;
                  CTOUT_1=0,         //开一号                  
                                  }
        }
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-5 09:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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