⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pic12f508.c

📁 PIC点亮LED灯的源程序,GP3因为做编程电压VPP和复位脚MCLR
💻 C
字号:
//实验目的:GPIO口的流水灯,熟悉PIC12F508的I/O口的操作
//GP3因为做编程电压VPP和复位脚MCLR,所以不点亮该口的LED
//硬件要求:
//1)时钟选择OSCC跳到I/O
//2)断开j5/j6或者j7/j8
//3)拨码开关S13全部置ON
#include<pic.h>

  __CONFIG(0x0ffa);  
//看门狗关,内部RC振荡,GO0/GP1做I/O,不加密,MCLR脚做复位

//---------------------------------
//延时函数
void delay()
{
 int i;
 for(i=5000;i>0;i--);
}

//--------------------------------
//初始化函数
void init()
{
    TRIS=0X00;                   //设置所有I/O口为输出
    OPTION=0X00;                 //设置所有I/O走做普通I/O口
}

//-------------------------------
//亮灯函数
void led()
{
    char i;
    while(1)
      {
        GPIO=1;                 //点亮GP0
        for(i=3;i>0;i--)        //循环3次(GP0-GP2)
          {
            delay();
            delay();
            delay();           //调用3次延时函数
            GPIO=GPIO<<1;      //左移一位,点亮下一位LED
          }
         GPIO=0x10;            //电亮GP4
        for(i=2;i>0;i--)       //循环2次(GP4-GP5)
          {
            delay();
            delay();
            delay();
            GPIO=GPIO<<1;
           }
       }
}

//--------------------------------
//主函数
void main()
{
   init();                    //调用初始化函数
   led();                     //调用亮灯函数
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -