SPI for NBP8

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

SPI for NBP8

跳至解决方案
5,753 次查看
CaoRq
Contributor II

Hi,NXP

   I need to use pressure sensor NBP8,  but when I try to operate it by spi, I meet some problems

   when I need external host  waking up the NBP8 ,should I pull up  CS_B/WAKE_UP pin then pull down it again after READY/INT pin pull up? if I do it , the response for NBP8 is always 0x1002.

   if I don't pull up and pull down CS_B/WAKE_UP pin ,when I try to operate register by spi , the response is always 0x2002.

   can you tell me how to solve it ?

   Thank you in advance

0 项奖励
1 解答
5,726 次查看
CaoRq
Contributor II

Thank you for you support .

    I find a solution ,before I transfer a command(2 bytes) , I need to pull up and pull down the CS_B pin, then I can get the correct response.  I follow the sequence shown in the image below

 

RunqiangCao_0-1694508252476.pngRunqiangCao_0-1694508252476.png

    I wonder whether I can transfer many commands without pulling up and pulling down the CS_B pin? 

在原帖中查看解决方案

4 回复数
5,312 次查看
Mason2
Contributor I

Mason2_0-1705485274021.pngMason2_0-1705485274021.png

Mason2_0-1705486306444.pngMason2_0-1705486306444.png

 

0 项奖励
5,735 次查看
JozefKozon
NXP TechSupport
NXP TechSupport

Hi Cao,

please share a scope of the SPI signal when you try communicate with the NBP8. The CS_B pin must be low, when you want to wake up the NBP8 or you want to communicate with. 

JozefKozon_0-1694507096672.pngJozefKozon_0-1694507096672.png

With Best Regards,

Jozef

5,727 次查看
CaoRq
Contributor II

Thank you for you support .

    I find a solution ,before I transfer a command(2 bytes) , I need to pull up and pull down the CS_B pin, then I can get the correct response.  I follow the sequence shown in the image below

 

RunqiangCao_0-1694508252476.pngRunqiangCao_0-1694508252476.png

    I wonder whether I can transfer many commands without pulling up and pulling down the CS_B pin? 

3,971 次查看
BillWen
Contributor III
Hi CaoRq:
I have a same problem with you,
if I pull up CS_B/WAKE_UP pin then pull down it again after READY/INT pin pull up, the response for NBP8 is always 0x1002. If not, I always get 0x2002.
The following is my code
void NBP8_WakeupAndCheck(void)
{
uint8_t regval = STD_LOW;
uint8_t result;
uint16_t TxChBuf[1];
uint16_t RxChBuf[1];

Dio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3, STD_LOW);

regval = Dio_ReadChannel(DioConf_DioChannel_PS_READY);
while(regval == 0)
{
Printf("DioConf_DioChannel_PS_READY = %d\r\n", regval);
}
Printf("DioConf_DioChannel_PS_READY0 = %d\r\n", regval);

Dio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3, STD_HIGH);

//Osif_Wait(100);

Dio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3, STD_LOW);
//Osif_Wait(10);

//TxChBuf[0] = NBP8_FW_DER;
TxChBuf[0] = NBP8_SPIOPS;

Spi_SetupEB(SpiConf_SpiChannel_SpiChannel_PressureSensor, TxChBuf, RxChBuf, sizeof(TxChBuf));
result = Spi_SyncTransmit(SpiConf_SpiSequence_SpiSequence_PressureSensor);
//Osif_Wait(10);
Dio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3, STD_HIGH);

if (result == E_OK) {
Printf("RxChBuf[0] = 0x%x\r\n", RxChBuf[0]);
//Printf("RxChBuf[1] = 0x%x\r\n", RxChBuf[1]);
}
}
Do you know how to fix this?

Thanks
BR, BillWen
0 项奖励
%3CLINGO-SUB%20id%3D%22lingo-sub-1720864%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E7%94%A8%E4%BA%8E%20NBP8%20%E7%9A%84%20SPI%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1720864%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%EF%BC%8C%E6%81%A9%E6%99%BA%E6%B5%A6%3C%2FP%3E%3CP%3E%20%20%20%E6%88%91%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E5%8E%8B%E5%8A%9B%E4%BC%A0%E6%84%9F%E5%99%A8%20NBP8%EF%BC%8C%E4%BD%86%E5%BD%93%E6%88%91%E5%B0%9D%E8%AF%95%E7%94%A8%20spi%20%E6%93%8D%E4%BD%9C%E5%AE%83%E6%97%B6%EF%BC%8C%E9%81%87%E5%88%B0%E4%BA%86%E4%B8%80%E4%BA%9B%E9%97%AE%E9%A2%98%3C%2FP%3E%3CP%3E%20%20%20%E5%BD%93%E6%88%91%E9%9C%80%E8%A6%81%E5%A4%96%E9%83%A8%E4%B8%BB%E6%9C%BA%E5%94%A4%E9%86%92%20NBP8%20%E6%97%B6%EF%BC%8C%E6%98%AF%E5%90%A6%E5%BA%94%E8%AF%A5%E5%85%88%E5%B0%86%20CS_B%2FWAKE_UP%20%E5%BC%95%E8%84%9A%E4%B8%8A%E6%8B%89%EF%BC%8C%E7%84%B6%E5%90%8E%E5%9C%A8%E5%B0%86%20READY%2FINT%20%E5%BC%95%E8%84%9A%E4%B8%8A%E6%8B%89%E5%90%8E%E5%86%8D%E5%B0%86%E5%85%B6%E4%B8%8B%E6%8B%89%EF%BC%9F%3C%2FP%3E%3CP%3E%20%20%20%E5%A6%82%E6%9E%9C%E6%88%91%E4%B8%8D%E4%B8%8A%E6%8B%89%E6%88%96%E4%B8%8B%E6%8B%89%20CS_B%2FWAKE_UP%20%E5%BC%95%E8%84%9A%EF%BC%8C%E5%BD%93%E6%88%91%E5%B0%9D%E8%AF%95%E7%94%A8%20spi%20%E6%93%8D%E4%BD%9C%E5%AF%84%E5%AD%98%E5%99%A8%E6%97%B6%EF%BC%8C%E5%93%8D%E5%BA%94%E6%80%BB%E6%98%AF%200x2002%E3%80%82%3C%2FP%3E%3CP%3E%20%20%20%E4%BD%A0%E8%83%BD%E5%91%8A%E8%AF%89%E6%88%91%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E5%90%97%EF%BC%9F%3C%2FP%3E%3CP%3E%20%20%20%E6%8F%90%E5%89%8D%E6%84%9F%E8%B0%A2%E6%82%A8%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2126724%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20SPI%20for%20NBP8%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2126724%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EHi%20CaoRq%3A%3CBR%20%2F%3E%E6%88%91%E4%B9%9F%E9%81%87%E5%88%B0%E4%BA%86%E5%90%8C%E6%A0%B7%E7%9A%84%E9%97%AE%E9%A2%98%EF%BC%8C%3CBR%20%2F%3E%EF%BC%8C%E5%A6%82%E6%9E%9C%E6%88%91%E5%B0%86%20CS_B%2FWAKE_UP%20%E5%BC%95%E8%84%9A%E4%B8%8A%E6%8B%89%EF%BC%8C%E7%84%B6%E5%90%8E%E5%9C%A8%20READY%2FINT%20%E5%BC%95%E8%84%9A%E4%B8%8A%E6%8B%89%E5%90%8E%E5%86%8D%E5%B0%86%E5%85%B6%E4%B8%8B%E6%8B%89%EF%BC%8CNBP8%20%E7%9A%84%E5%93%8D%E5%BA%94%E6%80%BB%E6%98%AF%200x1002%E3%80%82%E5%A6%82%E6%9E%9C%E6%B2%A1%E6%9C%89%EF%BC%8C%E6%88%91%E6%80%BB%E6%98%AF%E5%BE%97%E5%88%B0%200x2002%E3%80%82%3CBR%20%2F%3E%E4%BB%A5%E4%B8%8B%E6%98%AF%E6%88%91%E7%9A%84%E4%BB%A3%E7%A0%81%3CBR%20%2F%3Evoid%20NBP8_WakeupAndCheck(void)%3CBR%20%2F%3E%7B%3CBR%20%2F%3Euint8_t%20regval%20%3D%20STD_LOW%EF%BC%9B%3CBR%20%2F%3Euint8_t%20result%EF%BC%9B%3CBR%20%2F%3Euint16_t%20TxChBuf%5B1%5D%EF%BC%9B%3CBR%20%2F%3Euint16_t%20RxChBuf%5B1%5D%3B%3CBR%20%2F%3E%3CBR%20%2F%3EDio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3%2C%20STD_LOW)%3B%3CBR%20%2F%3E%3CBR%20%2F%3Eregval%20%3D%20Dio_ReadChannel(DioConf_DioChannel_PS_READY)%EF%BC%9B%3CBR%20%2F%3Ewhile(regval%20%3D%3D%200)%3CBR%20%2F%3E%7B%3CBR%20%2F%3EPrintf(%22DioConf_DioChannel_PS_READY%20%3D%25d%5Cr%5Cn%22%2C%20regval)%3B%3CBR%20%2F%3E%7D%3CBR%20%2F%3EPrintf(%22DioConf_DioChannel_PS_READY0%20%3D%25d%5Cr%5Cn%22%2C%20regval)%EF%BC%9B%3CBR%20%2F%3E%3CBR%20%2F%3EDio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3%2C%20STD_HIGH)%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%2F%2FOsif_Wait(100)%EF%BC%9B%3CBR%20%2F%3E%3CBR%20%2F%3EDio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3%2C%20STD_LOW)%3B%3CBR%20%2F%3E%2F%2FOsif_Wait(10)%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%2F%2FTxChBuf%5B0%5D%20%3D%20NBP8_FW_DER%EF%BC%9B%3CBR%20%2F%3ETxChBuf%5B0%5D%20%3D%20NBP8_SPIOPS%3B%3CBR%20%2F%3E%3CBR%20%2F%3ESpi_SetupEB(SpiConf_SpiChannel_SpiChannel_PressureSensor%2CTxChBuf%2CRxChBuf%2Csizeof(TxChBuf))%EF%BC%9B%3CBR%20%2F%3Eresult%20%3D%20Spi_SyncTransmit(SpiConf_SpiSequence_SpiSequence_PressureSensor)%3B%3CBR%20%2F%3E%2F%2FOsif_Wait(10)%3B%3CBR%20%2F%3EDio_WriteChannel(DioConf_DioChannel_LPSPI5_PCS3%2C%20STD_HIGH)%EF%BC%9B%3CBR%20%2F%3E%3CBR%20%2F%3Eif%20(result%20%3D%3D%20E_OK)%20%7B%3CBR%20%2F%3EPrintf(%22RxChBuf%5B0%5D%20%3D%200x%25x%5Cr%5Cn%22%2C%20RxChBuf%5B0%5D)%3B%3CBR%20%2F%3E%2F%2FPrintf(%22RxChBuf%5B1%5D%20%3D%200x%25x%5Cr%5Cn%2C%20RxChBuf%5B1%5D)%3B%3CBR%20%2F%3E%7D%3CBR%20%2F%3E%7D%3CBR%20%2F%3E%E6%82%A8%E7%9F%A5%E9%81%93%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%E8%BF%99%E4%B8%AA%E9%97%AE%E9%A2%98%E5%90%97%EF%BC%9F%3CBR%20%2F%3E%3CBR%20%2F%3E%E8%B0%A2%E8%B0%A2%3CBR%20%2F%3EBR%2C%20BillWen%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1721020%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20SPI%20for%20NBP8%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1721020%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E6%84%9F%E8%B0%A2%E6%82%A8%E7%9A%84%E6%94%AF%E6%8C%81%E3%80%82%3C%2FP%3E%3CP%3E%E6%88%91%E6%89%BE%E5%88%B0%E4%BA%86%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%EF%BC%8C%E5%9C%A8%E6%88%91%E4%BC%A0%E8%BE%93%E5%91%BD%E4%BB%A4%EF%BC%882%20%E5%AD%97%E8%8A%82%EF%BC%89%E4%B9%8B%E5%89%8D%EF%BC%8C%E6%88%91%E9%9C%80%E8%A6%81%E5%90%91%E4%B8%8A%E6%8B%89%E5%87%BA%E5%B9%B6%E6%8B%89%E4%B8%8B%20CS_B%20%E5%BC%95%E8%84%9A%EF%BC%8C%E7%84%B6%E5%90%8E%E6%88%91%E6%89%8D%E8%83%BD%E5%BE%97%E5%88%B0%E6%AD%A3%E7%A1%AE%E7%9A%84%E5%93%8D%E5%BA%94%E3%80%82%E6%88%91%E6%8C%89%E7%85%A7%E4%B8%8B%E5%9B%BE%E6%89%80%E7%A4%BA%E7%9A%84%E9%A1%BA%E5%BA%8F%E6%93%8D%E4%BD%9C%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22RunqiangCao_0-1694508252476.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22RunqiangCao_0-1694508252476.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F240584iDE38037307E7612A%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22RunqiangCao_0-1694508252476.png%22%20alt%3D%22RunqiangCao_0-1694508252476.png%22%20%2F%3E%3Cspan%20class%3D%22lia-inline-image-caption%22%20onclick%3D%22event.preventDefault()%3B%22%3ERunqiangCao_0-1694508252476.png%3C%2Fspan%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%20%20%20%20%E6%88%91%E6%83%B3%E7%9F%A5%E9%81%93%EF%BC%8C%E5%9C%A8%E4%B8%8D%E4%B8%8A%E6%8B%89%E5%92%8C%E4%B8%8B%E6%8B%89%20CS_B%20%E5%BC%95%E8%84%9A%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%EF%BC%8C%E8%83%BD%E5%90%A6%E4%BC%A0%E8%BE%93%E8%AE%B8%E5%A4%9A%E5%91%BD%E4%BB%A4%EF%BC%9F%20%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1720992%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20SPI%20for%20NBP8%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1720992%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%97%A8%EF%BC%8CCao%E3%80%81%3C%2FP%3E%0A%3CP%3E%E8%AF%B7%E5%88%86%E4%BA%AB%E6%82%A8%E5%B0%9D%E8%AF%95%E4%B8%8E%20NBP8%20%E9%80%9A%E4%BF%A1%E6%97%B6%20SPI%20%E4%BF%A1%E5%8F%B7%E7%9A%84%E7%A4%BA%E6%B3%A2%E5%99%A8%E3%80%82%E5%BD%93%E8%A6%81%E5%94%A4%E9%86%92%20NBP8%20%E6%88%96%E4%B8%8E%20NBP8%20%E9%80%9A%E4%BF%A1%E6%97%B6%EF%BC%8CCS_B%20%E5%BC%95%E8%84%9A%E5%BF%85%E9%A1%BB%E4%B8%BA%E4%BD%8E%E7%94%B5%E5%B9%B3%E3%80%82%20%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22JozefKozon_0-1694507096672.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22JozefKozon_0-1694507096672.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F240578i7071D9D2C4CCD18E%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22JozefKozon_0-1694507096672.png%22%20alt%3D%22JozefKozon_0-1694507096672.png%22%20%2F%3E%3Cspan%20class%3D%22lia-inline-image-caption%22%20onclick%3D%22event.preventDefault()%3B%22%3EJozefKozon_0-1694507096672.png%3C%2Fspan%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%E8%87%B4%E4%BB%A5%E6%9C%80%E5%B4%87%E9%AB%98%E7%9A%84%E6%95%AC%E6%84%8F%3C%2FP%3E%0A%3CP%3E%E7%BA%A6%E7%91%9F%E5%A4%AB%3C%2FP%3E%3C%2FLINGO-BODY%3E