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

📄 main.c

📁 周立功PXA270教学实验箱的ARM汇编指令实验1
💻 C
字号:
/****************************************Copyright (c)**************************************************
**                               Guangzhou ZHIYUAN electronics Co.,LTD.
**                                     
**                                 http://www.zyinside.com
**
**--------------File Info-------------------------------------------------------------------------------
** File Name: main.c
** Last modified Date: 2006-09-22 
** Last Version: v1.0
** Description: MagicARM270实验箱的基础实验---GPIO输入实验。
**              使用GPIO输入模式对GP0口进行扫描,对蜂鸣器控制。
**------------------------------------------------------------------------------------------------------
** Created By: 黄绍斌
** Created date: 2006-09-22
** Version: v1.0
** Descriptions:
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Description:
**
********************************************************************************************************/
#include  "config.h"


// 定义蜂鸣器控制口       
#define  BEEP		(1<<11)				/* GP11 */

// 定义独立按键KEY1的输入口
#define  KEY_CON	(1<<0)     			/* GP0 */



/*********************************************************************************************************
** Function name: DelayNS
** Descriptions: 长软件延时。
**              延时时间与系统时钟有关。
** Input: dly	延时参数,值越大,延时越久
** Output: 无
** Created by: 黄绍斌
** Created Date: 2005-12-31 
**-------------------------------------------------------------------------------------------------------
** Modified by:
** Modified Date: 
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void  DelayNS(uint32  dly)
{  
	uint32  i;

   	for(; dly>0; dly--) 
       for(i=0; i<50000; i++);
}



/*********************************************************************************************************
** Function name: main
** Descriptions: 不断地读取GP0口的值,并输出控制蜂鸣器。
** Input: 无
** Output: 系统返回值0
** Created by: 黄绍斌
** Created Date: 2005-12-31 
**-------------------------------------------------------------------------------------------------------
** Modified by: 黄绍斌
** Modified Date: 2006-09-22
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
int  main(void)
{	
	// 初始化I/O
    GPDR0 = GPDR0 | BEEP;
	GPDR0 = GPDR0 & (~KEY_CON);
	GAFR0_L = GAFR0_L & ( ~(0x03<<22) );
	GAFR0_L = GAFR0_L & ( ~(0x03<<0) );   		

	while(1)
    {
        if(GPLR0 & KEY_CON)   	// 读取并判断GP0是否为高电平
        {
            GPSR0 = BEEP;       // GP0为高电平,则设置GP11=1
        }
        else
        {
            GPCR0 = BEEP;  		// GP0为低电平,则设置GP11=0
        }
        
        DelayNS(1);
    }
	
	
   	return(0);
}

/*********************************************************************************************************
**                            End Of File
********************************************************************************************************/

⌨️ 快捷键说明

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