STM32L GPIO
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2011-09-17 5:55 AM
Posted on September 17, 2011 at 14:55
Hi.
I am a student and i must do a project with the STM32L-Discovery using SPI.I found this code:/** * @brief Changes the mapping of the specified pin. * @param GPIOx: where x can be (A, B, C, D, E or H) to select the GPIO peripheral. * @param GPIO_PinSource: specifies the pin for the Alternate function. * This parameter can be GPIO_PinSourcex where x can be (0..15). * @param GPIO_AFSelection: selects the pin to used as Alternat function. * This parameter can be one of the following values: * @arg GPIO_AF_RTC_50Hz: RTC 50/60 Hz synchronization * @arg GPIO_AF_MCO: Microcontroller clock output * @arg GPIO_AF_RTC_AF1: Time stamp, Tamper, Alarm A out, Alarm B out, * 512 Hz clock output (with an LSE oscillator of 32.768 kHz) * @arg GPIO_AF_WKUP: wakeup * @arg GPIO_AF_SWJ: SWJ (SW and JTAG) * @arg GPIO_AF_TRACE * @arg GPIO_AF_TIM2 * @arg GPIO_AF_TIM3 * @arg GPIO_AF_TIM4 * @arg GPIO_AF_TIM9 * @arg GPIO_AF_TIM10 * @arg GPIO_AF_TIM11 * @arg GPIO_AF_I2C1 * @arg GPIO_AF_I2C2 * @arg GPIO_AF_SPI1 * @arg GPIO_AF_SPI2 * @arg GPIO_AF_USART1 * @arg GPIO_AF_USART2 * @arg GPIO_AF_USART3 * @arg GPIO_AF_USB * @arg GPIO_AF_LCD * @arg GPIO_AF_RI * @arg GPIO_AF_EVENTOUT: Cortex-M3 EVENTOUT signal * @note: The pin should already been configured in Alternate Function mode(AF) * using GPIO_InitStruct->GPIO_Mode = GPIO_Mode_AF * @note: Please refer to the Alternate function mapping table in the device * datasheet for the detailed mapping of the system and peripherals� * alternate function I/O pins. * @note: EVENTOUT is not mapped on PH0, PH1 and PH2. * @retval None */void GPIO_PinAFConfig(GPIO_TypeDef* GPIOx, uint16_t GPIO_PinSource, uint8_t GPIO_AF){ uint32_t temp = 0x00; uint32_t temp_2 = 0x00; /* Check the parameters */ assert_param(IS_GPIO_ALL_PERIPH(GPIOx)); assert_param(IS_GPIO_PIN_SOURCE(GPIO_PinSource)); assert_param(IS_GPIO_AF(GPIO_AF)); temp = ((uint32_t)(GPIO_AF) << ((uint32_t)((uint32_t)GPIO_PinSource & (uint32_t)0x07) * 4)) ; GPIOx->AFR[GPIO_PinSource >> 0x03] &= ~((uint32_t)0xF << ((uint32_t)((uint32_t)GPIO_PinSource & (uint32_t)0x07) * 4)) ; temp_2 = GPIOx->AFR[GPIO_PinSource >> 0x03] | temp; GPIOx->AFR[GPIO_PinSource >> 0x03] = temp_2;}but i don't know which GPIO peripheral are A, B, C, D, E and H. I have looked it up in the serveral doc, but i didn't find it.Can someone tell me which GPIO peripheral represent A, B, C, D, E and H?Thanks #stm32l-discovery
This discussion is locked. Please start a new topic to ask your question.
2 REPLIES 2
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2011-09-17 7:25 AM
Posted on September 17, 2011 at 16:25
Try Section 4 of the datasheet. Table 4
for example PE14 is pin 14 in bank E, and can either be a GPIO or SPI1_MISO http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00277537.pdfhttp://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00277537.pdf
http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/REFERENCE_MANUAL/CD00240193.pdf
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Up vote any posts that you find helpful, it shows what's working..
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2011-09-20 6:24 AM
Posted on September 20, 2011 at 15:24
Understood
Thanks :)