我按照本用户指南进行操作、并尝试测试 SPI 函数。
3.2.4.12.SPI–适用于 AM335X 的 Processor SDK Linux 文档
如下图所示、SPI 器件树添加在文件"arch/arm/boot/dts/am335x-boneback.dts"中。
-------------------------------------------------------------------------------------------------------------------------------------------
SPI1{&S}
状态="可以";
pinctrl-names ="默认";
pinctrl-0 =<&SPI1_PINS_s0>;
spidev@0{
SPI-max-frequency =<24000000>;
寄存器=<0>;
兼容="Rohm、dh2228fv";
};
};
-------------------------------------------------------------------------------------------------------------------------------------------
如下图所示、将 SPI 器件树/pinmux 添加到文件"arch/arm/boot/dts/am335x-boneback-common.dtsi"中。
-------------------------------------------------------------------------------------------------------------------------------------------
SPI1_PINS_s0:pinmux_SPI1_pins{
PINCCTRL-SINGLE、PINS =<
AM33XX_PADCONF (AM335x_PIN_SPI0_SCLK、PIN_INPUT、MUX_MODE0)
AM33XX_PADCONF (AM335x_PIN_SPI0_D0、PIN_OUTPUT_PULLUP、MUX_MODE0)
AM33XX_PADCONF (AM335x_PIN_SPI0_D1、PIN_INPUT、MUX_MODE0)
AM33XX_PADCONF (AM335x_PIN_SPI0_CS0、PIN_OUTPUT、MUX_MODE0)
>;
};
-------------------------------------------------------------------------------------------------------------------------------------------
在我将新的 AM335x-boneback.dtb 复制到 B-Bone 并运行 spidev_test.c 后。
终端显示消息如下所示
-------------------------------------------------------------------------------------------------------------------------------------------
root@am335x-evm:/bin#./sidev_test.out
增量 SPI 模式:0x0
每字位数:8
最大速度:500000Hz (500KHz)
-------------------------------------------------------------------------------------------------------------------------------------------
但 spi0_SCLK 不输出时钟信号
如何解决此问题