×
单片机 > 单片机程序设计 > 详情

pic16f单片子源码,LED0 - LED5 流水点亮

发布时间:2020-06-03 发布时间:
|

//
// 实验描述:LED0 - LED5 流水点亮
//
// 注意事项:
//
//-------------------------------------------------------------------------------

#include "pic.h"

__CONFIG(FOSC_HS&WDTE_OFF&LVP_OFF); //外部晶振 WDT OFF

#define _XTAL_FREQ   8000000L       //8MHz晶振


#define LED0  PORTCbits.RC2         //LED宏定义
#define LED1  PORTCbits.RC1
#define LED2  PORTCbits.RC0
#define LED3  PORTAbits.RA5
#define LED4  PORTAbits.RA3
#define LED5  PORTAbits.RA2

//-------------------------------------------------------------------------------
//        主程序
//-------------------------------------------------------------------------------
void main(void)
{        
        ADCON1= 0b11001110;      //RA0 for AN0 

        TRISA = 0b11010011;      //RA2 RA3 RA5 输出
        TRISB = 0b11111100;      //RB0 RB1 输出
        TRISC = 0b11011000;      //RC0-RC2 输出
        
        LED0 = 1;                //LED0-LED5 亮
        LED1 = 1;
        LED2 = 1;
        LED3 = 1;
        LED4 = 1;
        LED5 = 1;
        __delay_ms(800);         //延时
        LED0 = 0;                //LED0-LED5 灭
        LED1 = 0;
        LED2 = 0;
        LED3 = 0;
        LED4 = 0;
        LED5 = 0;
        __delay_ms(10);          //延时
        
        while(1)
        {
                LED0 = 0;            //LED5 亮
                LED1 = 0;
                LED2 = 0;
                LED3 = 0;
                LED4 = 0;
                LED5 = 1;
                __delay_ms(200);     //延时
                LED0 = 0;            //LED4-LED5 亮
                LED1 = 0;
                LED2 = 0;
                LED3 = 0;
                LED4 = 1;
                LED5 = 1;
                __delay_ms(200);     //延时
                LED0 = 0;            //LED3-LED5 亮
                LED1 = 0;
                LED2 = 0;
                LED3 = 1;
                LED4 = 1;
                LED5 = 1;
                __delay_ms(200);     //延时
                LED0 = 0;            //LED2-LED5 亮
                LED1 = 0;
                LED2 = 1;
                LED3 = 1;
                LED4 = 1;
                LED5 = 1;
                __delay_ms(200);     //延时
                LED0 = 0;            //LED1-LED5 亮
                LED1 = 1;
                LED2 = 1;
                LED3 = 1;
                LED4 = 1;
                LED5 = 1;
                __delay_ms(200);     //延时
                LED0 = 1;            //LED0-LED5 亮
                LED1 = 1;
                LED2 = 1;
                LED3 = 1;
                LED4 = 1;
                LED5 = 1;
                __delay_ms(200);     //延时
                LED0 = 0;            //LED0-LED5 灭
                LED1 = 0;
                LED2 = 0;
                LED3 = 0;
                LED4 = 0;
                LED5 = 0;
                __delay_ms(200);     //延时
        }
}


//-------------------------------------------------------------------------------



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
如何为单片机选择合适的负载电容