关于全志D1的SPI通讯问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于全志D1的SPI通讯问题相关的知识,希望对你有一定的参考价值。

D1的SPI,空闲的时候是低电平,而且每个字节CLK 有9个脉冲,如图所示: 以下是SPI的配置

如果想将空闲时变成高电平,以及每个字节的CLK设为8个,可以尝试通过一下两个角度去分析。

SPI通讯的问题首先考虑是不是 spi_dbi_enable 的问题,目前 spi_dbi_enable 设置的是1,在将 spi_dbi_enable 设置为0后CLK,MOSI都没有数据了。

其实spi_dbi_enable是spi lcd显示屏专用的驱动,配置两个逻辑不太一样

配置lcd屏幕需要单独写lcd的配置

&lcd_fb0 
	lcd_used = <1>;
	lcd_driver_name = "kld2844b";
	lcd_if = <1>;
	lcd_dbi_if = <4>;
	lcd_data_speed = <60>;
	lcd_spi_bus_num = <1>;
	lcd_x = <240>;
	lcd_y = <320>;
	lcd_width = <60>;
	lcd_height = <95>;
	lcd_pwm_used = <1>;
	lcd_pwm_ch = <7>;
	lcd_pwm_freq = <5000>;
	lcd_pwm_pol = <0>;
	lcd_pixel_fmt = <0>;
	lcd_dbi_fmt = <3>;
	lcd_rgb_order = <0>;
	lcd_frm = <1>;
	lcd_gamma_en = <1>;
	fb_buffer_num = <2>;
	lcd_backlight = <100>;
	lcd_dbi_te = <1>;
	lcd_fps = <60>;
	lcd_gpio_0 = <&pio PC 0 GPIO_ACTIVE_HIGH>;  // reset
	status = "okay";
;

另外检查一下,spi-rx-bus-width=<0x04>是四线spi驱动,需要确认从机是4bit SPI <D0 D1 D2 D3 CLK CS>,否则请改成 spi-rx-bus-width=<0x01>;

以上是关于关于全志D1的SPI通讯问题的主要内容,如果未能解决你的问题,请参考以下文章

全志 Tina Linux LCD显示屏调试指南 支持MIPI DSI RGB LVDS I8080 SPI等接口,开发板支持百问网T113 D1-H哪吒 DongshanPI-D1s V853

SPI通讯协议怎么理解呢。

全志T507实现SPI转CAN-全程详解

单片机的SPI通信怎么用

全志A40i/T3如何通过SPI转CAN

全志A40i/T3如何通过SPI转CAN