DSP中GPIO的配置定义,看这些就够了

 控制寄存器


struct GPIO_CTRL_REGS {
    union   GPACTRL_REG                      GPACTRL;                      // GPIO A Qualification Sampling Period (GPIO0 to GPIO31)
	
    union   GPAQSEL1_REG                     GPAQSEL1;                     // 尖脉冲滤除选择寄存器(与时钟同步模式)
    union   GPAQSEL2_REG                     GPAQSEL2;                     // 00:与系统时钟SYSCLKOUT同步	01或者10:同步后,输入信号在输入值改变前需要满足一定数量的时钟周期的宽度要求。	11:不同步,此模式用于不同步外设
	
    union   GPAMUX1_REG                      GPAMUX1;                      // IO口复用配置
    union   GPAMUX2_REG                      GPAMUX2;                      // 00:通用的输入输出口	01:外设选择1	10:外设选择2	11:外设选择3
	
    union   GPADIR_REG                       GPADIR;                       // 输入或输出方向	1:输出
	
    union   GPAPUD_REG                       GPAPUD;                       // 内部上拉电阻(使能)
}

数据寄存器 


struct GPIO_DATA_REGS {
    union   GPADAT_REG                       GPADAT;                       // 数据寄存器,无保护直接写可能存在问题
    union   GPASET_REG                       GPASET;                       // 设定值,置1
    union   GPACLEAR_REG                     GPACLEAR;                     // 清除值,置0
    union   GPATOGGLE_REG                    GPATOGGLE;                    // toggle翻转
	
    union   GPBDAT_REG                       GPBDAT;                       // GPIO B Data Register (GPIO32 to GPIO64)
    union   GPBSET_REG                       GPBSET;                       // GPIO B Output Set (GPIO32 to GPIO64)
    union   GPBCLEAR_REG                     GPBCLEAR;                     // GPIO B Output Clear (GPIO32 to GPIO64)
    union   GPBTOGGLE_REG                    GPBTOGGLE;                    // GPIO B Output Toggle (GPIO32 to GPIO64)
    Uint16                                   rsvd1[40];                    // Reserved
    union   GPHDAT_REG                       GPHDAT;                       // GPIO H Data Register (GPIO0 to GPIO255)
}

 官方初始化定义

void Gpio_setup2(void)
{
   // Example 1:
   // Communications Pinout.
   // This basic communications pinout includes:
   // PWM1-3, CAP1, CAP2, SPI-A, SPI-B, CAN-A, SCI-A and I2C
   // and a number of I/O pins
   
    EALLOW;
    
   // Enable an GPIO output on GPIO6
   GpioCtrlRegs.GPAPUD.bit.GPIO6 = 0;   // Enable pullup on GPIO6
   GpioDataRegs.GPASET.bit.GPIO6 = 1;   // Load output latch
   GpioCtrlRegs.GPAMUX1.bit.GPIO6 = 0;  // GPIO6 = GPIO6
   GpioCtrlRegs.GPADIR.bit.GPIO6 = 1;   // GPIO6 = output

   // Enable eCAP1 on GPIO7
   GpioCtrlRegs.GPAPUD.bit.GPIO7 = 0;   // Enable pullup on GPIO7
   GpioCtrlRegs.GPAQSEL1.bit.GPIO7 = 0; // Synch to SYSCLKOUT
   GpioCtrlRegs.GPAMUX1.bit.GPIO7 = 3;  // GPIO7 = ECAP2

   // Enable GPIO outputs on GPIO8 - GPIO11
   GpioCtrlRegs.GPAPUD.bit.GPIO8 = 0;   // Enable pullup on GPIO8
   GpioDataRegs.GPASET.bit.GPIO8 = 1;   // Load output latch
   GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;  // GPIO8 = GPIO8
   GpioCtrlRegs.GPADIR.bit.GPIO8 = 1;   // GPIO8 = output

   GpioCtrlRegs.GPAPUD.bit.GPIO9 = 0;   // Enable pullup on GPIO9
   GpioDataRegs.GPASET.bit.GPIO9 = 1;   // Load output latch
   GpioCtrlRegs.GPAMUX1.bit.GPIO9 = 0;  // GPIO9 = GPIO9
   GpioCtrlRegs.GPADIR.bit.GPIO9 = 1;   // GPIO9 = output

   GpioCtrlRegs.GPAPUD.bit.GPIO10 = 0;  // Enable pullup on GPIO10
   GpioDataRegs.GPASET.bit.GPIO10 = 1;  // Load output latch
   GpioCtrlRegs.GPAMUX1.bit.GPIO10 = 0; // GPIO10 = GPIO10
   GpioCtrlRegs.GPADIR.bit.GPIO10 = 1;  // GPIO10 = output

   GpioCtrlRegs.GPAPUD.bit.GPIO11 = 0;  // Enable pullup on GPIO11
   GpioDataRegs.GPASET.bit.GPIO11 = 1;  // Load output latch
   GpioCtrlRegs.GPAMUX1.bit.GPIO11 = 0; // GPIO11 = GPIO11
   GpioCtrlRegs.GPADIR.bit.GPIO11 = 1;  // GPIO11 = output

   // Make GPIO34 an input
   GpioCtrlRegs.GPBPUD.bit.GPIO32 = 0;   // Enable pullup on GPIO34
   GpioCtrlRegs.GPBMUX1.bit.GPIO34 = 0;  // GPIO34 = GPIO34
   GpioCtrlRegs.GPBDIR.bit.GPIO34 = 0;   // GPIO34 = input

   EDIS;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值