标题: 005-双灯LED跑动 [打印本页]

作者: 小呆瓜123    时间: 2017-12-25 10:49
标题: 005-双灯LED跑动
/*头文件*/
#include <reg52.h>      
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char



/*端口定义*/
       
#define led_port  P0      /*定义LED显示的数据脚*/


/*1MS为单位的延时程序*/
void delay_1ms(uchar x)
{
    uchar j;
    while(x--){
        for(j=0;j<125;j++)
            {;}
        }   
}


/*主程序*/
void main()
{
        uchar led_sdata; /*显示寄存器*/
        uchar i;
        while(1){
                led_sdata=0xfe; /*初始化显示寄存器为1号灯亮*/
                led_port = led_sdata; /*将显示寄存器输出到LED端口*/
                delay_1ms(200);
                delay_1ms(200); /*延时*/
                led_sdata=0xfc; /*显示寄存器为1.2号灯亮*/
                for(i=0;i<8;i++){
                        led_port = led_sdata; /*将显示寄存器输出到LED端口*/
                        led_sdata = (led_sdata<<1)+1; /*将显示寄存器数据左移1位,并将第一位置高,即熄灭*/
                        delay_1ms(200);
                        delay_1ms(200); /*延时*/
                        }
                led_sdata=0xff; /*灯全灭*/
                led_port = led_sdata; /*将显示寄存器输出到LED端口*/
                delay_1ms(200);
                delay_1ms(200); /*延时*/
                }       
}








欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1