15. SPI接口 回环测试

鲁班猫扩展板板载1个SPI接口:

../_images/show-board-spi.png

SPI接口对应扩展板SPI0,部分原理图如下:

../_images/show-circuit-spi-01.png
../_images/show-circuit-spi-02.png

以鲁班猫1为例,扩展板的SPI0对应鲁班猫的SPI3_M1,执行如下命令修改/boot/uEnv/uEnv.txt,开启相应插件:

../_images/show-circuit-spi-03.png
1
sudo vi /boot/uEnv/uEnv.txt
../_images/show-dtbo14.png

开启插件后,重启开发板。

15.1. python代码测试

python测试代码为:lubancat_rk_code_storage/expansion_board/spi/loop/spi_loop.py

测试前需要将spi_loop.py的spi接口修改为实际的接口:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
'''
filename : spi_loop.py
'''

...

# 申请SPI资源,打开 spidev3.0 控制器,配置SPI主机为工作模式0、工作速率为1MHz
spi = SPI("/dev/spidev3.0", 0, 1000000)

...

将spi_loop.py传到板卡,执行以下命令运行程序:

1
2
# 运行程序
sudo python spi_loop.py

使用杜邦线将MISO和MOSI短接起来,进行回环测试:

../_images/show-operation-coderun-py.png

15.2. c代码测试

C测试代码为:lubancat_rk_code_storage/expansion_board/spi/loop/spi_loop.c

将spi_loop.c传到板卡,执行以下命令运行程序:

1
2
3
4
5
# 编译程序
sudo gcc -o spi_loop spi_loop.c

# 输入参数需修改为实际的spi接口
sudo ./spi_loop /dev/spidev3.0

使用杜邦线将MISO和MOSI短接起来,进行回环测试:

../_images/show-operation-coderun-c.png