TL138_1808_6748-EVM使用GPIO模拟SPI不能是SIMO为低电平 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6170|回复: 1
打印 上一主题 下一主题

TL138_1808_6748-EVM使用GPIO模拟SPI不能是SIMO为低电平

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:
! O8 M8 j/ k1 A5 V' K; }void PSCInit(void)
0 x" Y  ^  ]! d' p! u{% S  K2 I( E5 T) ?/ S2 K8 h
        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
: L, W. ]1 t! S: o% y1 m0 T+ h}
  Z$ Q5 d; P5 a4 ^7 F/ {' ~2 V+ q& `/ a. _
void GPIOBankPinMuxSet(void)
7 n3 U. l$ B. z5 {1 X{: L9 |4 e! @& B: X
        // DRDY     ------------ GPIO6[14] -- 111! F4 \, G6 o# ]  Q' E; `! @
        // SPI1_CLK ------------ GPIO2[13] -- 462 E: n; m) P6 C# R8 `  C
        // SPI1_SOMI------------ GPIO2[11] -- 44, I. G1 ~. B! T' V+ N! w; l
        // SPI1_SIMO------------ GPIO2[10] -- 43
9 N* [& v! C. w" f: w        // SPI1_CS2 ------------ GPIO1[0]  -- 17
4 Q: k- j$ _/ f7 L        // SPI1_CS3 ------------ GPIO1[1]  -- 18# B# X" r3 v7 l& C; X  j
+ g8 X( j* R: s) i
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);
) e$ @, T2 c8 ]5 L' _4 m# N0 U        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);& V9 e/ g1 G4 ~3 v
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);7 v( v! L0 J" Z- @& B2 m  |0 x7 @
* A8 |0 {' x1 H+ g& F4 J8 H4 [
        //DRDY7 x7 p- b4 d! D% G( |6 e. [- Y6 s, i7 t
        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY
/ f; X+ J. C5 z* B% T9 |+ P        // CS2,CS3, R! x6 g) {6 @. _5 Q
        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS2; s: D: Q% Q; T
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
. }/ S3 i9 i5 I( z        //SIMO3 J" q  K, g$ n+ r$ }. s2 d! E
        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO" M& B/ R* Z2 P  e2 ?  v" t4 Z( f) x
        //SOMI
  h6 J& X- k3 u. Z5 y! @4 S  o4 ]        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI
: u4 n, S' i& i! Q" `$ b        //CLK
5 C$ W  `) k3 V+ O+ @* g. v8 H- q        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK
* e2 b3 p9 H% R0 s7 l6 ?2 f! y' F
2 m% P0 Z1 Y6 w# b# A' A        // LDAC
4 G5 ^8 ~/ @2 v. F        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK
& {) ]% E7 U5 H8 S) L        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
9 i4 g# ]% P" f) w' y, ^! [        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2( \% |4 p, r7 m! i5 M5 x/ c
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3
4 _* ?! a, r7 B6 L        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY6 F- z+ L& h2 _
}4 m4 W* R. y0 W. C% \& \* }8 g. w
0 H5 [: p- U9 [+ K1 g6 `- g# l
int main(void)$ T+ `$ j" f- C7 e3 v8 Q# A. B
{% x/ a- l  q. z
        // 外设使能: E+ M8 W2 V" ~2 W  K8 O7 ^$ H0 C8 p
        PSCInit();% t5 r; v! _* `8 Y
7 Z) o: \8 @! S- B) J$ P- A# e
   
8 L& _" B' q! u: i  @# E5 h$ l  B    // 管脚复用配置9 S( \) p" q$ E7 m& T& W, g, s% k
    GPIOBankPinMuxSet();
( V& Y* Q/ Y& f' c% F# }  e  E    for(;;)3 a1 [3 j% p! Y& S& m
        {: N7 [1 E! s6 |7 g( v+ _
                SET_SCLK();//时钟正常输出% R, t9 F5 C2 P) P% L5 m# m
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
  h1 a7 R& M! C    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
& }! S! j' T+ K    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN- j9 Y2 e/ D0 ~7 k0 C& E* t  G% D

/ [: M! D1 o3 v. o: x& h* S    delay(20);
9 e' r! ]+ G  C' r. y6 P' t                CLR_SCLK();, p9 L& g+ V' [: d6 x- n# Z" X
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
) Q6 d9 [! M+ O3 }* ~2 j' v- r                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3
- h* ?; T& g0 L- _                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
# m( I4 T3 r( K8 E) V4 v                delay(20);
$ [( P( @  j9 {- b+ b& G) y        }/ J: M  v2 @0 n" p1 ?, O
}
1 g7 r4 e" J: n. ]) ^) j
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的
# S. n% I* c" a
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2026-1-10 08:58 , Processed in 0.038130 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表