PIC16F630的I/O口的操作流水灯
扫描二维码
随时随地手机看文章
//实验目的:RC0-RC5口的流水灯,熟悉PIC16F630的I/O口的操作
#include
__CONFIG(0x31b4);
//看门狗关;内部RC振荡,RA4/RA5做I/O,MCLR脚做复位
//------------------------------------
//延时函数
voiddelay()
{
inti;//定义循环变量
for(i=5000;i>0;i--)//循环次数控制
{
NOP();//消耗一个指令周期时间
NOP();
}
}
//------------------------------------
//初始化函数
voidinit()
{
TRISA=0X00;//设置A口为输出
TRISC=0X00;//设置C口为输出
CMCON=0X07;//设置A口为普通数字口
}
//------------------------------------
//亮灯函数
voidled()
{
chari;//设置循环变量
while(1)
{
PORTC=1;//点亮RC0
for(i=6;i>0;i--)//循环6次(RC0-RC5)
{
delay();
delay();
delay();
PORTC=PORTC<<1;
}
PORTC=0;//清除所有RC口的显示
}
}
//--------------------------------------
//主函数
voidmain()
{
init();//调用初始化函数
led();//调用亮灯函数
}