电子产业一站式赋能平台

PCB联盟网

搜索
查看: 1798|回复: 0
收起左侧

单片机C语言实例-154-流水灯A

[复制链接]
发表于 2022-1-24 10:53:31 | 显示全部楼层 |阅读模式
单片机C语言实例-154-流水灯A

/********************************************************************
* 文件名  : 流水灯.c
* 描述    :  该程序实现LED的流水灯显示。
                         该程序用于学习 LED流水灯 的控制方法。
                         本例中是调用的 intrins.h 中的函数实现的循环移位。                 
* 创建人  : 东流,2009年8月27日
* 版本号  : 1.0
***********************************************************************/
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint  unsigned int

/********************************************************************
* 名称 : Delay()
* 功能 : 延时,延时时间为 10ms * del
* 输入 : del
* 输出 : 无
***********************************************************************/
void Delay(uint del)
{
        uint i,j;
        for(i=0; i<del; i++)
        for(j=0; j<1827; j++)   
        ;
}

/********************************************************************
* 名称 : Main()
* 功能 : 实现灯的闪烁
* 输入 : 无
* 输出 : 无
***********************************************************************/
void Main(void)
{
        uchar i;
        while(1)
        {
                P0 = 0x7f;                                        //P0.7亮亮
                for(i=0; i<7; i++)                        //移位7次
                {
                        P0 = _cror_(P0, 1);                //_crol_()这个函数在intrins.h中定义了,用于循环右移
                        Delay(15);
                }
                P0 = 0xfe;
                for(i=0; i<7; i++)
                {
                        P0 = _crol_(P0, 1);            //用于循环左移
                        Delay(15);
                }

        }
}


更多详情参考附件文档
+08:00C161联盟网4688.png
游客,如果您要查看本帖隐藏内容请回复

回复

使用道具 举报

发表回复

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

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表