Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2 | Rev 9 | ||
---|---|---|---|
Line 4... | Line 4... | ||
4 | * @author MCD Application Team |
4 | * @author MCD Application Team |
5 | * @brief Header file of GPIO LL module. |
5 | * @brief Header file of GPIO LL module. |
6 | ****************************************************************************** |
6 | ****************************************************************************** |
7 | * @attention |
7 | * @attention |
8 | * |
8 | * |
9 | * <h2><center>© COPYRIGHT(c) 2016 STMicroelectronics</center></h2> |
9 | * <h2><center>© Copyright (c) 2016 STMicroelectronics. |
- | 10 | * All rights reserved.</center></h2> |
|
10 | * |
11 | * |
11 | * Redistribution and use in source and binary forms, with or without modification, |
12 | * This software component is licensed by ST under BSD 3-Clause license, |
12 | * are permitted provided that the following conditions are met: |
13 | * the "License"; You may not use this file except in compliance with the |
13 | * 1. Redistributions of source code must retain the above copyright notice, |
- | |
14 | * this list of conditions and the following disclaimer. |
- | |
15 | * 2. Redistributions in binary form must reproduce the above copyright notice, |
- | |
16 | * this list of conditions and the following disclaimer in the documentation |
- | |
17 | * and/or other materials provided with the distribution. |
14 | * License. You may obtain a copy of the License at: |
18 | * 3. Neither the name of STMicroelectronics nor the names of its contributors |
- | |
19 | * may be used to endorse or promote products derived from this software |
15 | * opensource.org/licenses/BSD-3-Clause |
20 | * without specific prior written permission. |
- | |
21 | * |
- | |
22 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
- | |
23 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
- | |
24 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
- | |
25 | * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
- | |
26 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
- | |
27 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
- | |
28 | * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
- | |
29 | * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
- | |
30 | * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
- | |
31 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
- | |
32 | * |
16 | * |
33 | ****************************************************************************** |
17 | ****************************************************************************** |
34 | */ |
18 | */ |
35 | 19 | ||
36 | /* Define to prevent recursive inclusion -------------------------------------*/ |
20 | /* Define to prevent recursive inclusion -------------------------------------*/ |
37 | #ifndef __STM32F1xx_LL_GPIO_H |
21 | #ifndef STM32F1xx_LL_GPIO_H |
38 | #define __STM32F1xx_LL_GPIO_H |
22 | #define STM32F1xx_LL_GPIO_H |
39 | 23 | ||
40 | #ifdef __cplusplus |
24 | #ifdef __cplusplus |
41 | extern "C" { |
25 | extern "C" { |
42 | #endif |
26 | #endif |
43 | 27 | ||
Line 355... | Line 339... | ||
355 | * @arg @ref LL_GPIO_MODE_ALTERNATE |
339 | * @arg @ref LL_GPIO_MODE_ALTERNATE |
356 | * @retval None |
340 | * @retval None |
357 | */ |
341 | */ |
358 | __STATIC_INLINE void LL_GPIO_SetPinMode(GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Mode) |
342 | __STATIC_INLINE void LL_GPIO_SetPinMode(GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Mode) |
359 | { |
343 | { |
360 | register uint32_t *pReg = (uint32_t *)((uint32_t)(&GPIOx->CRL) + (Pin >> 24)); |
344 | register uint32_t *pReg = (uint32_t *)((uint32_t)((uint32_t)(&GPIOx->CRL) + (Pin >> 24))); |
361 | MODIFY_REG(*pReg, ((GPIO_CRL_CNF0 | GPIO_CRL_MODE0) << (POSITION_VAL(Pin) * 4U)), (Mode << (POSITION_VAL(Pin) * 4U))); |
345 | MODIFY_REG(*pReg, ((GPIO_CRL_CNF0 | GPIO_CRL_MODE0) << (POSITION_VAL(Pin) * 4U)), (Mode << (POSITION_VAL(Pin) * 4U))); |
362 | } |
346 | } |
363 | 347 | ||
364 | /** |
348 | /** |
365 | * @brief Return gpio mode for a dedicated pin on dedicated port. |
349 | * @brief Return gpio mode for a dedicated pin on dedicated port. |
Line 395... | Line 379... | ||
395 | * @arg @ref LL_GPIO_MODE_OUTPUT |
379 | * @arg @ref LL_GPIO_MODE_OUTPUT |
396 | * @arg @ref LL_GPIO_MODE_ALTERNATE |
380 | * @arg @ref LL_GPIO_MODE_ALTERNATE |
397 | */ |
381 | */ |
398 | __STATIC_INLINE uint32_t LL_GPIO_GetPinMode(GPIO_TypeDef *GPIOx, uint32_t Pin) |
382 | __STATIC_INLINE uint32_t LL_GPIO_GetPinMode(GPIO_TypeDef *GPIOx, uint32_t Pin) |
399 | { |
383 | { |
400 | register uint32_t *pReg = (uint32_t *)((uint32_t)(&GPIOx->CRL) + (Pin >> 24)); |
384 | register uint32_t *pReg = (uint32_t *)((uint32_t)((uint32_t)(&GPIOx->CRL) + (Pin >> 24))); |
401 | return (READ_BIT(*pReg, ((GPIO_CRL_CNF0 | GPIO_CRL_MODE0) << (POSITION_VAL(Pin) * 4U))) >> (POSITION_VAL(Pin) * 4U)); |
385 | return (READ_BIT(*pReg, ((GPIO_CRL_CNF0 | GPIO_CRL_MODE0) << (POSITION_VAL(Pin) * 4U))) >> (POSITION_VAL(Pin) * 4U)); |
402 | } |
386 | } |
403 | 387 | ||
404 | /** |
388 | /** |
405 | * @brief Configure gpio speed for a dedicated pin on dedicated port. |
389 | * @brief Configure gpio speed for a dedicated pin on dedicated port. |
Line 433... | Line 417... | ||
433 | * @arg @ref LL_GPIO_SPEED_FREQ_HIGH |
417 | * @arg @ref LL_GPIO_SPEED_FREQ_HIGH |
434 | * @retval None |
418 | * @retval None |
435 | */ |
419 | */ |
436 | __STATIC_INLINE void LL_GPIO_SetPinSpeed(GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Speed) |
420 | __STATIC_INLINE void LL_GPIO_SetPinSpeed(GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t Speed) |
437 | { |
421 | { |
438 | register uint32_t *pReg = (uint32_t *)((uint32_t)(&GPIOx->CRL) + (Pin >> 24)); |
422 | register uint32_t *pReg = (uint32_t *)((uint32_t)((uint32_t)(&GPIOx->CRL) + (Pin >> 24))); |
439 | MODIFY_REG(*pReg, (GPIO_CRL_MODE0 << (POSITION_VAL(Pin) * 4U)), |
423 | MODIFY_REG(*pReg, (GPIO_CRL_MODE0 << (POSITION_VAL(Pin) * 4U)), |
440 | (Speed << (POSITION_VAL(Pin) * 4U))); |
424 | (Speed << (POSITION_VAL(Pin) * 4U))); |
441 | } |
425 | } |
442 | 426 | ||
443 | /** |
427 | /** |
Line 471... | Line 455... | ||
471 | * @arg @ref LL_GPIO_SPEED_FREQ_MEDIUM |
455 | * @arg @ref LL_GPIO_SPEED_FREQ_MEDIUM |
472 | * @arg @ref LL_GPIO_SPEED_FREQ_HIGH |
456 | * @arg @ref LL_GPIO_SPEED_FREQ_HIGH |
473 | */ |
457 | */ |
474 | __STATIC_INLINE uint32_t LL_GPIO_GetPinSpeed(GPIO_TypeDef *GPIOx, uint32_t Pin) |
458 | __STATIC_INLINE uint32_t LL_GPIO_GetPinSpeed(GPIO_TypeDef *GPIOx, uint32_t Pin) |
475 | { |
459 | { |
476 | register uint32_t *pReg = (uint32_t *)((uint32_t)(&GPIOx->CRL) + (Pin >> 24)); |
460 | register uint32_t *pReg = (uint32_t *)((uint32_t)((uint32_t)(&GPIOx->CRL) + (Pin >> 24))); |
477 | return (READ_BIT(*pReg, (GPIO_CRL_MODE0 << (POSITION_VAL(Pin) * 4U))) >> (POSITION_VAL(Pin) * 4U)); |
461 | return (READ_BIT(*pReg, (GPIO_CRL_MODE0 << (POSITION_VAL(Pin) * 4U))) >> (POSITION_VAL(Pin) * 4U)); |
478 | } |
462 | } |
479 | 463 | ||
480 | /** |
464 | /** |
481 | * @brief Configure gpio output type for several pins on dedicated port. |
465 | * @brief Configure gpio output type for several pins on dedicated port. |
Line 507... | Line 491... | ||
507 | * @arg @ref LL_GPIO_OUTPUT_OPENDRAIN |
491 | * @arg @ref LL_GPIO_OUTPUT_OPENDRAIN |
508 | * @retval None |
492 | * @retval None |
509 | */ |
493 | */ |
510 | __STATIC_INLINE void LL_GPIO_SetPinOutputType(GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t OutputType) |
494 | __STATIC_INLINE void LL_GPIO_SetPinOutputType(GPIO_TypeDef *GPIOx, uint32_t Pin, uint32_t OutputType) |
511 | { |
495 | { |
512 | register uint32_t *pReg = (uint32_t *)((uint32_t)(&GPIOx->CRL) + (Pin >> 24)); |
496 | register uint32_t *pReg = (uint32_t *)((uint32_t)((uint32_t)(&GPIOx->CRL) + (Pin >> 24))); |
513 | MODIFY_REG(*pReg, (GPIO_CRL_CNF0_0 << (POSITION_VAL(Pin) * 4U)), |
497 | MODIFY_REG(*pReg, (GPIO_CRL_CNF0_0 << (POSITION_VAL(Pin) * 4U)), |
514 | (OutputType << (POSITION_VAL(Pin) * 4U))); |
498 | (OutputType << (POSITION_VAL(Pin) * 4U))); |
515 | } |
499 | } |
516 | 500 | ||
517 | /** |
501 | /** |
Line 544... | Line 528... | ||
544 | * @arg @ref LL_GPIO_OUTPUT_PUSHPULL |
528 | * @arg @ref LL_GPIO_OUTPUT_PUSHPULL |
545 | * @arg @ref LL_GPIO_OUTPUT_OPENDRAIN |
529 | * @arg @ref LL_GPIO_OUTPUT_OPENDRAIN |
546 | */ |
530 | */ |
547 | __STATIC_INLINE uint32_t LL_GPIO_GetPinOutputType(GPIO_TypeDef *GPIOx, uint32_t Pin) |
531 | __STATIC_INLINE uint32_t LL_GPIO_GetPinOutputType(GPIO_TypeDef *GPIOx, uint32_t Pin) |
548 | { |
532 | { |
549 | register uint32_t *pReg = (uint32_t *)((uint32_t)(&GPIOx->CRL) + (Pin >> 24)); |
533 | register uint32_t *pReg = (uint32_t *)((uint32_t)((uint32_t)(&GPIOx->CRL) + (Pin >> 24))); |
550 | return (READ_BIT(*pReg, (GPIO_CRL_CNF0_0 << (POSITION_VAL(Pin) * 4U))) >> (POSITION_VAL(Pin) * 4U)); |
534 | return (READ_BIT(*pReg, (GPIO_CRL_CNF0_0 << (POSITION_VAL(Pin) * 4U))) >> (POSITION_VAL(Pin) * 4U)); |
551 | 535 | ||
552 | } |
536 | } |
553 | 537 | ||
554 | /** |
538 | /** |
Line 875... | Line 859... | ||
875 | * @arg @ref LL_GPIO_PIN_ALL |
859 | * @arg @ref LL_GPIO_PIN_ALL |
876 | * @retval None |
860 | * @retval None |
877 | */ |
861 | */ |
878 | __STATIC_INLINE void LL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint32_t PinMask) |
862 | __STATIC_INLINE void LL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint32_t PinMask) |
879 | { |
863 | { |
- | 864 | uint32_t odr = READ_REG(GPIOx->ODR); |
|
880 | WRITE_REG(GPIOx->ODR, READ_REG(GPIOx->ODR) ^ ((PinMask >> GPIO_PIN_MASK_POS) & 0x0000FFFFU)); |
865 | uint32_t pinmask = ((PinMask >> GPIO_PIN_MASK_POS) & 0x0000FFFFU); |
- | 866 | WRITE_REG(GPIOx->BSRR, ((odr & pinmask) << 16u) | (~odr & pinmask)); |
|
881 | } |
867 | } |
882 | 868 | ||
883 | /** |
869 | /** |
884 | * @} |
870 | * @} |
885 | */ |
871 | */ |
Line 895... | Line 881... | ||
895 | * @note ENABLE: Remap (NSS/PA15, SCK/PB3, MISO/PB4, MOSI/PB5) |
881 | * @note ENABLE: Remap (NSS/PA15, SCK/PB3, MISO/PB4, MOSI/PB5) |
896 | * @retval None |
882 | * @retval None |
897 | */ |
883 | */ |
898 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_SPI1(void) |
884 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_SPI1(void) |
899 | { |
885 | { |
900 | SET_BIT(AFIO->MAPR, AFIO_MAPR_SPI1_REMAP); |
886 | SET_BIT(AFIO->MAPR, AFIO_MAPR_SPI1_REMAP | AFIO_MAPR_SWJ_CFG); |
901 | } |
887 | } |
902 | 888 | ||
903 | /** |
889 | /** |
904 | * @brief Disable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI. |
890 | * @brief Disable the remapping of SPI1 alternate function NSS, SCK, MISO and MOSI. |
905 | * @rmtoll MAPR SPI1_REMAP LL_GPIO_AF_DisableRemap_SPI1 |
891 | * @rmtoll MAPR SPI1_REMAP LL_GPIO_AF_DisableRemap_SPI1 |
906 | * @note DISABLE: No remap (NSS/PA4, SCK/PA5, MISO/PA6, MOSI/PA7) |
892 | * @note DISABLE: No remap (NSS/PA4, SCK/PA5, MISO/PA6, MOSI/PA7) |
907 | * @retval None |
893 | * @retval None |
908 | */ |
894 | */ |
909 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_SPI1(void) |
895 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_SPI1(void) |
910 | { |
896 | { |
911 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_SPI1_REMAP); |
897 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_SPI1_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
912 | } |
898 | } |
913 | 899 | ||
914 | /** |
900 | /** |
915 | * @brief Check if SPI1 has been remaped or not |
901 | * @brief Check if SPI1 has been remaped or not |
916 | * @rmtoll MAPR SPI1_REMAP LL_GPIO_AF_IsEnabledRemap_SPI1 |
902 | * @rmtoll MAPR SPI1_REMAP LL_GPIO_AF_IsEnabledRemap_SPI1 |
Line 927... | Line 913... | ||
927 | * @note ENABLE: Remap (SCL/PB8, SDA/PB9) |
913 | * @note ENABLE: Remap (SCL/PB8, SDA/PB9) |
928 | * @retval None |
914 | * @retval None |
929 | */ |
915 | */ |
930 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_I2C1(void) |
916 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_I2C1(void) |
931 | { |
917 | { |
932 | SET_BIT(AFIO->MAPR, AFIO_MAPR_I2C1_REMAP); |
918 | SET_BIT(AFIO->MAPR, AFIO_MAPR_I2C1_REMAP | AFIO_MAPR_SWJ_CFG); |
933 | } |
919 | } |
934 | 920 | ||
935 | /** |
921 | /** |
936 | * @brief Disable the remapping of I2C1 alternate function SCL and SDA. |
922 | * @brief Disable the remapping of I2C1 alternate function SCL and SDA. |
937 | * @rmtoll MAPR I2C1_REMAP LL_GPIO_AF_DisableRemap_I2C1 |
923 | * @rmtoll MAPR I2C1_REMAP LL_GPIO_AF_DisableRemap_I2C1 |
938 | * @note DISABLE: No remap (SCL/PB6, SDA/PB7) |
924 | * @note DISABLE: No remap (SCL/PB6, SDA/PB7) |
939 | * @retval None |
925 | * @retval None |
940 | */ |
926 | */ |
941 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_I2C1(void) |
927 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_I2C1(void) |
942 | { |
928 | { |
943 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_I2C1_REMAP); |
929 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_I2C1_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
944 | } |
930 | } |
945 | 931 | ||
946 | /** |
932 | /** |
947 | * @brief Check if I2C1 has been remaped or not |
933 | * @brief Check if I2C1 has been remaped or not |
948 | * @rmtoll MAPR I2C1_REMAP LL_GPIO_AF_IsEnabledRemap_I2C1 |
934 | * @rmtoll MAPR I2C1_REMAP LL_GPIO_AF_IsEnabledRemap_I2C1 |
Line 959... | Line 945... | ||
959 | * @note ENABLE: Remap (TX/PB6, RX/PB7) |
945 | * @note ENABLE: Remap (TX/PB6, RX/PB7) |
960 | * @retval None |
946 | * @retval None |
961 | */ |
947 | */ |
962 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_USART1(void) |
948 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_USART1(void) |
963 | { |
949 | { |
964 | SET_BIT(AFIO->MAPR, AFIO_MAPR_USART1_REMAP); |
950 | SET_BIT(AFIO->MAPR, AFIO_MAPR_USART1_REMAP | AFIO_MAPR_SWJ_CFG); |
965 | } |
951 | } |
966 | 952 | ||
967 | /** |
953 | /** |
968 | * @brief Disable the remapping of USART1 alternate function TX and RX. |
954 | * @brief Disable the remapping of USART1 alternate function TX and RX. |
969 | * @rmtoll MAPR USART1_REMAP LL_GPIO_AF_DisableRemap_USART1 |
955 | * @rmtoll MAPR USART1_REMAP LL_GPIO_AF_DisableRemap_USART1 |
970 | * @note DISABLE: No remap (TX/PA9, RX/PA10) |
956 | * @note DISABLE: No remap (TX/PA9, RX/PA10) |
971 | * @retval None |
957 | * @retval None |
972 | */ |
958 | */ |
973 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_USART1(void) |
959 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_USART1(void) |
974 | { |
960 | { |
975 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_USART1_REMAP); |
961 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_USART1_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
976 | } |
962 | } |
977 | 963 | ||
978 | /** |
964 | /** |
979 | * @brief Check if USART1 has been remaped or not |
965 | * @brief Check if USART1 has been remaped or not |
980 | * @rmtoll MAPR USART1_REMAP LL_GPIO_AF_IsEnabledRemap_USART1 |
966 | * @rmtoll MAPR USART1_REMAP LL_GPIO_AF_IsEnabledRemap_USART1 |
Line 991... | Line 977... | ||
991 | * @note ENABLE: Remap (CTS/PD3, RTS/PD4, TX/PD5, RX/PD6, CK/PD7) |
977 | * @note ENABLE: Remap (CTS/PD3, RTS/PD4, TX/PD5, RX/PD6, CK/PD7) |
992 | * @retval None |
978 | * @retval None |
993 | */ |
979 | */ |
994 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_USART2(void) |
980 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_USART2(void) |
995 | { |
981 | { |
996 | SET_BIT(AFIO->MAPR, AFIO_MAPR_USART2_REMAP); |
982 | SET_BIT(AFIO->MAPR, AFIO_MAPR_USART2_REMAP | AFIO_MAPR_SWJ_CFG); |
997 | } |
983 | } |
998 | 984 | ||
999 | /** |
985 | /** |
1000 | * @brief Disable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX. |
986 | * @brief Disable the remapping of USART2 alternate function CTS, RTS, CK, TX and RX. |
1001 | * @rmtoll MAPR USART2_REMAP LL_GPIO_AF_DisableRemap_USART2 |
987 | * @rmtoll MAPR USART2_REMAP LL_GPIO_AF_DisableRemap_USART2 |
1002 | * @note DISABLE: No remap (CTS/PA0, RTS/PA1, TX/PA2, RX/PA3, CK/PA4) |
988 | * @note DISABLE: No remap (CTS/PA0, RTS/PA1, TX/PA2, RX/PA3, CK/PA4) |
1003 | * @retval None |
989 | * @retval None |
1004 | */ |
990 | */ |
1005 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_USART2(void) |
991 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_USART2(void) |
1006 | { |
992 | { |
1007 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_USART2_REMAP); |
993 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_USART2_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1008 | } |
994 | } |
1009 | 995 | ||
1010 | /** |
996 | /** |
1011 | * @brief Check if USART2 has been remaped or not |
997 | * @brief Check if USART2 has been remaped or not |
1012 | * @rmtoll MAPR USART2_REMAP LL_GPIO_AF_IsEnabledRemap_USART2 |
998 | * @rmtoll MAPR USART2_REMAP LL_GPIO_AF_IsEnabledRemap_USART2 |
Line 1024... | Line 1010... | ||
1024 | * @note ENABLE: Full remap (TX/PD8, RX/PD9, CK/PD10, CTS/PD11, RTS/PD12) |
1010 | * @note ENABLE: Full remap (TX/PD8, RX/PD9, CK/PD10, CTS/PD11, RTS/PD12) |
1025 | * @retval None |
1011 | * @retval None |
1026 | */ |
1012 | */ |
1027 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_USART3(void) |
1013 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_USART3(void) |
1028 | { |
1014 | { |
1029 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_USART3_REMAP); |
- | |
1030 | SET_BIT(AFIO->MAPR, AFIO_MAPR_USART3_REMAP_FULLREMAP); |
1015 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_USART3_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_USART3_REMAP_FULLREMAP | AFIO_MAPR_SWJ_CFG)); |
1031 | } |
1016 | } |
1032 | 1017 | ||
1033 | /** |
1018 | /** |
1034 | * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. |
1019 | * @brief Enable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. |
1035 | * @rmtoll MAPR USART3_REMAP LL_GPIO_AF_RemapPartial_USART3 |
1020 | * @rmtoll MAPR USART3_REMAP LL_GPIO_AF_RemapPartial_USART3 |
1036 | * @note PARTIAL: Partial remap (TX/PC10, RX/PC11, CK/PC12, CTS/PB13, RTS/PB14) |
1021 | * @note PARTIAL: Partial remap (TX/PC10, RX/PC11, CK/PC12, CTS/PB13, RTS/PB14) |
1037 | * @retval None |
1022 | * @retval None |
1038 | */ |
1023 | */ |
1039 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial_USART3(void) |
1024 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial_USART3(void) |
1040 | { |
1025 | { |
1041 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_USART3_REMAP); |
- | |
1042 | SET_BIT(AFIO->MAPR, AFIO_MAPR_USART3_REMAP_PARTIALREMAP); |
1026 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_USART3_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_USART3_REMAP_PARTIALREMAP | AFIO_MAPR_SWJ_CFG)); |
1043 | } |
1027 | } |
1044 | 1028 | ||
1045 | /** |
1029 | /** |
1046 | * @brief Disable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. |
1030 | * @brief Disable the remapping of USART3 alternate function CTS, RTS, CK, TX and RX. |
1047 | * @rmtoll MAPR USART3_REMAP LL_GPIO_AF_DisableRemap_USART3 |
1031 | * @rmtoll MAPR USART3_REMAP LL_GPIO_AF_DisableRemap_USART3 |
1048 | * @note DISABLE: No remap (TX/PB10, RX/PB11, CK/PB12, CTS/PB13, RTS/PB14) |
1032 | * @note DISABLE: No remap (TX/PB10, RX/PB11, CK/PB12, CTS/PB13, RTS/PB14) |
1049 | * @retval None |
1033 | * @retval None |
1050 | */ |
1034 | */ |
1051 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_USART3(void) |
1035 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_USART3(void) |
1052 | { |
1036 | { |
1053 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_USART3_REMAP); |
- | |
1054 | SET_BIT(AFIO->MAPR, AFIO_MAPR_USART3_REMAP_NOREMAP); |
1037 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_USART3_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_USART3_REMAP_NOREMAP | AFIO_MAPR_SWJ_CFG)); |
1055 | } |
1038 | } |
1056 | #endif |
1039 | #endif |
1057 | 1040 | ||
1058 | /** |
1041 | /** |
1059 | * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) |
1042 | * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) |
Line 1061... | Line 1044... | ||
1061 | * @note ENABLE: Full remap (ETR/PE7, CH1/PE9, CH2/PE11, CH3/PE13, CH4/PE14, BKIN/PE15, CH1N/PE8, CH2N/PE10, CH3N/PE12) |
1044 | * @note ENABLE: Full remap (ETR/PE7, CH1/PE9, CH2/PE11, CH3/PE13, CH4/PE14, BKIN/PE15, CH1N/PE8, CH2N/PE10, CH3N/PE12) |
1062 | * @retval None |
1045 | * @retval None |
1063 | */ |
1046 | */ |
1064 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM1(void) |
1047 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM1(void) |
1065 | { |
1048 | { |
1066 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP); |
- | |
1067 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP_FULLREMAP); |
1049 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM1_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM1_REMAP_FULLREMAP | AFIO_MAPR_SWJ_CFG)); |
1068 | } |
1050 | } |
1069 | 1051 | ||
1070 | /** |
1052 | /** |
1071 | * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) |
1053 | * @brief Enable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) |
1072 | * @rmtoll MAPR TIM1_REMAP LL_GPIO_AF_RemapPartial_TIM1 |
1054 | * @rmtoll MAPR TIM1_REMAP LL_GPIO_AF_RemapPartial_TIM1 |
1073 | * @note PARTIAL: Partial remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PA6, CH1N/PA7, CH2N/PB0, CH3N/PB1) |
1055 | * @note PARTIAL: Partial remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PA6, CH1N/PA7, CH2N/PB0, CH3N/PB1) |
1074 | * @retval None |
1056 | * @retval None |
1075 | */ |
1057 | */ |
1076 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial_TIM1(void) |
1058 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial_TIM1(void) |
1077 | { |
1059 | { |
1078 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP); |
- | |
1079 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP_PARTIALREMAP); |
1060 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM1_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM1_REMAP_PARTIALREMAP | AFIO_MAPR_SWJ_CFG)); |
1080 | } |
1061 | } |
1081 | 1062 | ||
1082 | /** |
1063 | /** |
1083 | * @brief Disable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) |
1064 | * @brief Disable the remapping of TIM1 alternate function channels 1 to 4, 1N to 3N, external trigger (ETR) and Break input (BKIN) |
1084 | * @rmtoll MAPR TIM1_REMAP LL_GPIO_AF_DisableRemap_TIM1 |
1065 | * @rmtoll MAPR TIM1_REMAP LL_GPIO_AF_DisableRemap_TIM1 |
1085 | * @note DISABLE: No remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PB12, CH1N/PB13, CH2N/PB14, CH3N/PB15) |
1066 | * @note DISABLE: No remap (ETR/PA12, CH1/PA8, CH2/PA9, CH3/PA10, CH4/PA11, BKIN/PB12, CH1N/PB13, CH2N/PB14, CH3N/PB15) |
1086 | * @retval None |
1067 | * @retval None |
1087 | */ |
1068 | */ |
1088 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM1(void) |
1069 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM1(void) |
1089 | { |
1070 | { |
1090 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP); |
- | |
1091 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM1_REMAP_NOREMAP); |
1071 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM1_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM1_REMAP_NOREMAP | AFIO_MAPR_SWJ_CFG)); |
1092 | } |
1072 | } |
1093 | 1073 | ||
1094 | /** |
1074 | /** |
1095 | * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1075 | * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1096 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_EnableRemap_TIM2 |
1076 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_EnableRemap_TIM2 |
1097 | * @note ENABLE: Full remap (CH1/ETR/PA15, CH2/PB3, CH3/PB10, CH4/PB11) |
1077 | * @note ENABLE: Full remap (CH1/ETR/PA15, CH2/PB3, CH3/PB10, CH4/PB11) |
1098 | * @retval None |
1078 | * @retval None |
1099 | */ |
1079 | */ |
1100 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM2(void) |
1080 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM2(void) |
1101 | { |
1081 | { |
1102 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP); |
- | |
1103 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP_FULLREMAP); |
1082 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM2_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM2_REMAP_FULLREMAP | AFIO_MAPR_SWJ_CFG)); |
1104 | } |
1083 | } |
1105 | 1084 | ||
1106 | /** |
1085 | /** |
1107 | * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1086 | * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1108 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_RemapPartial2_TIM2 |
1087 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_RemapPartial2_TIM2 |
1109 | * @note PARTIAL_2: Partial remap (CH1/ETR/PA0, CH2/PA1, CH3/PB10, CH4/PB11) |
1088 | * @note PARTIAL_2: Partial remap (CH1/ETR/PA0, CH2/PA1, CH3/PB10, CH4/PB11) |
1110 | * @retval None |
1089 | * @retval None |
1111 | */ |
1090 | */ |
1112 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial2_TIM2(void) |
1091 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial2_TIM2(void) |
1113 | { |
1092 | { |
1114 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP); |
- | |
1115 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2); |
1093 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM2_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM2_REMAP_PARTIALREMAP2 | AFIO_MAPR_SWJ_CFG)); |
1116 | } |
1094 | } |
1117 | 1095 | ||
1118 | /** |
1096 | /** |
1119 | * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1097 | * @brief Enable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1120 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_RemapPartial1_TIM2 |
1098 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_RemapPartial1_TIM2 |
1121 | * @note PARTIAL_1: Partial remap (CH1/ETR/PA15, CH2/PB3, CH3/PA2, CH4/PA3) |
1099 | * @note PARTIAL_1: Partial remap (CH1/ETR/PA15, CH2/PB3, CH3/PA2, CH4/PA3) |
1122 | * @retval None |
1100 | * @retval None |
1123 | */ |
1101 | */ |
1124 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial1_TIM2(void) |
1102 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial1_TIM2(void) |
1125 | { |
1103 | { |
1126 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP); |
- | |
1127 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1); |
1104 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM2_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM2_REMAP_PARTIALREMAP1 | AFIO_MAPR_SWJ_CFG)); |
1128 | } |
1105 | } |
1129 | 1106 | ||
1130 | /** |
1107 | /** |
1131 | * @brief Disable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1108 | * @brief Disable the remapping of TIM2 alternate function channels 1 to 4 and external trigger (ETR) |
1132 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_DisableRemap_TIM2 |
1109 | * @rmtoll MAPR TIM2_REMAP LL_GPIO_AF_DisableRemap_TIM2 |
1133 | * @note DISABLE: No remap (CH1/ETR/PA0, CH2/PA1, CH3/PA2, CH4/PA3) |
1110 | * @note DISABLE: No remap (CH1/ETR/PA0, CH2/PA1, CH3/PA2, CH4/PA3) |
1134 | * @retval None |
1111 | * @retval None |
1135 | */ |
1112 | */ |
1136 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM2(void) |
1113 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM2(void) |
1137 | { |
1114 | { |
1138 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP); |
- | |
1139 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM2_REMAP_NOREMAP); |
1115 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM2_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM2_REMAP_NOREMAP | AFIO_MAPR_SWJ_CFG)); |
1140 | } |
1116 | } |
1141 | 1117 | ||
1142 | /** |
1118 | /** |
1143 | * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 |
1119 | * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 |
1144 | * @rmtoll MAPR TIM3_REMAP LL_GPIO_AF_EnableRemap_TIM3 |
1120 | * @rmtoll MAPR TIM3_REMAP LL_GPIO_AF_EnableRemap_TIM3 |
Line 1146... | Line 1122... | ||
1146 | * @note TIM3_ETR on PE0 is not re-mapped. |
1122 | * @note TIM3_ETR on PE0 is not re-mapped. |
1147 | * @retval None |
1123 | * @retval None |
1148 | */ |
1124 | */ |
1149 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM3(void) |
1125 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM3(void) |
1150 | { |
1126 | { |
1151 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP); |
- | |
1152 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP_FULLREMAP); |
1127 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM3_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM3_REMAP_FULLREMAP | AFIO_MAPR_SWJ_CFG)); |
1153 | } |
1128 | } |
1154 | 1129 | ||
1155 | /** |
1130 | /** |
1156 | * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 |
1131 | * @brief Enable the remapping of TIM3 alternate function channels 1 to 4 |
1157 | * @rmtoll MAPR TIM3_REMAP LL_GPIO_AF_RemapPartial_TIM3 |
1132 | * @rmtoll MAPR TIM3_REMAP LL_GPIO_AF_RemapPartial_TIM3 |
Line 1159... | Line 1134... | ||
1159 | * @note TIM3_ETR on PE0 is not re-mapped. |
1134 | * @note TIM3_ETR on PE0 is not re-mapped. |
1160 | * @retval None |
1135 | * @retval None |
1161 | */ |
1136 | */ |
1162 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial_TIM3(void) |
1137 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial_TIM3(void) |
1163 | { |
1138 | { |
1164 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP); |
- | |
1165 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP_PARTIALREMAP); |
1139 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM3_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM3_REMAP_PARTIALREMAP | AFIO_MAPR_SWJ_CFG)); |
1166 | } |
1140 | } |
1167 | 1141 | ||
1168 | /** |
1142 | /** |
1169 | * @brief Disable the remapping of TIM3 alternate function channels 1 to 4 |
1143 | * @brief Disable the remapping of TIM3 alternate function channels 1 to 4 |
1170 | * @rmtoll MAPR TIM3_REMAP LL_GPIO_AF_DisableRemap_TIM3 |
1144 | * @rmtoll MAPR TIM3_REMAP LL_GPIO_AF_DisableRemap_TIM3 |
Line 1172... | Line 1146... | ||
1172 | * @note TIM3_ETR on PE0 is not re-mapped. |
1146 | * @note TIM3_ETR on PE0 is not re-mapped. |
1173 | * @retval None |
1147 | * @retval None |
1174 | */ |
1148 | */ |
1175 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM3(void) |
1149 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM3(void) |
1176 | { |
1150 | { |
1177 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP); |
- | |
1178 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM3_REMAP_NOREMAP); |
1151 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM3_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_TIM3_REMAP_NOREMAP | AFIO_MAPR_SWJ_CFG)); |
1179 | } |
1152 | } |
1180 | 1153 | ||
1181 | #if defined(AFIO_MAPR_TIM4_REMAP) |
1154 | #if defined(AFIO_MAPR_TIM4_REMAP) |
1182 | /** |
1155 | /** |
1183 | * @brief Enable the remapping of TIM4 alternate function channels 1 to 4. |
1156 | * @brief Enable the remapping of TIM4 alternate function channels 1 to 4. |
Line 1186... | Line 1159... | ||
1186 | * @note TIM4_ETR on PE0 is not re-mapped. |
1159 | * @note TIM4_ETR on PE0 is not re-mapped. |
1187 | * @retval None |
1160 | * @retval None |
1188 | */ |
1161 | */ |
1189 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM4(void) |
1162 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM4(void) |
1190 | { |
1163 | { |
1191 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM4_REMAP); |
1164 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM4_REMAP | AFIO_MAPR_SWJ_CFG); |
1192 | } |
1165 | } |
1193 | /** |
1166 | /** |
1194 | * @brief Disable the remapping of TIM4 alternate function channels 1 to 4. |
1167 | * @brief Disable the remapping of TIM4 alternate function channels 1 to 4. |
1195 | * @rmtoll MAPR TIM4_REMAP LL_GPIO_AF_DisableRemap_TIM4 |
1168 | * @rmtoll MAPR TIM4_REMAP LL_GPIO_AF_DisableRemap_TIM4 |
1196 | * @note DISABLE: No remap (TIM4_CH1/PB6, TIM4_CH2/PB7, TIM4_CH3/PB8, TIM4_CH4/PB9) |
1169 | * @note DISABLE: No remap (TIM4_CH1/PB6, TIM4_CH2/PB7, TIM4_CH3/PB8, TIM4_CH4/PB9) |
1197 | * @note TIM4_ETR on PE0 is not re-mapped. |
1170 | * @note TIM4_ETR on PE0 is not re-mapped. |
1198 | * @retval None |
1171 | * @retval None |
1199 | */ |
1172 | */ |
1200 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM4(void) |
1173 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM4(void) |
1201 | { |
1174 | { |
1202 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM4_REMAP); |
1175 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM4_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1203 | } |
1176 | } |
1204 | 1177 | ||
1205 | /** |
1178 | /** |
1206 | * @brief Check if TIM4 has been remaped or not |
1179 | * @brief Check if TIM4 has been remaped or not |
1207 | * @rmtoll MAPR TIM4_REMAP LL_GPIO_AF_IsEnabledRemap_TIM4 |
1180 | * @rmtoll MAPR TIM4_REMAP LL_GPIO_AF_IsEnabledRemap_TIM4 |
Line 1221... | Line 1194... | ||
1221 | * @note CASE 1: CAN_RX mapped to PA11, CAN_TX mapped to PA12 |
1194 | * @note CASE 1: CAN_RX mapped to PA11, CAN_TX mapped to PA12 |
1222 | * @retval None |
1195 | * @retval None |
1223 | */ |
1196 | */ |
1224 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial1_CAN1(void) |
1197 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial1_CAN1(void) |
1225 | { |
1198 | { |
1226 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_CAN_REMAP); |
- | |
1227 | SET_BIT(AFIO->MAPR, AFIO_MAPR_CAN_REMAP_REMAP1); |
1199 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_CAN_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_CAN_REMAP_REMAP1 | AFIO_MAPR_SWJ_CFG)); |
1228 | } |
1200 | } |
1229 | 1201 | ||
1230 | /** |
1202 | /** |
1231 | * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. |
1203 | * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. |
1232 | * @rmtoll MAPR CAN_REMAP LL_GPIO_AF_RemapPartial2_CAN1 |
1204 | * @rmtoll MAPR CAN_REMAP LL_GPIO_AF_RemapPartial2_CAN1 |
1233 | * @note CASE 2: CAN_RX mapped to PB8, CAN_TX mapped to PB9 (not available on 36-pin package) |
1205 | * @note CASE 2: CAN_RX mapped to PB8, CAN_TX mapped to PB9 (not available on 36-pin package) |
1234 | * @retval None |
1206 | * @retval None |
1235 | */ |
1207 | */ |
1236 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial2_CAN1(void) |
1208 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial2_CAN1(void) |
1237 | { |
1209 | { |
1238 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_CAN_REMAP); |
- | |
1239 | SET_BIT(AFIO->MAPR, AFIO_MAPR_CAN_REMAP_REMAP2); |
1210 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_CAN_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_CAN_REMAP_REMAP2 | AFIO_MAPR_SWJ_CFG)); |
1240 | } |
1211 | } |
1241 | 1212 | ||
1242 | /** |
1213 | /** |
1243 | * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. |
1214 | * @brief Enable or disable the remapping of CAN alternate function CAN_RX and CAN_TX in devices with a single CAN interface. |
1244 | * @rmtoll MAPR CAN_REMAP LL_GPIO_AF_RemapPartial3_CAN1 |
1215 | * @rmtoll MAPR CAN_REMAP LL_GPIO_AF_RemapPartial3_CAN1 |
1245 | * @note CASE 3: CAN_RX mapped to PD0, CAN_TX mapped to PD1 |
1216 | * @note CASE 3: CAN_RX mapped to PD0, CAN_TX mapped to PD1 |
1246 | * @retval None |
1217 | * @retval None |
1247 | */ |
1218 | */ |
1248 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial3_CAN1(void) |
1219 | __STATIC_INLINE void LL_GPIO_AF_RemapPartial3_CAN1(void) |
1249 | { |
1220 | { |
1250 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_CAN_REMAP); |
- | |
1251 | SET_BIT(AFIO->MAPR, AFIO_MAPR_CAN_REMAP_REMAP3); |
1221 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_CAN_REMAP | AFIO_MAPR_SWJ_CFG), (AFIO_MAPR_CAN_REMAP_REMAP3 | AFIO_MAPR_SWJ_CFG)); |
1252 | } |
1222 | } |
1253 | #endif |
1223 | #endif |
1254 | 1224 | ||
1255 | /** |
1225 | /** |
1256 | * @brief Enable the remapping of PD0 and PD1. When the HSE oscillator is not used |
1226 | * @brief Enable the remapping of PD0 and PD1. When the HSE oscillator is not used |
Line 1261... | Line 1231... | ||
1261 | * @note ENABLE: PD0 remapped on OSC_IN, PD1 remapped on OSC_OUT. |
1231 | * @note ENABLE: PD0 remapped on OSC_IN, PD1 remapped on OSC_OUT. |
1262 | * @retval None |
1232 | * @retval None |
1263 | */ |
1233 | */ |
1264 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_PD01(void) |
1234 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_PD01(void) |
1265 | { |
1235 | { |
1266 | SET_BIT(AFIO->MAPR, AFIO_MAPR_PD01_REMAP); |
1236 | SET_BIT(AFIO->MAPR, AFIO_MAPR_PD01_REMAP | AFIO_MAPR_SWJ_CFG); |
1267 | } |
1237 | } |
1268 | 1238 | ||
1269 | /** |
1239 | /** |
1270 | * @brief Disable the remapping of PD0 and PD1. When the HSE oscillator is not used |
1240 | * @brief Disable the remapping of PD0 and PD1. When the HSE oscillator is not used |
1271 | * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and |
1241 | * (application running on internal 8 MHz RC) PD0 and PD1 can be mapped on OSC_IN and |
Line 1275... | Line 1245... | ||
1275 | * @note DISABLE: No remapping of PD0 and PD1 |
1245 | * @note DISABLE: No remapping of PD0 and PD1 |
1276 | * @retval None |
1246 | * @retval None |
1277 | */ |
1247 | */ |
1278 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_PD01(void) |
1248 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_PD01(void) |
1279 | { |
1249 | { |
1280 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_PD01_REMAP); |
1250 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_PD01_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1281 | } |
1251 | } |
1282 | 1252 | ||
1283 | /** |
1253 | /** |
1284 | * @brief Check if PD01 has been remaped or not |
1254 | * @brief Check if PD01 has been remaped or not |
1285 | * @rmtoll MAPR PD01_REMAP LL_GPIO_AF_IsEnabledRemap_PD01 |
1255 | * @rmtoll MAPR PD01_REMAP LL_GPIO_AF_IsEnabledRemap_PD01 |
Line 1298... | Line 1268... | ||
1298 | * @note This function is available only in high density value line devices. |
1268 | * @note This function is available only in high density value line devices. |
1299 | * @retval None |
1269 | * @retval None |
1300 | */ |
1270 | */ |
1301 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM5CH4(void) |
1271 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_TIM5CH4(void) |
1302 | { |
1272 | { |
1303 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM5CH4_IREMAP); |
1273 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM5CH4_IREMAP | AFIO_MAPR_SWJ_CFG); |
1304 | } |
1274 | } |
1305 | 1275 | ||
1306 | /** |
1276 | /** |
1307 | * @brief Disable the remapping of TIM5CH4. |
1277 | * @brief Disable the remapping of TIM5CH4. |
1308 | * @rmtoll MAPR TIM5CH4_IREMAP LL_GPIO_AF_DisableRemap_TIM5CH4 |
1278 | * @rmtoll MAPR TIM5CH4_IREMAP LL_GPIO_AF_DisableRemap_TIM5CH4 |
Line 1310... | Line 1280... | ||
1310 | * @note This function is available only in high density value line devices. |
1280 | * @note This function is available only in high density value line devices. |
1311 | * @retval None |
1281 | * @retval None |
1312 | */ |
1282 | */ |
1313 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM5CH4(void) |
1283 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_TIM5CH4(void) |
1314 | { |
1284 | { |
1315 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM5CH4_IREMAP); |
1285 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM5CH4_IREMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1316 | } |
1286 | } |
1317 | 1287 | ||
1318 | /** |
1288 | /** |
1319 | * @brief Check if TIM5CH4 has been remaped or not |
1289 | * @brief Check if TIM5CH4 has been remaped or not |
1320 | * @rmtoll MAPR TIM5CH4_IREMAP LL_GPIO_AF_IsEnabledRemap_TIM5CH4 |
1290 | * @rmtoll MAPR TIM5CH4_IREMAP LL_GPIO_AF_IsEnabledRemap_TIM5CH4 |
Line 1334... | Line 1304... | ||
1334 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1304 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1335 | * @retval None |
1305 | * @retval None |
1336 | */ |
1306 | */ |
1337 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ETH(void) |
1307 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ETH(void) |
1338 | { |
1308 | { |
1339 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ETH_REMAP); |
1309 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ETH_REMAP | AFIO_MAPR_SWJ_CFG); |
1340 | } |
1310 | } |
1341 | 1311 | ||
1342 | /** |
1312 | /** |
1343 | * @brief Disable the remapping of Ethernet MAC connections with the PHY. |
1313 | * @brief Disable the remapping of Ethernet MAC connections with the PHY. |
1344 | * @rmtoll MAPR ETH_REMAP LL_GPIO_AF_DisableRemap_ETH |
1314 | * @rmtoll MAPR ETH_REMAP LL_GPIO_AF_DisableRemap_ETH |
Line 1346... | Line 1316... | ||
1346 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1316 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1347 | * @retval None |
1317 | * @retval None |
1348 | */ |
1318 | */ |
1349 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ETH(void) |
1319 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ETH(void) |
1350 | { |
1320 | { |
1351 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ETH_REMAP); |
1321 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_ETH_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1352 | } |
1322 | } |
1353 | 1323 | ||
1354 | /** |
1324 | /** |
1355 | * @brief Check if ETH has been remaped or not |
1325 | * @brief Check if ETH has been remaped or not |
1356 | * @rmtoll MAPR ETH_REMAP LL_GPIO_AF_IsEnabledRemap_ETH |
1326 | * @rmtoll MAPR ETH_REMAP LL_GPIO_AF_IsEnabledRemap_ETH |
Line 1371... | Line 1341... | ||
1371 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1341 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1372 | * @retval None |
1342 | * @retval None |
1373 | */ |
1343 | */ |
1374 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_CAN2(void) |
1344 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_CAN2(void) |
1375 | { |
1345 | { |
1376 | SET_BIT(AFIO->MAPR, AFIO_MAPR_CAN2_REMAP); |
1346 | SET_BIT(AFIO->MAPR, AFIO_MAPR_CAN2_REMAP | AFIO_MAPR_SWJ_CFG); |
1377 | } |
1347 | } |
1378 | /** |
1348 | /** |
1379 | * @brief Disable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX. |
1349 | * @brief Disable the remapping of CAN2 alternate function CAN2_RX and CAN2_TX. |
1380 | * @rmtoll MAPR CAN2_REMAP LL_GPIO_AF_DisableRemap_CAN2 |
1350 | * @rmtoll MAPR CAN2_REMAP LL_GPIO_AF_DisableRemap_CAN2 |
1381 | * @note DISABLE: No remap (CAN2_RX/PB12, CAN2_TX/PB13) |
1351 | * @note DISABLE: No remap (CAN2_RX/PB12, CAN2_TX/PB13) |
1382 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1352 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1383 | * @retval None |
1353 | * @retval None |
1384 | */ |
1354 | */ |
1385 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_CAN2(void) |
1355 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_CAN2(void) |
1386 | { |
1356 | { |
1387 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_CAN2_REMAP); |
1357 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_CAN2_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1388 | } |
1358 | } |
1389 | 1359 | ||
1390 | /** |
1360 | /** |
1391 | * @brief Check if CAN2 has been remaped or not |
1361 | * @brief Check if CAN2 has been remaped or not |
1392 | * @rmtoll MAPR CAN2_REMAP LL_GPIO_AF_IsEnabledRemap_CAN2 |
1362 | * @rmtoll MAPR CAN2_REMAP LL_GPIO_AF_IsEnabledRemap_CAN2 |
Line 1406... | Line 1376... | ||
1406 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1376 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1407 | * @retval None |
1377 | * @retval None |
1408 | */ |
1378 | */ |
1409 | __STATIC_INLINE void LL_GPIO_AF_Select_ETH_RMII(void) |
1379 | __STATIC_INLINE void LL_GPIO_AF_Select_ETH_RMII(void) |
1410 | { |
1380 | { |
1411 | SET_BIT(AFIO->MAPR, AFIO_MAPR_MII_RMII_SEL); |
1381 | SET_BIT(AFIO->MAPR, AFIO_MAPR_MII_RMII_SEL | AFIO_MAPR_SWJ_CFG); |
1412 | } |
1382 | } |
1413 | 1383 | ||
1414 | /** |
1384 | /** |
1415 | * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY. |
1385 | * @brief Configures the Ethernet MAC internally for use with an external MII or RMII PHY. |
1416 | * @rmtoll MAPR MII_RMII_SEL LL_GPIO_AF_Select_ETH_MII |
1386 | * @rmtoll MAPR MII_RMII_SEL LL_GPIO_AF_Select_ETH_MII |
Line 1418... | Line 1388... | ||
1418 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1388 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1419 | * @retval None |
1389 | * @retval None |
1420 | */ |
1390 | */ |
1421 | __STATIC_INLINE void LL_GPIO_AF_Select_ETH_MII(void) |
1391 | __STATIC_INLINE void LL_GPIO_AF_Select_ETH_MII(void) |
1422 | { |
1392 | { |
1423 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_MII_RMII_SEL); |
1393 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_MII_RMII_SEL | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1424 | } |
1394 | } |
1425 | #endif |
1395 | #endif |
1426 | 1396 | ||
1427 | #if defined(AFIO_MAPR_ADC1_ETRGINJ_REMAP) |
1397 | #if defined(AFIO_MAPR_ADC1_ETRGINJ_REMAP) |
1428 | /** |
1398 | /** |
Line 1431... | Line 1401... | ||
1431 | * @note ENABLE: ADC1 External Event injected conversion is connected to TIM8 Channel4. |
1401 | * @note ENABLE: ADC1 External Event injected conversion is connected to TIM8 Channel4. |
1432 | * @retval None |
1402 | * @retval None |
1433 | */ |
1403 | */ |
1434 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC1_ETRGINJ(void) |
1404 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC1_ETRGINJ(void) |
1435 | { |
1405 | { |
1436 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGINJ_REMAP); |
1406 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGINJ_REMAP | AFIO_MAPR_SWJ_CFG); |
1437 | } |
1407 | } |
1438 | 1408 | ||
1439 | /** |
1409 | /** |
1440 | * @brief Disable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion). |
1410 | * @brief Disable the remapping of ADC1_ETRGINJ (ADC 1 External trigger injected conversion). |
1441 | * @rmtoll MAPR ADC1_ETRGINJ_REMAP LL_GPIO_AF_DisableRemap_ADC1_ETRGINJ |
1411 | * @rmtoll MAPR ADC1_ETRGINJ_REMAP LL_GPIO_AF_DisableRemap_ADC1_ETRGINJ |
1442 | * @note DISABLE: ADC1 External trigger injected conversion is connected to EXTI15 |
1412 | * @note DISABLE: ADC1 External trigger injected conversion is connected to EXTI15 |
1443 | * @retval None |
1413 | * @retval None |
1444 | */ |
1414 | */ |
1445 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC1_ETRGINJ(void) |
1415 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC1_ETRGINJ(void) |
1446 | { |
1416 | { |
1447 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGINJ_REMAP); |
1417 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_ADC1_ETRGINJ_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1448 | } |
1418 | } |
1449 | 1419 | ||
1450 | /** |
1420 | /** |
1451 | * @brief Check if ADC1_ETRGINJ has been remaped or not |
1421 | * @brief Check if ADC1_ETRGINJ has been remaped or not |
1452 | * @rmtoll MAPR ADC1_ETRGINJ_REMAP LL_GPIO_AF_IsEnabledRemap_ADC1_ETRGINJ |
1422 | * @rmtoll MAPR ADC1_ETRGINJ_REMAP LL_GPIO_AF_IsEnabledRemap_ADC1_ETRGINJ |
Line 1465... | Line 1435... | ||
1465 | * @note ENABLE: ADC1 External Event regular conversion is connected to TIM8 TRG0. |
1435 | * @note ENABLE: ADC1 External Event regular conversion is connected to TIM8 TRG0. |
1466 | * @retval None |
1436 | * @retval None |
1467 | */ |
1437 | */ |
1468 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC1_ETRGREG(void) |
1438 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC1_ETRGREG(void) |
1469 | { |
1439 | { |
1470 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGREG_REMAP); |
1440 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGREG_REMAP | AFIO_MAPR_SWJ_CFG); |
1471 | } |
1441 | } |
1472 | 1442 | ||
1473 | /** |
1443 | /** |
1474 | * @brief Disable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion). |
1444 | * @brief Disable the remapping of ADC1_ETRGREG (ADC 1 External trigger regular conversion). |
1475 | * @rmtoll MAPR ADC1_ETRGREG_REMAP LL_GPIO_AF_DisableRemap_ADC1_ETRGREG |
1445 | * @rmtoll MAPR ADC1_ETRGREG_REMAP LL_GPIO_AF_DisableRemap_ADC1_ETRGREG |
1476 | * @note DISABLE: ADC1 External trigger regular conversion is connected to EXTI11 |
1446 | * @note DISABLE: ADC1 External trigger regular conversion is connected to EXTI11 |
1477 | * @retval None |
1447 | * @retval None |
1478 | */ |
1448 | */ |
1479 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC1_ETRGREG(void) |
1449 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC1_ETRGREG(void) |
1480 | { |
1450 | { |
1481 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC1_ETRGREG_REMAP); |
1451 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_ADC1_ETRGREG_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1482 | } |
1452 | } |
1483 | 1453 | ||
1484 | /** |
1454 | /** |
1485 | * @brief Check if ADC1_ETRGREG has been remaped or not |
1455 | * @brief Check if ADC1_ETRGREG has been remaped or not |
1486 | * @rmtoll MAPR ADC1_ETRGREG_REMAP LL_GPIO_AF_IsEnabledRemap_ADC1_ETRGREG |
1456 | * @rmtoll MAPR ADC1_ETRGREG_REMAP LL_GPIO_AF_IsEnabledRemap_ADC1_ETRGREG |
Line 1500... | Line 1470... | ||
1500 | * @note ENABLE: ADC2 External Event injected conversion is connected to TIM8 Channel4. |
1470 | * @note ENABLE: ADC2 External Event injected conversion is connected to TIM8 Channel4. |
1501 | * @retval None |
1471 | * @retval None |
1502 | */ |
1472 | */ |
1503 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC2_ETRGINJ(void) |
1473 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC2_ETRGINJ(void) |
1504 | { |
1474 | { |
1505 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGINJ_REMAP); |
1475 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGINJ_REMAP | AFIO_MAPR_SWJ_CFG); |
1506 | } |
1476 | } |
1507 | 1477 | ||
1508 | /** |
1478 | /** |
1509 | * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion). |
1479 | * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger injected conversion). |
1510 | * @rmtoll MAPR ADC2_ETRGINJ_REMAP LL_GPIO_AF_DisableRemap_ADC2_ETRGINJ |
1480 | * @rmtoll MAPR ADC2_ETRGINJ_REMAP LL_GPIO_AF_DisableRemap_ADC2_ETRGINJ |
1511 | * @note DISABLE: ADC2 External trigger injected conversion is connected to EXTI15 |
1481 | * @note DISABLE: ADC2 External trigger injected conversion is connected to EXTI15 |
1512 | * @retval None |
1482 | * @retval None |
1513 | */ |
1483 | */ |
1514 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC2_ETRGINJ(void) |
1484 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC2_ETRGINJ(void) |
1515 | { |
1485 | { |
1516 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGINJ_REMAP); |
1486 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_ADC2_ETRGINJ_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1517 | } |
1487 | } |
1518 | 1488 | ||
1519 | /** |
1489 | /** |
1520 | * @brief Check if ADC2_ETRGINJ has been remaped or not |
1490 | * @brief Check if ADC2_ETRGINJ has been remaped or not |
1521 | * @rmtoll MAPR ADC2_ETRGINJ_REMAP LL_GPIO_AF_IsEnabledRemap_ADC2_ETRGINJ |
1491 | * @rmtoll MAPR ADC2_ETRGINJ_REMAP LL_GPIO_AF_IsEnabledRemap_ADC2_ETRGINJ |
Line 1535... | Line 1505... | ||
1535 | * @note ENABLE: ADC2 External Event regular conversion is connected to TIM8 TRG0. |
1505 | * @note ENABLE: ADC2 External Event regular conversion is connected to TIM8 TRG0. |
1536 | * @retval None |
1506 | * @retval None |
1537 | */ |
1507 | */ |
1538 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC2_ETRGREG(void) |
1508 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ADC2_ETRGREG(void) |
1539 | { |
1509 | { |
1540 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGREG_REMAP); |
1510 | SET_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGREG_REMAP | AFIO_MAPR_SWJ_CFG); |
1541 | } |
1511 | } |
1542 | 1512 | ||
1543 | /** |
1513 | /** |
1544 | * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). |
1514 | * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). |
1545 | * @rmtoll MAPR ADC2_ETRGREG_REMAP LL_GPIO_AF_DisableRemap_ADC2_ETRGREG |
1515 | * @rmtoll MAPR ADC2_ETRGREG_REMAP LL_GPIO_AF_DisableRemap_ADC2_ETRGREG |
1546 | * @note DISABLE: ADC2 External trigger regular conversion is connected to EXTI11 |
1516 | * @note DISABLE: ADC2 External trigger regular conversion is connected to EXTI11 |
1547 | * @retval None |
1517 | * @retval None |
1548 | */ |
1518 | */ |
1549 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC2_ETRGREG(void) |
1519 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ADC2_ETRGREG(void) |
1550 | { |
1520 | { |
1551 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_ADC2_ETRGREG_REMAP); |
1521 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_ADC2_ETRGREG_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1552 | } |
1522 | } |
1553 | 1523 | ||
1554 | /** |
1524 | /** |
1555 | * @brief Check if ADC2_ETRGREG has been remaped or not |
1525 | * @brief Check if ADC2_ETRGREG has been remaped or not |
1556 | * @rmtoll MAPR ADC2_ETRGREG_REMAP LL_GPIO_AF_IsEnabledRemap_ADC2_ETRGREG |
1526 | * @rmtoll MAPR ADC2_ETRGREG_REMAP LL_GPIO_AF_IsEnabledRemap_ADC2_ETRGREG |
Line 1619... | Line 1589... | ||
1619 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1589 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1620 | * @retval None |
1590 | * @retval None |
1621 | */ |
1591 | */ |
1622 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_SPI3(void) |
1592 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_SPI3(void) |
1623 | { |
1593 | { |
1624 | SET_BIT(AFIO->MAPR, AFIO_MAPR_SPI3_REMAP); |
1594 | SET_BIT(AFIO->MAPR, AFIO_MAPR_SPI3_REMAP | AFIO_MAPR_SWJ_CFG); |
1625 | } |
1595 | } |
1626 | 1596 | ||
1627 | /** |
1597 | /** |
1628 | * @brief Disable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD. |
1598 | * @brief Disable the remapping of SPI3 alternate functions SPI3_NSS/I2S3_WS, SPI3_SCK/I2S3_CK, SPI3_MISO, SPI3_MOSI/I2S3_SD. |
1629 | * @rmtoll MAPR SPI3_REMAP LL_GPIO_AF_DisableRemap_SPI3 |
1599 | * @rmtoll MAPR SPI3_REMAP LL_GPIO_AF_DisableRemap_SPI3 |
Line 1631... | Line 1601... | ||
1631 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1601 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1632 | * @retval None |
1602 | * @retval None |
1633 | */ |
1603 | */ |
1634 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_SPI3(void) |
1604 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_SPI3(void) |
1635 | { |
1605 | { |
1636 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_SPI3_REMAP); |
1606 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_SPI3_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1637 | } |
1607 | } |
1638 | 1608 | ||
1639 | /** |
1609 | /** |
1640 | * @brief Check if SPI3 has been remaped or not |
1610 | * @brief Check if SPI3 has been remaped or not |
1641 | * @rmtoll MAPR SPI3_REMAP LL_GPIO_AF_IsEnabledRemap_SPI3_REMAP |
1611 | * @rmtoll MAPR SPI3_REMAP LL_GPIO_AF_IsEnabledRemap_SPI3_REMAP |
Line 1656... | Line 1626... | ||
1656 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1626 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1657 | * @retval None |
1627 | * @retval None |
1658 | */ |
1628 | */ |
1659 | __STATIC_INLINE void LL_GPIO_AF_Remap_TIM2ITR1_TO_USB(void) |
1629 | __STATIC_INLINE void LL_GPIO_AF_Remap_TIM2ITR1_TO_USB(void) |
1660 | { |
1630 | { |
1661 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM2ITR1_IREMAP); |
1631 | SET_BIT(AFIO->MAPR, AFIO_MAPR_TIM2ITR1_IREMAP | AFIO_MAPR_SWJ_CFG); |
1662 | } |
1632 | } |
1663 | 1633 | ||
1664 | /** |
1634 | /** |
1665 | * @brief Control of TIM2_ITR1 internal mapping. |
1635 | * @brief Control of TIM2_ITR1 internal mapping. |
1666 | * @rmtoll MAPR TIM2ITR1_IREMAP LL_GPIO_AF_Remap_TIM2ITR1_TO_ETH |
1636 | * @rmtoll MAPR TIM2ITR1_IREMAP LL_GPIO_AF_Remap_TIM2ITR1_TO_ETH |
Line 1668... | Line 1638... | ||
1668 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1638 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1669 | * @retval None |
1639 | * @retval None |
1670 | */ |
1640 | */ |
1671 | __STATIC_INLINE void LL_GPIO_AF_Remap_TIM2ITR1_TO_ETH(void) |
1641 | __STATIC_INLINE void LL_GPIO_AF_Remap_TIM2ITR1_TO_ETH(void) |
1672 | { |
1642 | { |
1673 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_TIM2ITR1_IREMAP); |
1643 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_TIM2ITR1_IREMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1674 | } |
1644 | } |
1675 | #endif |
1645 | #endif |
1676 | 1646 | ||
1677 | #if defined(AFIO_MAPR_PTP_PPS_REMAP) |
1647 | #if defined(AFIO_MAPR_PTP_PPS_REMAP) |
1678 | 1648 | ||
Line 1683... | Line 1653... | ||
1683 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1653 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1684 | * @retval None |
1654 | * @retval None |
1685 | */ |
1655 | */ |
1686 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ETH_PTP_PPS(void) |
1656 | __STATIC_INLINE void LL_GPIO_AF_EnableRemap_ETH_PTP_PPS(void) |
1687 | { |
1657 | { |
1688 | SET_BIT(AFIO->MAPR, AFIO_MAPR_PTP_PPS_REMAP); |
1658 | SET_BIT(AFIO->MAPR, AFIO_MAPR_PTP_PPS_REMAP | AFIO_MAPR_SWJ_CFG); |
1689 | } |
1659 | } |
1690 | 1660 | ||
1691 | /** |
1661 | /** |
1692 | * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). |
1662 | * @brief Disable the remapping of ADC2_ETRGREG (ADC 2 External trigger regular conversion). |
1693 | * @rmtoll MAPR PTP_PPS_REMAP LL_GPIO_AF_DisableRemap_ETH_PTP_PPS |
1663 | * @rmtoll MAPR PTP_PPS_REMAP LL_GPIO_AF_DisableRemap_ETH_PTP_PPS |
Line 1695... | Line 1665... | ||
1695 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1665 | * @note This bit is available only in connectivity line devices and is reserved otherwise. |
1696 | * @retval None |
1666 | * @retval None |
1697 | */ |
1667 | */ |
1698 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ETH_PTP_PPS(void) |
1668 | __STATIC_INLINE void LL_GPIO_AF_DisableRemap_ETH_PTP_PPS(void) |
1699 | { |
1669 | { |
1700 | CLEAR_BIT(AFIO->MAPR, AFIO_MAPR_PTP_PPS_REMAP); |
1670 | MODIFY_REG(AFIO->MAPR, (AFIO_MAPR_PTP_PPS_REMAP | AFIO_MAPR_SWJ_CFG), AFIO_MAPR_SWJ_CFG); |
1701 | } |
1671 | } |
1702 | #endif |
1672 | #endif |
1703 | 1673 | ||
1704 | #if defined(AFIO_MAPR2_TIM9_REMAP) |
1674 | #if defined(AFIO_MAPR2_TIM9_REMAP) |
1705 | 1675 | ||
Line 2370... | Line 2340... | ||
2370 | 2340 | ||
2371 | #ifdef __cplusplus |
2341 | #ifdef __cplusplus |
2372 | } |
2342 | } |
2373 | #endif |
2343 | #endif |
2374 | 2344 | ||
2375 | #endif /* __STM32F1xx_LL_GPIO_H */ |
2345 | #endif /* STM32F1xx_LL_GPIO_H */ |
2376 | 2346 | ||
2377 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |
2347 | /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |