找回密码
 立即注册

QQ登录

只需一步,快速开始

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

呼吸灯 hc595 怎么用c语言定时中断

[复制链接]
跳转到指定楼层
楼主
ID:251011 发表于 2017-11-27 02:16 来自触屏版 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用hc595使八位共阳 led灯
呈呼吸  用c语言中断  定时  求各位大神告知
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:164602 发表于 2017-11-27 08:51 | 只看该作者
我这里有一个呼吸灯程序,你将其中的LED改为你的数码管接口就可以了。
#include<reg51.h>       
#define LED P2//就是这里,改你的数码管口,不要改LED,改P2,我的LED接在P2

unsigned int T=0,Tt=500,i=0,Ii=100,j=0;
bit A=1;//占空比是增加或是减少

void TimeConfig();//定时器中断设置函数

void main(void)
{
        TimeConfig();
        while(1)
        {
                if (T>=Tt)
                {
                        T=0;
                }
                if (i>=Ii)
                {
                        i=0;
                        if (A==1)
                        {
                                j++;
                        }
                        else
                        {
                                j--;
                        }
                }
                if (j==Tt)
                {
                        A=0;
                }
                if (j==0)
                {
                        A=1;
                }
                if (T<=j)
                {
                        LED=0x00;
                }
                else
                {
                        LED=0xff;
                }
        }
}

void TimeConfig()
{
    TMOD = 0x01;
    TH0 = 0xff;       
    TL0 = 0xff;
    EA = 1;               
    ET0 = 1;       
    TR0 = 1;       
}

void Time0() interrupt 1//定时器0中断服务函数
{
        TH0 = 0xff;       
    TL0 = 0xff;
        T++;               
        i++;
}



回复

使用道具 举报

板凳
ID:192235 发表于 2017-11-27 08:51 | 只看该作者
你可以去查查 PWM输出的资料
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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