找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5181|回复: 0
打印 上一主题 下一主题
收起左侧

用定时器实现1S准时切换

[复制链接]
跳转到指定楼层
楼主
ID:105206 发表于 2017-3-14 11:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
废话扫说少说,上代码,经过开发板测试过。
/***********************************************
功能:实现继电器1S准时切换
************************************************/

#include <STC89C5xRC.H>

typedef unsigned int u16;
typedef unsigned char u8;



sbit Relay =P1^0;   //继电器配置IO口
/***********************************************
定时期函数
************************************************/
void Timer0Init(void)                //50毫秒@12.000MHz
{
       
        TMOD |= 0x01;                //设置定时器模式
        TL0 = 0xB0;                //设置定时初值
        TH0 = 0x3C;                //设置定时初值
        EA=1;
        ET0=1;
        TR0 = 1;                //定时器0开始计时
}


/***********************************************
主函数
************************************************/
int main()
{
        Timer0Init();
        while(1)
        {
                       
        }
}

/***********************************************
中断函数
************************************************/
void Timer0() interrupt 1   //50毫秒@12.000MHz
{
        u16 temp;
        TL0 = 0xB0;                //设置定时初值
        TH0 = 0x3C;                //设置定时初值
        temp++;
        if(temp==20)
        {
                temp=0;
                Relay=~Relay;   //继电器


        }
}

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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