cancel
Showing results for 
Search instead for 
Did you mean: 

GPIOs Input detecting issue on port M

Kaushik1
Associate III
We have implemented a total of five push buttons—two connected to Port E and three connected to Port M. 
The GPIOs of Port E are functioning correctly. However, the GPIOs of the push buttons on Port M are not being detected properly by the MCU.
Even when the switches are unpressed, the MCU is detecting a Pressed condition.
PORT M GPIO Pin out: PM1, PM2, PM3.
MCU part: #STM32H7R7L8H6H
I have checked  push button from hardware side, its working fine.
Attached example schematic snapshot of push button.
 
Could you please advise if there are any specific settings or configurations required for Port M GPIO to function correctly?
Push button GPIO.pngPush button logic.png
1 ACCEPTED SOLUTION

Accepted Solutions

@Kaushik1 wrote:

Where i can find UCPD_DBDIS option. Can you please know the location of that.


It tells you in the screenshot which @AScha.3 posted:

AndrewNeil_0-1759739614263.png

 

PS:


@Kaushik1 wrote:

I am new to use STM32.


Your starting point should always be the Product Page for the particular STM32 - in this case:

https://www.st.com/en/microcontrollers-microprocessors/stm32h7r7l8.html

As well as the datasheet, you will need the Reference Manual - that's the one which describes the operation of all the peripherals, the registers, etc.

You can find this - and lots of other documents - on the 'Documentation' tab of the Product Page:

https://www.st.com/en/microcontrollers-microprocessors/stm32h7r7l8.html#documentation 

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

View solution in original post

14 REPLIES 14
AScha.3
Super User

Some pins have alternative functions, see ds pin description.

So maybe you "found out" this on PMx : 

AScha3_0-1759735945664.png

---> disable it : set UCPD_DBDIS

If you feel a post has answered your question, please click "Accept as Solution".

Thanks Ascha,

Where i can find UCPD_DBDIS option. Can you please know the location of that.

I am new to use STM32.


@Kaushik1 wrote:

Where i can find UCPD_DBDIS option. Can you please know the location of that.


It tells you in the screenshot which @AScha.3 posted:

AndrewNeil_0-1759739614263.png

 

PS:


@Kaushik1 wrote:

I am new to use STM32.


Your starting point should always be the Product Page for the particular STM32 - in this case:

https://www.st.com/en/microcontrollers-microprocessors/stm32h7r7l8.html

As well as the datasheet, you will need the Reference Manual - that's the one which describes the operation of all the peripherals, the registers, etc.

You can find this - and lots of other documents - on the 'Documentation' tab of the Product Page:

https://www.st.com/en/microcontrollers-microprocessors/stm32h7r7l8.html#documentation 

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

Thanks, Yes i see the screenshot, but i am not able find in .IOC file and main.c file.

So you mean where to find it in CubeMX ?

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

Yes, I am using STM32CubeIDE Can this be disabled from the .IOC file?
If it’s not possible to do so in the .IOC file, please guide me on where I can find it in the main.c file so I can make the changes correctly.

See UCPD1 under 'Connectivity' ?

AndrewNeil_0-1759740715115.png

 

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

Thanks, i have find it, i enable UCPD1 in a application, Now it is conflict between UCPD1 and GPIO PM1.

PM1 is configured as push button input logic. please guide me.


@Kaushik1 wrote:

 i enable UCPD1


The datasheet extract said you need to disable it?

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.