您当前的位置:五五电子网电子知识单片机-工控设备PIC单片机PIC16F785 LED流水灯程序 正文
PIC16F785 LED流水灯程序

PIC16F785 LED流水灯程序

点击数:7769 次   录入时间:03-04 11:54:00   整理:http://www.55dianzi.com   PIC单片机
#include<pIC.h>

  __CONFIG(0x33f4);  
//看门狗关,复位脚做复位,内部RC振荡,RA4/RA5做I/O

//------------------------------------
//延时函数
void delay()
{
 int i;                       //定义循环变量
 for(i=5000;i>0;i--)          //循环次数控制
    {
      NOP();                  //消耗一个指令周期时间
      NOP();
    }
}

//------------------------------------
//初始化函数
void init()
{
    TRISA=0X00;               //设置A口为输出
    TRISC=0X00;               //设置C口为输出
    TRISB=0X00;
}

//------------------------------------
//亮灯函数
void LED()
{
    char i;                   //设置循环变量
    while(1)
      {
        PORTA=1;              //点亮RA0
        for(i=3;i>0;i--)      //循环次数(RA0-RA2)
          {
            delay();
            delay();
            delay();          //调用3次延时函数
            PORTA=PORTA<<1;   //点亮下一位LED
          }
         PORTA=0X10;          //点亮RA4
        for(i=2;i>0;i--)      //循环2次(RA4-RA5)
          {
            delay();
            delay();
            delay();
            PORTA=PORTA<<1;
          }
         PORTA=0;            //清除A口的所有显示

          PORTB=0X10;            //点亮RC0
        for(i=4;i>0;i--)     //循环6次(RB0-RB5)
          {
            delay();
            delay();
            delay();
            PORTB=PORTB<<1;
           }
         PORTB=0x40;           //清除所有RB口的显示
         PORTC=1;            //点亮RC0
        for(i=8;i>0;i--)     //循环6次(RB0-RB5)
          {
            delay();
            delay();
            delay();
            PORTC=PORTC<<1;
           }
         PORTC=0;           //清除所有RB口的显示
       }
}

//--------------------------------------
//主函数
void main()
{
   init();                  //调用初始化函数
   led();                   //调用亮灯函数
}
PIC16F785 LED流水灯程序


本文关键字:程序  PIC单片机单片机-工控设备 - PIC单片机