imx8qxp spi 测试问题

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

imx8qxp spi 测试问题

2,589 Views
475143463
Contributor III

imx8qxp-mek开发板 跳接R1222,R1223,R1224,R1225,四颗电阻,把SPI0接到基本的J26端口。把J26端口的MISO和MOSI外部短接,使用spidev_test.c做自发自收测试。结果不正确。

命令行输入和输出如下:

root@imx8qxpmek:~# ./spitest -D /dev/spidev0.0 -p "123\xde\xad" -v -O -H
spi mode: 0x3
bits per word: 8
max speed: 5000000 Hz (5000 KHz)
TX | 31 32 33 DE AD __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | 123蕲
RX | 03 83 3C 8C 0E __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | .

root@imx8qxpmek:~# ./spitest -D /dev/spidev0.0 -p "123\xde\xad" -v -O -H
spi mode: 0x3
bits per word: 8
max speed: 5000000 Hz (5000 KHz)
TX | 31 32 33 DE AD __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | 123蕲
RX | 03 83 3C 8C 0E __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | .

root@imx8qxpmek:~# ./spitest -D /dev/spidev0.0 -p "123\xde\xad" -v -O -H
spi mode: 0x3
bits per word: 8
max speed: 5000000 Hz (5000 KHz)
TX | 31 32 33 DE AD __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | 123蕲
RX | C3 87 3C 8C 0C __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | 脟<

root@imx8qxpmek:~# ./spitest -D /dev/spidev0.0 -p "123\xde\xad" -v -O -H
spi mode: 0x3
bits per word: 8
max speed: 5000000 Hz (5000 KHz)
TX | 31 32 33 DE AD __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | 123蕲
RX | 06 87 3C 8C 0E __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  | .

dts配置如下:

&iomuxc {
 imx8qxp-mek {
  pinctrl_lpspi0: lpspi0grp {
   fsl,pins = <
    SC_P_SPI0_SCK_ADMA_SPI0_SCK  0x0600004c
    SC_P_SPI0_SDO_ADMA_SPI0_SDO  0x0600004c
    SC_P_SPI0_SDI_ADMA_SPI0_SDI  0x0600004c
    SC_P_SPI0_CS0_ADMA_SPI0_CS0   0x0600004c
   >;
  };
 };
};

&lpspi0 {
 #address-cells = <1>;
 #size-cells = <0>;
 fsl,spi-num-chipselects = <1>;
 pinctrl-names = "default";
 pinctrl-0 = <&pinctrl_lpspi0 >;
 status = "okay";
 spidev0: spi@0 {
  reg = <0>;
  compatible = "rohm,dh2228fv";
  spi-max-frequency = <5000000>;
 };
};
Tags (1)
0 Kudos
2 Replies

2,447 Views
igorpadykov
NXP Employee
NXP Employee

Hi 笑 独孤

one can try attached patches, run spidev_test to send data to MOSI -> MISO.  
 root@imx8qxpmek:~# ./spidev_test -D /dev/spidev0.0 -p hello -v
spi mode: 0x0[ 114.573827] fsl_lpspi_transfer_one

bits per word: 8
max speed: 500000 Hz (500 KHz)
TX | 68 65 6C 6C 6F __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ | hello
RX | 68 65 6C 6C 6F __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ | hello

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

2,447 Views
475143463
Contributor III

直接用导线把MISO和MOSI短接,使用spidev_test.c测试自发自收不正常。但是用一个电阻吧MISO和MOSI短接,在测试自发自收是正常的。

这是为什么呢?

还有就是imx8qxp-mek开发板的IO输出是1.8V。是不是imx8qxp这个CPU的输入/输出电平就是1.8V?

0 Kudos