MSP432--GPIO IAR环境

GPIO
1.特点众多的独立可编程I/O口
           任意端口的输入输出组合
           中断
           独立的输入输出寄存器
           独立可配置的上拉下拉寄存器
2.分布总共有P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 PJ
           P1-P10共78个I/O,PJ有6个I/O
           P1.0,P1.4,P1.5,P3.0,P3.4,P3.5,P6.6,P6.7自带硬件滤波,消抖
           P1.2-->BSLRXD  P1.3-->BSLTXD
           SPI引脚:P1.4-->BSLSTE P1.5-->BSLCLK P1.6-->BSLSIMO P1.7-->BSLSOMI
           IIC引脚:P3.6-->BSLSDA P3.7-->BSLSCL
          总共100引脚 ZXH封装
          PS:在库函数里出现PA,PB,PC,PD,分别代表P1/P2,P3/P4,P5/P6,P7/P8
3.库函数说明:固件库内总共有20个相关函数
(1)void GPIO_clearInterruptFlag( uint_fast8_t selectedPort,
                  uint_fast16_t selectedPins)//清除选中引脚的中断标志,ONLY P1和P2口上
    selectedPort:GPIO_PORT_P1
                       GPIO_PORT_P2
                       GPIO_PORT_PA//可输入的内容
   selectedPins:GPIO_PIN0
                      GPIO_PIN1
                      GPIO_PIN2
                      GPIO_PIN3
                      GPIO_PIN4
                      GPIO_PIN5
                      GPIO_PIN6
                      GPIO_PIN7
                      GPIO_PIN8
                      GPIO_PIN9
                      GPIO_PIN10
                      GPIO_PIN11
                      GPIO_PIN12
                      GPIO_PIN13
                      GPIO_PIN14
         GPIO_PIN15
   Returns None
例:GPIO_clearInterruptFlag(GPIO_PORT_P1,GPIO_PIN0);//清除P1.0的中断标志
(2)void GPIO_disableInterrupt(uint_fast8_t selectedPort
                  ,uint_fast16_t selectedPins)//禁用所选取引脚的中断,ONLY P1和P2
   selectedPort:
   selectedPins:
   Returns: //同函数(1)
(3)void GPIO_enableInterrupt(uint_fast8_t selectedPort
           ,uint_fast16_t selectedPins)//启用所选引脚的中断,ONLY P1和P2
   selectedPort:
   selectedPins:
   Returns://同函数(1)
(4)uint_fast16_t GPIO_getEnabledInterruptStatus(uint_fast8_t selectedPort)//
                                                                          //L838 gpio.h
   selectedPort:GPIO_PORT_P1
                      GPIO_PORT_P2
                      GPIO_PORT_P3
                      GPIO_PORT_P4
                      GPIO_PORT_P5
                      GPIO_PORT_P6
         GPIO_PORT_P7
         GPIO_PORT_P8
         GPIO_PORT_P9
         GPIO_PORT_P10
         GPIO_PORT_PJ
  Return:GPIO_PIN0
      GPIO_PIN1
      GPIO_PIN2
      GPIO_PIN3
      GPIO_PIN4
        GPIO_PIN5
      GPIO_PIN6
      GPIO_PIN7
      GPIO_PIN8
          GPIO_PIN9
      GPIO_PIN10
      GPIO_PIN11
        GPIO_PIN12
      GPIO_PIN13
      GPIO_PIN14
      GPIO_PIN15
       PIN_ALL8
         PIN_ALL16 //默认返回0
(5)uint8_t GPIO_getInputPinValue(uint_fast8_t selectedPort
     ,uint_fast16_t selectedPins)//获取被选择引脚的输入状态
  selectedPort://同(4)
  selectedPins:
  Returns:GPIO_INPUT_PIN_HIGH //1
         GPIO_INPUT_PIN_LOW //O
(6)uint_fast16_t GPIO_getInterruptStatus(uint_fast8_t selectedPort
            ,uint_fast16_t selectedPins)//获取P1和P2端口的
                                                    //中断状态,与(4)不同
   selectedPort:
   selectedPins://同(1)
   Return://同(4),无PIN_ALL8 和PIN_ALL16
(7)void GPIO_interruptEdgeSelect(uint_fast_t selectedPort
     ,uint_fast16_t selectedPins,uint_fast8_t edgeSelect)
                                 //选择引脚,确定
                                                                          //是上升沿触发中
                                                                          //断还是下降沿
   Return:GPIO_HIGH_TO_LOW_TRANSITION
          GPIO_LOW_TO_HIGH_TRANSITION
(8)void GPIO_registerInterrupt(uint_fast8_t selectedPort,void(*)(void) intHandler)//

(9)void GPIO_setAsInputPin(uint_fast8_t selectedPort
          ,uint_fast16_t selectedPins)        //配置选择的引脚
                                                                        //为输入,相当于
                                                                        //P1DIR &=~
(10)void GPIO_setAsInputPinWithPullDownResistor(uint_fast8_t selectedPort
       uint_fast16_t selectedPins)
                               //配置选择的引脚
                                //为下拉
(11)void GPIO_setAsInputPinWithPullUpResistor(uint_fast8_t selectedPort
       uint_fast16_t selectedPins)
                               //配置选择的引脚
                               //为上拉
(12)void GPIO_setAsOutputPin(uint_fast8_t selectedPort
      ,uint_fast16_t selectedPins)
                               //配置选择的引脚
                               //为输出
(13)void GPIO_setAsPeripheralModuleFunctionInputPin(uint_fast8_t selectedPort,
       uint_fast16_t selectedPins,uint_fast8_t mode)
                                //选择引脚的功能位
                               //第一功能,第二功
                              //能,第三功能,输入
(14) void GPIO_setAsPeripheralModuleFunctionOutputPin ( uint_fast8_t selectedPort
                                         , uint_fast16_t selectedPins, uint_fast8_t mode )
                             //选择引脚的功能位
                             //第一功能,第二功
                             //能,第三功能,输出
(15)void GPIO_setDriveStrengthHigh(uint_fast8_t selectedPort
      ,uint_fast8_t selectedPins)
         //

----未完待续----

 

posted @ 2016-04-07 22:52  JZTD  阅读(1346)  评论(0编辑  收藏  举报