当前位置:   article > 正文

2812的IO口控制--LED点亮

gpiomuxregs.gpamux.all = 0x077f;

复用控制寄存器 --- GPxMUX (0---数字IO,1---专用外设功能)

方向控制寄存器 --- GPxDIR (0---输入,1---输出)

量化控制寄存器 --- GPxQUAL (0---无量化,1---量化范围0x00--0xff)

I/O数据寄存器 --- GPxDAT (0---输出--引脚置低,1---输出--引脚置高)

I/O置位寄存器 --- GPxSET (0---无变化,1---引脚置为高)

I/O清零寄存器 --- GPxCLEAR (0---无变化,1---引脚置为低)

单独触发寄存器 --- GPxTOGGLE (0---无变化,1---引脚置电平跳变一次)

//IO口初始化

void InitGpio(void)
{
EALLOW; // Enable EALLOW protected register access


//--- Group A pins
GpioMuxRegs.GPADIR.all=0x0000;//若设为数字I/O,可配置为输入(0)/输出(1)
GpioMuxRegs.GPAQUAL.all=0x0000;// 0x00--无量化,0xff--510个SYSCLKOUT周期量化过程


//---选择引脚作为专用外设或通用I/O
GpioMuxRegs.GPAMUX.bit.C3TRIP_GPIOA15 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.C2TRIP_GPIOA14 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.C1TRIP_GPIOA13 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.TCLKINA_GPIOA12 = 0;// 0: select GPIO
GpioMuxRegs.GPAMUX.bit.TDIRA_GPIOA11 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.CAP3QI1_GPIOA10 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.CAP2Q2_GPIOA9 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.CAP1Q1_GPIOA8 = 1; // 1: select periph
GpioMuxRegs.GPAMUX.bit.T2PWM_GPIOA7 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.T1PWM_GPIOA6 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.PWM6_GPIOA5 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.PWM5_GPIOA4 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.PWM4_GPIOA3 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.PWM3_GPIOA2 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.PWM2_GPIOA1 = 0; // 0: select GPIO
GpioMuxRegs.GPAMUX.bit.PWM1_GPIOA0 = 1; // 1: select periph

EDIS;// Disable EALLOW protected register access

}

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号