PIC16f630简单练习程序
扫描二维码
随时随地手机看文章
/*************PIC16F630单片机程序******************************/
/*************************************************************/
/*****File Function : LED测试 *****/
/*****Program Author : ZhengWen(ClimberWin) *****/
/*****MCU : PIC16F630 内部4M晶振 *****/
/*****Compile Date : 2010/08/11 *****/
/*****Edition Info : V1.0 *****/
/*************************************************************/
/*修改日期: */
/************************************/
#include
#include
#define uchar unsigned char
#define uint unsigned int
void speakertest(void);//蜂鸣器测试子程序
void keytest(void); //按键测试程序
void delayms(unsigned int count);
void LED_display(void);
void PortInit(void);
#define SPK RA0
#define KEY RA2
void PortInit(void)
{
PORTA = 0B00000000;
PORTC = 0B00000001;
TRISA = 0B00100010;
TRISC = 0B00000000;
}
void speakertest(void)//蜂鸣器测试程序
{
uchar i;
for(i=0;i<50;i++)
{
SPK=0;
delayms(1);
SPK=1;
delayms(1);
}
}
void keytest(void) //按键测试程序
{
/*********************************************/
if(KEY==0)
{
speakertest();
PORTC=0X55;
//////////////////
while(KEY==0) //按键去抖
{ delayms(100);}
}
PORTC=0xff;
}
void delayms(unsigned int count)
{
uint i,j;
for(i=0;i
}
void LED_display(void)
{
uchar i,j;
j=0x01;
for(i=0;i<6;i++)
{
PORTC=~j;
j=j<<1;
delayms(1000);
}
}
////////////主程序/////////////////////////
int main (void)
{
PortInit();
SPK=1;
while(1)
{
//keytest();
LED_display();//调用LED显示子程序
}
}