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

📄 main.c

📁 ARM7 SPI RC531驱动程序,数据手册
💻 C
字号:
/*
**--------------文件信息------------------------------------------------------------------
**文   件   名: main.c
**创   建   人: 李功周
**最后修改日期: 2008年12月18日
**描        述: RC500驱动设计,KEIL C 编译
**
**--------------历史版本信息--------------------------------------------------------------
** 创建人: 李功周
** 版  本: V1.0
** 日 期: 2008年12月18日
** 描 述: 原始版
***/



#define   BEEPCON  0x800		// P0.11引脚控制B1,低电平蜂鸣
#include <LPC2103.H>
#include "../SPK/SPK.h"
#include "../Uart1/Uart1.h"
#include "../INT0/INT0.H"
#include "../RC500/RC500.H"
#include "../SPI0/SPI0.h"



/****************************************************************************
* 名    称:DelayNS()
* 功    能:长软件延时。
* 入口参数:dly		延时参数,值越大,延时越久
* 出口参数:无
****************************************************************************/
void  DelayNS(unsigned long  dly)
{  
    unsigned long  i;
	while(dly--)
	{
		i = 8000;
		while(i--);
	}
} 




/**********************************************************************
** 函数名称: SysInit()				
** 功能描述: 系统初始化				
** 输   入: 无								 	
** 输    出: 无		
** 函数说明: 对处外置初始化
***********************************************************************/
void SysInit(void)
{
	int test = 0;
	InitSpk();
	SPI0Init();
	if(Uart1_Init(1,115200,'N'))
	{
		test = 3;
		goto SysInit1;
	}
	
	if(Rc500Init())
	{
		test = 4;
		goto SysInit1;	
	}
SysInit1:
	if(test)
	{
		for( ; test > 0 ; test -- )
		{
			SpkOnTime(50);
			DelayNS(1000);	
		}
		while(1);
	}
	
	SpkOnTime(500);
		
}




/**********************************************************************
** 函数名称: main()				
** 功能描述: 系统主函数			
** 输   入: 无								 	
** 输    出: 无		
** 函数说明: 程序C语言接口
***********************************************************************/
int main( void )
{
	unsigned char aa[64];
	unsigned char a;
	unsigned short b = 0x1234;
	DelayNS(100);
	SysInit();
	if(!(0x11&0x24))
	{
		Uart1_SendStr((unsigned char *)&b,2);
	}
	while(1)
	{
		if(Fine_Card(aa,&a)==0)
		{
			for( a = 0 ; a < 6 ; a++ )
			{
				aa[a] = 0xff;
			}
			if((a = DownloadPassWord2(aa,13))==0)
			{
				if(WriteCard(aa,13)==0)
				{
					if((a = ReadCard(aa,13))==0)
					{
						Uart1_SendStr(aa,16);
					}
					else
					{
						Uart1_SendByte(a);
					}
					M500PiccHalt();
				}
				SpkOnTime(500);	
			}
			else
			{
				Uart1_SendByte(a);
				SpkOnTime(500);		
			}	
		}
		DelayNS(100);	
		
	}
}

⌨️ 快捷键说明

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