Found no byte from FlexSPI B1 pins

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

Found no byte from FlexSPI B1 pins

1,302 Views
klau
Contributor II

Hi Dear Sir/Madam,

I am new to the FlexSPI, so I started off with "evkmimxrt1020_flexspi_nor_polling_transfer" example code from "SDK_2.x_EVK_MIMXR1020". Before I have done followings, I have pin muxed all pins accordingly.

1) compiled and ran the code on the boot nor flash, it reported vendor id 0x9d.

2) added kFLEXSPI_PortB1 to the function "flexspi_nor_flash_init()",

3) Copied "flexspi_nor_get_vendor_id()" as "B1_flexspi_nor_get_vendor_id()" in which I made a call to kFLEXSPI_PortB1 from main().

4) I do not have a nor flash attached to the FlexSPI_PortB1 yet, and just want to measure signals first. Found no signals at all.


In the code, it outputs 0x9D as vendor id, and where does it come from? Because I do not have a nor flash at FlexSPI_B1 pins yet.

Attached is my code.

Could you give me few hints please?

Thanks,

Kevin

Labels (1)
0 Kudos
6 Replies

1,276 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Kevin, 

I took your example code and when compiling it I noticed the following warning: 

victorjimenez_0-1603237059984.png

I then realized that you didn't declare the function B1_flexspi_nor_get_vendor_id. In your file flexspi_nor_polling_transfer.c, you need to add the following declaration: 

victorjimenez_1-1603237164139.png

Have a great day,

Victor

-------------------------------------------------------------------------------

Note:

- If this post answers your question, please click the "Mark Correct"button. Thank you!

- We are following threads for 7 weeks after the last post, later replies are ignored

Please open a new thread and refer to the closed one, if you have a related question at a later point in time.

-------------------------------------------------------------------------------

0 Kudos

1,267 Views
klau
Contributor II

Hi Victor,

I added the below code to line 38 to the file "flexspi_nor_polling_transfer.c".

"extern status_t B1_flexspi_nor_get_vendor_id(FLEXSPI_Type *base, uint8_t *vendorId);"

That warning you mentioned disappeared.

 

However I still can not get any signals from FlexSPI B1 pins.

 

Could you try my code on the below board to see please?

https://www.nxp.com/design/development-boards/i-mx-evaluation-and-development-boards/i-mx-rt1020-eva...

Thanks,

Kevin

0 Kudos

1,254 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Kevin, 

Just to confirm, now that you declare the function you cannot see the 0x9D anymore, correct? I want to verify this because this was the actual problem that you were facing. The fact that you are not seeing any signals on the FlexSPI B1 pins is normal. You cannot test this without having something physically connected to these pins. 

May I ask, what is the purpose of this test that you are trying to make? Why do you want to measure some signals of somewhere where you don't have anything connected? 

 

Regards,

Victor 

0 Kudos

1,246 Views
klau
Contributor II

hi Victor,

"Just to confirm, now that you declare the function you cannot see the 0x9D anymore, correct?"

No, This is not correct.

There is no flash memory at port B1, there is no signal at port B1, and the processor outputs 0x9D as the vendor ID.

 

"May I ask, what is the purpose of this test that you are trying to make? Why do you want to measure some signals of somewhere where you don't have anything connected? "

This is a kind of SPI interface, I want to look at master clock, master out and chip select before using this interface.

 

Thanks,

Kevin

0 Kudos

1,230 Views
klau
Contributor II

hi Victor,

I have been searching and reading on the FlexSPI for a solution.

I think that I want to enable channel B1 for accessing a NOR data storage, and channel A1 as XIP using a NOR flash.

Is there any hint please?

Thanks,

Kevin

0 Kudos

1,222 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Kevin, 

The RT1020 only has one FlexSPI interface, this makes it harder to achieve what you are trying to do than when you have different FlexSPI interfaces like in the RT1060. The correct way to do it when you only have one FlexSPI instance is to implement the RWW (read while writing). We have an application note about it as well as an example project. 

Link to the application note. 

Link to download the example project. 

 

Regards, 

Victor 

0 Kudos