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)
//
----未完待续----
上一篇:MSP432学习-01-CCS编译器安装及驱动库环境搭建
下一篇:用IAR新建TexasInstruments MSP432E401Y工程
推荐阅读最新更新时间:2024-11-11 14:05
设计资源 培训 开发板 精华推荐
- 使用 ON Semiconductor 的 NCP1086 的参考设计
- STM32 Nucleo的电机控制连接器扩展板
- 仿gasket结构40%矮轴机械键盘
- LTC3406ES5-1.8 高效降压转换器的典型应用电路
- STM32F10xxx ADC应用电路使用STM32F10xxx ADC_IN14接口
- ip5328p
- 带三个按钮的柔性 PCB
- 根据 EN50121-3-2(单输出)使用具有 EMC 滤波的 RP40-4812SFR DC/DC 转换器的典型应用
- 使用 Analog Devices 的 REF-02ARC/883 的参考设计
- STLQ50C50R 50mA、3uA 电源电流低压降线性稳压器的典型(固定版本)应用