找回密码
 立即注册

QQ登录

只需一步,快速开始

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

如何用51单片机和定时计数器设计一个按2s交替闪烁的三盏灯系统 求思路

[复制链接]
楼主
ID:715652 发表于 2020-5-20 21:12 | 显示全部楼层
灯的端口为0时为亮
回复

使用道具 举报

沙发
ID:715652 发表于 2020-5-20 21:13 | 显示全部楼层
#include<reg51.h>
sbit D1=P0^0;  //可以找I/O口的任意三个端口
sbit D2=P1^1;
sbit D3=P2^2;
void DelayMs(int x)  //延时
{
        int i;
        while(x--)        for(i=0;i<120;i++);
}
void init()  //初始化
{
        TMOD=0x02;  //T0方式2定时 自动重装的方式
        TR0=1;     //开寄存器
        TH0=256-200;  //设置200us的初值
}
void main()
{
        int t=0,t1=0;
        init();
        while(1)
        {
                if(TF0)        TF0=0,t++;  //清除溢出标志
                if(t==10000) t=0,t0++;   //当t为10000为2s
                switch(t0)
                {
                        case 0:D1=0,D2=1,D3=1;break;
                        case 1:D1=1,D2=0,D3=1;break;
                        case 2:D1=1,D2=1,D3=0;break;
                        default:t=0;
                }
        }
}
回复

使用道具 举报

板凳
ID:715652 发表于 2020-5-20 21:14 | 显示全部楼层
灯的端口为0时为点亮,希望有用!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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