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

📄 intr2to10last.c

📁 pic单片机程序microchi controler pic12c506的应用程序
💻 C
字号:
#include	<pic.h>

/*
 *	Interrupt test for PIC 
 *
 *	Copyright (C)1997 HI-TECH Software.
 *	Freely distributable.
 */

//#define	PRELOAD	125
__CONFIG(MCLRDIS & WDTEN & INTRC & PROTECT);
//static unsigned long	seconds;	// second count
static unsigned char flash; 

void delayy(unsigned char ss)
{
	unsigned short i;
	unsigned char j;
	for(j=0;j<ss;j++)
	{
		for(i=0;i<10000;i++)
		{
			asm("clrwdt");
			asm("nop");							
			asm("nop");	
		}
		flash=~flash;
		asm("clrwdt");
		if(flash)GP1=0;
		else GP1=1;
	}
	return;	
}
void usdelay(unsigned char us)
{
	unsigned char i;
	for(i=0;i<us;i++)
	{
		asm("nop");
		asm("clrwdt");
		asm("nop");		
	}
	flash=~flash;
	if(flash){GP1=1;}
	else {GP1=0;}
	asm("clrwdt");
	return;
}

void
init1(void)
{
	GP0=0;
	TRIS=0x3c;
	GPIO=0xfc;
	asm("clrwdt");
	TRIS=0x3c;//00xxx100
	TMR0=0;
	OPTION=0x2f;//0f
	GPIO=0xfc;
	flash=0;
	asm("clrwdt");
	return;
}
/*void interrupt
timer0_isr(void) @ 0x10
{
	seconds++;
	TMR0 += -PRELOAD;	// re-load timer

	// no need to clear T0IF - the hardware did it
}*/
void
main(void)
{
//	unsigned char port=0;
	init1();	
	for(;;)
	{	
	  if(!(GP2))
	  {	     
	     if(!(GP2))
	     {	  
			asm("clrwdt");
			if(GP2){asm("nop");GP0=0;}//no input
			else
			{
				GP0=1;	
				delayy(72);
			}
	     }
	     asm("clrwdt");			
       }
       else GP0=0;
       asm("clrwdt");
	   usdelay(100);
       asm("nop");		
	}	
}

⌨️ 快捷键说明

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