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

📄 seed_io&led.c

📁 SEED的VPM642测试程序-板级支持库
💻 C
字号:
/*
 *  Copyright 2005 by SEED.
 *  All rights reserved. Property of SEED.
 *  Restricted rights to use, duplicate or disclose this code are
 *  granted through contract.
 *  
 */
/* August 2005 */
/********************************************************************/
/* seed_watchdog.c file                                             */
/********************************************************************/

#include <csl.h>
#include <csl_chip.h>
#include "seed_io&led.h"

/*turn on the led */
void VPM642_Led_onboard(Uint32 Number,Uint32 on)
{
	Uint32 temp = 0;
	/*将GPIO0不做为GPINT使用*/
	GPIO_RSET(GPGC,0x0);
	if(Number == 0)
	{
		/*使能相应的GPIO*/
	    temp = GPIO_RGET(GPEN);
	    temp = (temp & 0xFFFF) | 0x8;
	    GPIO_RSET(GPEN,temp);
	    /*将GPIO0做为输出*/
	    temp = GPIO_RGET(GPDIR);
	    temp = (temp & 0xFFFF) | 0x8;
		GPIO_RSET(GPDIR,temp);
		/*输出的值*/
		temp = GPIO_RGET(GPVAL);
		if(on == 0)
		{
	    	temp = (temp & 0xFFF7) | 0;
	    }
	    else
	    {
			temp = (temp & 0xFFF7) | 8;	
		}
		GPIO_RSET(GPVAL,temp);
	}
	else
	{
		/*使能相应的GPIO*/
	    temp = GPIO_RGET(GPEN);
	    temp = (temp & 0xFFFF) | 0x100;
	    GPIO_RSET(GPEN,temp);
	    /*将GPIO0做为输出*/
	    temp = GPIO_RGET(GPDIR);
	    temp = (temp & 0xFFFF) | 0x100;
		GPIO_RSET(GPDIR,temp);
		/*输出的值*/
		temp = GPIO_RGET(GPVAL);
		if(on == 0)
		{
	    	temp = (temp & 0xFeFF) | 0;
	    }
	    else
	    {
			temp = (temp & 0xFeFF) | 0x100;	
		}
		GPIO_RSET(GPVAL,temp);
	}
}
/*IO port write*/
void VPM642_io_write(Uint32 data)
{
	SEEDDM642_rset(SEEDDM642_IOOUT, data);
}
/*IO port read*/
Uint32 VPM642_io_read()
{
	Uint32 temp;
	temp = SEEDDM642_rget(SEEDDM642_IOOUT);
	temp = temp & 0xFF;
	return temp;
}

⌨️ 快捷键说明

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