更改

跳转至: 导航搜索

Orange Pi 5 Plus

添加668字节, 2023年5月30日 (二) 15:38
40 pin SPI测试
<li><p>由下图可知,Orange Pi 5 Plus可用的SPI为SPI0和SPI4</p>
<p>[[File:media/image294.png|575x137px]]</p></li>
<li><p>SPI0和SPI4在40pin中对应的引脚如下表所示。SPI4_M1和SPI4_M2同一时间只能使用其中一组,不能同时使用,它们都是同一个SPI4,只是接到不同的引脚上去了而已,请不要以为它们是两组不同的SPI总线。</p></li></ol>
{| class="wikitable" style="width:800px;"
|-
|
| '''26号引脚'''
| '''38号引脚'''
| '''<span style="color:#FF0000"></span>'''
|-
| '''dtb o配置'''
| '''spi4 -m2-cs0-spidev'''
|}
</ol>
<ol start="3" style="list-style-type: decimal;">
<li><p>在linux系统中,40 pin中的SPI默认都是关闭的,需要手动打开才能使用。详细步骤如下所示:</p>
<ol style="list-style-type: lower-alpha;">
<li><p>首先运行下'''orangepi-config''',普通用户记得加'''sudo'''权限</p>
{| class="wikitable" style="width:800px;" |-|<p>orangepi@orangepi:~$ '''sudo orangepi-config'''</p>|}</li>
<li><p>然后选择'''System'''</p>
<p>[[File:media/image223.png|413x191px]]</p></li>
</li>
<li><p>重启后进入系统先查看下linux系统中是否存在'''spidevx.x'''的设备节点,如果存在,说明SPI已经设置好了,可以直接使用。</p>
{| class="wikitable" style="width:800px;"
|-
|
<p>orangepi@orangepi:~$ '''ls /dev/spidev*'''</p>
<p>/dev/spidev0.0 /dev/spidev0.1 /dev/spidev4.0 /dev/spidev4.1</p>
|}{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big><p>'''上面是打开spi0-m2-cs0-cs1-spidev和spi4-m1-cs0-cs1-spidev后显示的结果。'''</p></big>|}</li>
<li><p>然后可以使用examples中的'''spidev_test.py'''程序测试下SPI的回环功能,'''spidev_test.py'''程序需要指定下面的两个参数:</p>
<ol style="list-style-type: lower-alpha;">
</li>
<li><p>先不短接SPI的MOSI和MISO两个引脚,运行'''spidev_test.py'''的输出结果如下所示,可以看到 TX 和 RX 的数据不一致</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big><p>'''--channel和--port参数后面的x需要替换为具体SPI的通道号和SPI的端口号。'''</p></big>|}{| class="wikitable" style="width:800px;" |-|
<p>root@orangepi:~/wiringOP-Python# '''cd examples'''</p></li></ol>
Opening device /dev/spidev4.1
TX | FF FF FF FF FF FF '''<span style="color:#FF0000">40 00 00 00 00 95</span>''' FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F0 0D |......@.......…|
RX | FF FF FF FF FF FF '''<span style="color:#FF0000">FF FF FF FF FF FF</span>''' FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF |.............….||}
<ol start="7" style="list-style-type: decimal;">
<li><p>然后使用杜邦线短接SPI的MOSI和MISO两个引脚,再运行'''spidev_test.py'''的输出如下,可以看到发送和接收的数据一样,说明SPI回环测试正常</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big><p>'''--channel和--port参数后面的x需要替换为具体SPI的通道号和SPI的端口号。'''</p></big>|}{| class="wikitable" style="width:800px;" |-|
<p>root@orangepi:~/wiringOP-Python# '''cd examples'''</p></li></ol>
Opening device /dev/spidev4.1
TX | FF FF FF FF FF FF '''<span style="color:#FF0000">40 00 00 00 00 95</span>''' FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F0 0D |......@.......…|
RX | FF FF FF FF FF FF '''<span style="color:#FF0000">40 00 00 00 00 95</span>''' FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F0 0D |......@.......…||}
<span id="pin-i2c测试-1"></span>
 
=== 40 pin I2C测试 ===
8,460
个编辑

导航菜单