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

📄 gpio.c

📁 瑞泰实验箱例程-2812,
💻 C
字号:
/**********************************************************************
* File: Gpio.c
* Devices: TMS320F2812, TMS320F2811, TMS320F2810
* Author: David M. Alter, Texas Instruments Inc.
* History:
*   09/08/03 - original (based on DSP281x header files v1.00, D. Alter)
**********************************************************************/

#include "DSP281x_Device.h"

// EXAMPLE_BIOS or EXAMPLE_NONBIOS are defined in the CCS project build options
#ifdef EXAMPLE_BIOS
    #include "example_BIOS.h"
#endif

#ifdef EXAMPLE_NONBIOS
    #include "example_nonBIOS.h"
#endif


/**********************************************************************
* Function: InitGpio()
*
* Description: Initializes the shared GPIO pins on the F281x.
**********************************************************************/
void InitGpio(void)
{
	asm(" EALLOW");						// Enable EALLOW protected register access

/*** Group A pins ***/
	GpioMuxRegs.GPAQUAL.all=0x0000;					// Input qualifier disabled
	GpioMuxRegs.GPADIR.all = 0x0000;				// All group A GPIO are inputs

	GpioMuxRegs.GPAMUX.bit.C3TRIP_GPIOA15  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.C2TRIP_GPIOA14  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.C1TRIP_GPIOA13  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.TCLKINA_GPIOA12 = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.TDIRA_GPIOA11   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.CAP3QI1_GPIOA10 = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.CAP2Q2_GPIOA9   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.CAP1Q1_GPIOA8   = 1;		// 1: select periph function
	GpioMuxRegs.GPAMUX.bit.T2PWM_GPIOA7    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.T1PWM_GPIOA6    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.PWM6_GPIOA5     = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.PWM5_GPIOA4     = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.PWM4_GPIOA3     = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.PWM3_GPIOA2     = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.PWM2_GPIOA1     = 0;		// 0: select GPIO function
	GpioMuxRegs.GPAMUX.bit.PWM1_GPIOA0     = 1;		// 1: select periph function

/*** Group B pins ***/
	GpioMuxRegs.GPBQUAL.all = 0x0000;				// Input qualifier disabled
	GpioMuxRegs.GPBDIR.all = 0x0000;				// All group B GPIO are inputs

	GpioMuxRegs.GPBMUX.bit.C6TRIP_GPIOB15  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.C5TRIP_GPIOB14  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.C4TRIP_GPIOB13  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.TCLKINB_GPIOB12 = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.TDIRB_GPIOB11   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.CAP6QI2_GPIOB10 = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.CAP5Q2_GPIOB9   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.CAP4Q1_GPIOB8   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.T4PWM_GPIOB7    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.T3PWM_GPIOB6    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.PWM12_GPIOB5    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.PWM11_GPIOB4    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.PWM10_GPIOB3    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.PWM9_GPIOB2     = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.PWM8_GPIOB1     = 0;		// 0: select GPIO function
	GpioMuxRegs.GPBMUX.bit.PWM7_GPIOB0     = 0;		// 0: select GPIO function

/*** Group D pins ***/
	GpioMuxRegs.GPDQUAL.all=0x0000;					// Input qualifier disabled
	GpioMuxRegs.GPDDIR.all = 0x0000;				// All group D GPIO are inputs


	GpioMuxRegs.GPDMUX.bit.T4CTRIP_SOCB_GPIOD6 = 0;	// 0: select GPIO function
	GpioMuxRegs.GPDMUX.bit.T3CTRIP_PDPB_GPIOD5 = 0;	// 0: select GPIO function
	GpioMuxRegs.GPDMUX.bit.T2CTRIP_SOCA_GPIOD1 = 0;	// 0: select GPIO function
	GpioMuxRegs.GPDMUX.bit.T1CTRIP_PDPA_GPIOD0 = 0;	// 0: select GPIO function

/*** Group E pins ***/
	GpioMuxRegs.GPEQUAL.all=0x0000;					// Input qualifier disabled
	GpioMuxRegs.GPEDIR.all = 0x0000;				// All group E GPIO are inputs

	GpioMuxRegs.GPEMUX.bit.XNMI_XINT13_GPIOE2  = 0;	// 0: select GPIO function
	GpioMuxRegs.GPEMUX.bit.XINT2_ADCSOC_GPIOE1 = 0;	// 0: select GPIO function
	GpioMuxRegs.GPEMUX.bit.XINT1_XBIO_GPIOE0   = 0;	// 0: select GPIO function

/*** Group F pins ***/
	GpioMuxRegs.GPFDIR.all = 0x0000;				// All group F GPIO are inputs

	GpioMuxRegs.GPFMUX.bit.XF_GPIOF14      = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.MDRA_GPIOF13    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.MDXA_GPIOF12    = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.MFSRA_GPIOF11   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.MFSXA_GPIOF10   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.MCLKRA_GPIOF9   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.MCLKXA_GPIOF8   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.CANRXA_GPIOF7   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.CANTXA_GPIOF6   = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.SCIRXDA_GPIOF5  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.SCITXDA_GPIOF4  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.SPISTEA_GPIOF3  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.SPICLKA_GPIOF2  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.SPISOMIA_GPIOF1 = 0;		// 0: select GPIO function
	GpioMuxRegs.GPFMUX.bit.SPISIMOA_GPIOF0 = 0;		// 0: select GPIO function

	GpioMuxRegs.GPFDIR.bit.GPIOF14 = 1;				// 1: GPIOF14 is output (connected to LED on eZdsp)
	GpioDataRegs.GPFSET.bit.GPIOF14 = 1;			// 1: set GPIOF14 (turn LED on)

/*** Group G pins ***/
	GpioMuxRegs.GPGDIR.all = 0x0000;				// All group G GPIO are inputs

	GpioMuxRegs.GPGMUX.bit.SCIRXDB_GPIOG5  = 0;		// 0: select GPIO function
	GpioMuxRegs.GPGMUX.bit.SCITXDB_GPIOG4  = 0;		// 0: select GPIO function

/*** Finish up ***/
	asm(" EDIS");						// Disable EALLOW protected register access

} //end InitGpio()


/*** end of file *****************************************************/

⌨️ 快捷键说明

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