?? pic16f630.c
字號:
//實驗目的:RA0-RA5,RC0-RC5口的流水燈,熟悉PIC16F630的I/O口的操作
//RA3因為做編程電壓VPP和復位腳MCLR,所以不點亮該口的LED
//硬件要求:
//1)時鐘選擇OSCC跳到I/O
//2)斷開j5/j6或者j7/j8
//3)撥碼開關S11、S13全部置ON
#include<pic.h>
__CONFIG(0x31b4);
看門狗關;內部RC振蕩,RA4/RA5做I/O,MCLR腳做復位
//------------------------------------
//延時函數
void delay()
{
int i; //定義循環變量
for(i=5000;i>0;i--) //循環次數控制
{
NOP(); //消耗一個指令周期時間
NOP();
}
}
//------------------------------------
//初始化函數
void init()
{
TRISA=0X00; //設置A口為輸出
TRISC=0X00; //設置C口為輸出
CMCON=0X07; //設置A口為普通數字口
}
//------------------------------------
//亮燈函數
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口的所有顯示
PORTC=1; //點亮RC0
for(i=6;i>0;i--) //循環6次(RB0-RB5)
{
delay();
delay();
delay();
PORTC=PORTC<<1;
}
PORTC=0; //清除所有RB口的顯示
}
}
//--------------------------------------
//主函數
void main()
{
init(); //調用初始化函數
led(); //調用亮燈函數
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -