EDA365电子论坛网

标题: AM437x的SPI作为主模式,利用linux内核的spi_write和spi_read函数发送命令时,回读... [打印本页]

作者: mengtaiqi    时间: 2020-12-14 13:28
标题: AM437x的SPI作为主模式,利用linux内核的spi_write和spi_read函数发送命令时,回读...
<spi0_pins_default: spi0_pins_default {

3 w/ t/ g. _, x  u+ n' ?. |
                        0x150 ( PIN_INPUT | MUX_MODE0 ) /* (P23) spi0_sclk.spi0_sclk */
                        0x158 ( PIN_INPUT  | MUX_MODE0 ) /* (T21) spi0_d1.spi0_d1 */
                >;
spi部分设置如下:
<&spi0 {
+ K  R5 B0 S) z/ [9 ?( r& I! @6 W        status = "okay";* y# X0 \; Z) V$ W5 d% I
        
4 u4 K, J5 x4 g* k6 C5 J, W# C        pinctrl-names = "default";
+ G: _) m. ]$ T& v% x  @& r0 u" _" n; B        pinctrl-0 = <&spi0_pins_default>;+ x- }5 }+ u' L+ I
        pinctrl-1 = <&spi0_pins_sleep>;3 f" Z0 U9 A8 `# i" O+ O' p* j
        ti,pindir-d0-in-d1-out =<1>; // optional        # S, V. u  Z& {) ?7 J6 c# F
        cs0-gpio = <&gpio0 5 GPIO_ACTIVE_LOW>;                /* Bank 0 pin 5 */! E' p5 i+ ?( g
        /*spidev@0{& `- [* O4 ^  g/ `
                status = "okay";
4 m% j" }- F0 i8 k/ n/ s                compatible = "rohm,dh2228fv";+ P* Q* J4 Q6 g/ u% c  i
                spi-max-frequency = <48000000>;8 S& l# H  Z$ B  p. v9 d
                reg =<0x0>;. i3 A9 A( v) p5 o/ V
                };*/
' \- m- a0 U% N: x5 X) ]; j$ X        adc128@0{
6 t  l% \5 |; ~! o$ s: F4 ~% ~                status = "okay";
+ ~; v/ O' G" J: _                compatible = "ti,adc128s022-0";
0 H4 ]* I3 T; y! R+ C                spi-max-frequency = <3200000>;
6 j+ W; W; X$ s1 k7 M* [0 ?0 I! |                reg = <0>;                        8 F: a8 U. X. ~: Q( D
& t4 w1 Z* Q, L. l
        };
% a! D0 o6 N' A$ A) e8 r……
  H9 G3 W5 i7 \! ~, I>0 e' O. L3 t/ N1 r9 ^# i7 a: V; m

' z$ k4 J. T% u1 I& {6 `

  u) H( y6 u# P& L$ }3 L; t& G. e. ]; z% M

$ g8 a$ E; U1 N7 G- e9 T 5 `6 s# Q- \. r% W9 F4 m

6 H- T0 Y& |( D  P( c1 r! P- S
1 ^+ K2 y# N4 Y" @1 E& y4 M' k$ O, q! |8 d  b
' D  f. u+ b$ p7 f0 o$ E  s( `
$ r( Z" {1 Y; H
& c' X* R! }4 A% p" ^" v
$ T+ _8 t+ R. H( Q4 f$ q
: w- i3 p) p" f% t: h
. ?# O' c8 v! X6 D1 U" J, a7 E

& _/ F4 W5 y0 j( r: G, `' C' I  o: {( d$ Q! w

' a$ N! B& [9 B
作者: yin123    时间: 2020-12-14 14:37
定一个
作者: regngfpcb    时间: 2020-12-14 16:49
你这个名字我喜欢
作者: ubeautqq    时间: 2020-12-14 16:50
首先,IO设置时,除了cs之外,其余管脚设置为input2 D3 Z6 m" v( F9 o( I4 H/ V
其次, ti,pindir-d0-in-d1-out =<1>; 设置的是linuxspi主控的输入输出,不是从设备的,这个要捋清楚
) B8 X. [$ w9 h- F+ [& h再者,spi设备读时,有两个操作spi_write和spi_read,必须两次,否则通道数值会错位
% }" @0 c  P3 q8 ?$ N最后,8通道的adc芯片在操作时,其余管脚不能空置(什么都不接),可以把其余管脚接地。。。




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2