sscanf question

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

sscanf question

Jump to solution
563 Views
asier
Contributor III

Hi,

I'm working with LPC804 and MCUXpresso IDE.

I'm trying to do work sscanf but no way.

My example is the following:

char buff[] = "12";
int i;
sscanf(buff,"%d",&i);

if (i == 12){
GPIO_PinWrite(BOARD_INITPINS_BLOQ_GPIO,BOARD_INITPINS_BLOQ_PORT,BOARD_INITPINS_BLOQ_PIN, 1);
}

Any idea what is wrong? 

Thanks,

Asier.

0 Kudos
Reply
1 Solution
295 Views
asier
Contributor III

Hi HangZhang,

My problem was that I was doing uint16_t i; instead int i;.

I don't know why but when using uint16_t i; sscanf stucks.

Thank you for your time,

BR

Asier.

View solution in original post

4 Replies
538 Views
HangZhang
NXP Employee
NXP Employee

Hi @asier 

When you use this pin, please initialize the configuration for this pin.

 

Hope this will help you.

BR

Hang

0 Kudos
Reply
367 Views
asier
Contributor III

Hi HangZhang,

The pin is correctly initialized and it works fine.

The issue is not with "GPIO_PinWrite" instruction, but with "sscanf".

"i" does not get 12 value after executing "sscanf(buff,"%d",&i);" code line.

What is wrong when using sscanf in our example?

Thank you,

Asier.

0 Kudos
Reply
351 Views
HangZhang
NXP Employee
NXP Employee

Hi @asier 

I refer to your code, i can get 12 value after executing "sscanf(buff,"%d",&i);" code line.

HangZhang_0-1724726855044.png

I share my code with you.

BR

Hang

0 Kudos
Reply
296 Views
asier
Contributor III

Hi HangZhang,

My problem was that I was doing uint16_t i; instead int i;.

I don't know why but when using uint16_t i; sscanf stucks.

Thank you for your time,

BR

Asier.