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

📄 main.c

📁 ARM7 lpc2132+vs1003+sdcard 制作的 MP3 此程序在ADS1.2环境下编译
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               Guangzou ZLG-MCU Development Co.,LTD.
**                                      graduate school
**                                 http://www.zlgmcu.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name:			main.c
** Last modified Date:  2004-09-16
** Last Version:		1.0
** Descriptions:		The main() function example template
**
**------------------------------------------------------------------------------------------------------
** Created by:			Chenmingji
** Created date:		2004-09-16
** Version:				1.0
** Descriptions:		The original version
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Descriptions:
**
********************************************************************************************************/
#include "config.h"


#define  AM12864_PO				(0x01 << 21)		
#define  AM12864_PO_GPIO()		PINSEL2	&= ~(0x03 <<4)			
#define  AM12864_PO_OUT()		IO1DIR 	|= AM12864_PO			
#define  AM12864_PO_SET()  		IO1SET	|= AM12864_PO			
#define  AM12864_PO_CLR()  		IO1CLR  |= AM12864_PO			
//P1.20
#define  AM12864_CS				(0x01 << 20)		
#define  AM12864_CS_GPIO()		PINSEL2	&= ~(0x03 <<4)			
#define  AM12864_CS_OUT()		IO1DIR 	|= AM12864_CS			
#define  AM12864_CS_SET()  		IO1SET  |= AM12864_CS			
#define  AM12864_CS_CLR()  		IO1CLR  |= AM12864_CS			
//P0.23
#define  AM12864_RST			(0x01 << 23)		
#define  AM12864_RST_GPIO()		PINSEL1	&= ~(0x03 <<14)		
#define  AM12864_RST_OUT()		IO0DIR  |= AM12864_RST		  
#define  AM12864_RST_SET()  	IO0SET	|= AM12864_RST		
#define  AM12864_RST_CLR()  	IO0CLR  |= AM12864_RST			
//P0.21
#define  AM12864_RS				(0x01 << 21)		
#define  AM12864_RS_GPIO()		PINSEL1	&= ~(0x03 <<10)		
#define  AM12864_RS_OUT()		IO0DIR  |= AM12864_RS		
#define  AM12864_RS_SET()  		IO0SET  |= AM12864_RS		
#define  AM12864_RS_CLR()  		IO0CLR  |= AM12864_RS		
//P1.19
#define  AM12864_DI				(0x01 << 19)		
#define  AM12864_DI_GPIO()		PINSEL2	&= ~(0x03 <<4)		
#define  AM12864_DI_OUT()		IO1DIR  |= AM12864_DI		
#define  AM12864_DI_SET()  		IO1SET  |= AM12864_DI			
#define  AM12864_DI_CLR()  		IO1CLR  |= AM12864_DI		
//P0.22
#define  AM12864_SCK			(0x01 << 22)		
#define  AM12864_SCK_GPIO()		PINSEL1	&= ~(0x03 <<10)		
#define  AM12864_SCK_OUT()		IO0DIR  |= AM12864_SCK			
#define  AM12864_SCK_SET()  	IO0SET  |= AM12864_SCK			
#define  AM12864_SCK_CLR()  	IO0CLR   = AM12864_SCK		
//P0.12
#define  AM12864_BL				(0x01 << 12)		
#define  AM12864_BL_GPIO()		PINSEL0	&= ~(0x03 <<24)			
#define  AM12864_BL_OUT()		IO0DIR  |= AM12864_BL			
#define  AM12864_BL_SET()  		IO0SET  |= AM12864_BL			
#define  AM12864_BL_CLR()  		IO0CLR  |= AM12864_BL	

#define  SPI1_CS      			(0x01 << 20)              	 	
#define  SPI1_CS_GPIO()			PINSEL1 &= ~(0x03 << 8)	 		
#define  SPI1_CS_OUT()			IO0DIR |= SPI1_CS			 
#define	 SPI1_CS_SET()			IO0SET |= SPI1_CS			
#define	 SPI1_CS_CLR()			IO0CLR |= SPI1_CS				

//sck	 p0.17
#define  SPI1_SCK				(0x01 << 17)						
#define  SPI1_SCK_GPIO()		PINSEL1 &= ~(0x03 << 2)		
#define  SPI1_SCK_OUT()			IO0DIR |= SPI1_SCK				
#define	 SPI1_SCK_SET()			IO0SET |= SPI1_SCK
#define	 SPI1_SCK_CLR()			IO0CLR |= SPI1_SCK			

//miso	 p0.18	
#define  SPI1_MISO				(0x01 << 18)						
#define  SPI1_MISO_GPIO()		PINSEL1 &= ~(0x03 << 4)			
#define  SPI1_MISO_IN()			IO0DIR &=~(SPI1_MISO)
#define	 SPI1_MISO_SET()		IO0SET |= SPI1_MISO	

//mosi	 p0.19
#define  SPI1_MOSI				(0x01 << 19)
#define  SPI1_MOSI_GPIO()		PINSEL1 &= ~(0x03 << 6)			
#define  SPI1_MOSI_OUT()		IO0DIR |= SPI1_MOSI
#define	 SPI1_MOSI_SET()		IO0SET |= SPI1_MOSI	
#define	 SPI1_MOSI_CLR()		IO0CLR |= SPI1_MOSI			
												

#define	 LED		(1<<18)		//P1.18控制LED1
/*********************************************************************************************************
**函数名称:DelayNS()
**函数功能:延时软件
**入口参数:无
**出口参数:无
********************************************************************************************************/
void  DelayNS(void)
{
	uint32	i,dly;
	for(dly = 1000;dly > 0;dly--)
		for(i = 0;i < 10000;i++);	
}
	
/*********************************************************************************************************
**函数名称:main()
**函数功能:测试LPC2132的掉电功耗。CPU先使LED1闪烁10次,然后进入掉电模式。
**入口参数:无
**出口参数:无
********************************************************************************************************/
int main (void)
{	
	
	AM12864_PO_GPIO();		
	AM12864_PO_OUT();				
				
	AM12864_CS_GPIO();			
	AM12864_CS_OUT();					
	
	AM12864_RST_GPIO();	
	AM12864_RST_OUT();		  
			
	AM12864_RS_GPIO();		
	AM12864_RS_OUT();		
	
	AM12864_DI_GPIO();		
	AM12864_DI_OUT();	
	
	AM12864_SCK_GPIO();	
	AM12864_SCK_OUT();		

	AM12864_BL_GPIO();		
	AM12864_BL_OUT();	
	
            	 	
SPI1_CS_GPIO();	
SPI1_CS_OUT();		 
			
				


					
SPI1_SCK_GPIO()	;
SPI1_SCK_OUT()	;		

	

						
SPI1_MISO_GPIO();			
SPI1_MISO_IN()	;	
	
	

   SPI1_MOSI_GPIO();		
   SPI1_MOSI_OUT();

	SPI1_CS_GPIO();		
	SPI1_CS_OUT();
					
	PINSEL1 &= ~((0x03 << 2) + (0x03 << 4) + (0x03 << 6)); 
	PINSEL1 |=  (0x01 << 2) + (0x01 << 4) + (0x01 << 6);
	
 	S1PCCR =128; 							/* 设置SPI1频率小于等于400kHZ  set frequency of SPI1 below 400kHZ */
   
	S1PCR  = (0 << 3) |							// CPHA = 0, 数据在SCK 的第一个时钟沿采样
 	(1 << 4) |									// CPOL = 1, SCK 为低有效
 	(1 << 5) |									// MSTR = 1, SPI 处于主模式
 	(0 << 6) |									// LSBF = 0, SPI 数据传输MSB (位7)在先
 	(0 << 7);									// SPIE = 0, SPI 中断被禁止
	
	//IO0DIR  |=(1<<23);	

	while(1)	  
	{
		S1PDR = 0xff;
	
		while(0 == (S1PSR & 0x80));				
										
		return(S1PDR);
	}

	AD0CR = 0<<21;		//关闭AD
	PCONP = 0x00;		//关闭定时器、RTC、UART等功能部件
	PCON = 0x06;		//系统进入掉电模式
//	PCON = 0x01;		//系统进入空闲模式

    return 0;
}
/*********************************************************************************************************
**                            End Of File
********************************************************************************************************/

⌨️ 快捷键说明

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