sscanf question

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

sscanf question

Jump to solution
561 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
293 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
536 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
365 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
349 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
294 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.