cancel
Showing results for 
Search instead for 
Did you mean: 

Alternative Functions and Additional Functions

Pavan_LohiaGroup
Associate III

STM32L072 has USB as Additional Functions instead of an Alternative Function

Though in one of my Earlier Post It was briefly explained, It felt to have a Dedicated Post in General Thereby this Post to Better Understand the Difference and Way of Working with them.

  • What Exactly are the Difference Between Alternative Functions and Additional Functions?

Pavan_LohiaGroup_0-1724038285746.png

I found this in one of the Documentations, But Can Someone Elaborate this to me?

  • Doesn't those Peripherals which are Additional Functions Such as in L072 for USB, Need any GPIO Initialization? If they So How should they be configured?
  • Would These Peripherals work Just by Enabling them via Clock? If not what are the other Parameters.

 

1 ACCEPTED SOLUTION

Accepted Solutions
KnarfB
Principal III

If you look at figure "Basic structure of an I/O port bit" in the ref.man, you see that alternate functions use the digital IO path: CMOS inverter for output, schmitt-trigger for input. In constrast, the digital paths are bypassed for additional functions, sometimes also called analog functions in the documents. This is needed for IO with special electrical requirements. Examples are ADC, DAC, ... and USB DP and DN pins, see ref.man  31.4.1 Description of USB blocks.

For code examples check out STM32CubeL0/Projects/NUCLEO-L053R8/Applications/USB_Device at master · STMicroelectronics/STM32CubeL0 (github.com)

hth

KnarfB

View solution in original post

1 REPLY 1
KnarfB
Principal III

If you look at figure "Basic structure of an I/O port bit" in the ref.man, you see that alternate functions use the digital IO path: CMOS inverter for output, schmitt-trigger for input. In constrast, the digital paths are bypassed for additional functions, sometimes also called analog functions in the documents. This is needed for IO with special electrical requirements. Examples are ADC, DAC, ... and USB DP and DN pins, see ref.man  31.4.1 Description of USB blocks.

For code examples check out STM32CubeL0/Projects/NUCLEO-L053R8/Applications/USB_Device at master · STMicroelectronics/STM32CubeL0 (github.com)

hth

KnarfB