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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:
) S0 N& g! ]# r( g! q. t4 fvoid PSCInit(void)
( g) T# w/ J8 P* v8 ]) [. H) x0 p) s{7 i- D' S; o; u) c1 f$ ]$ G3 @
        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);6 v" \, B8 M# y. o
}0 h( J, X! }, a$ a
( Q; d5 W: P- K4 n- ]" [$ Z
void GPIOBankPinMuxSet(void)
" o6 J  c' W6 ]# R{9 K% Q5 ]: [) Z5 \! h
        // DRDY     ------------ GPIO6[14] -- 111
+ h! m/ N/ b. |" e, `" A        // SPI1_CLK ------------ GPIO2[13] -- 46. L- o$ C+ }7 ?7 Y% Y* G
        // SPI1_SOMI------------ GPIO2[11] -- 44. m* D1 ~6 P8 D* q0 d" f$ ?1 S
        // SPI1_SIMO------------ GPIO2[10] -- 43
* f. h' ^1 Y* [        // SPI1_CS2 ------------ GPIO1[0]  -- 17% {9 v5 p, M( [$ t# Y$ a
        // SPI1_CS3 ------------ GPIO1[1]  -- 187 J0 {# f8 N4 m  m+ W; ?* _) v, v1 O
# c+ \- y7 \6 Y% M
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);5 k. J5 c. f7 v+ \7 Q
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);
' k( I0 \7 y: T3 N6 {( G        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);
. W: p0 Q$ e0 n* y% e! Y. w
4 y: E8 S( U0 c8 V        //DRDY" P8 i( q2 _8 \  h
        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY* W! e' |, {" }
        // CS2,CS3( l7 V% w1 E* N& O' [+ d. X
        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS2. d" x+ E- F' v" s3 U6 S
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
  n, Z; s( K, m" N1 v! D6 x% d        //SIMO. ]) _) e/ s  w" f' m5 T5 c+ g
        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO
9 ]* V; C- r8 X/ @" \4 v  C4 n        //SOMI
  {! |, q6 ^% S+ U3 U. N        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI. |0 L1 S8 p& Z7 w: _/ ^' K$ Z2 Q% K: p
        //CLK" d+ y: E5 _/ G# ]3 d2 P
        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK4 A5 ~1 y+ _6 w+ m& z

1 k( C+ [! z. y  H% R, M        // LDAC% m  ?0 @- a, q6 ?" g% G. D, e
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK5 Q& G# j2 ]9 U7 C! b: |
        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
- a% k: ^' W" p4 K- n5 I* g        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS26 Q5 p: f% m- S$ D% g8 h5 e
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3% C  i' u: e1 @& `
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY$ S+ ?& p* t# i* A7 T" C0 ?+ ~
}
  z  J3 h1 y$ e! {# o: T0 r- A' p2 A. V2 N  ^7 P( U! d1 G
int main(void)) M/ p* C% u* s2 Y5 H+ t
{
( v% |: O  B# ~- n! l5 Q# M- Q        // 外设使能4 F& ^0 L# P7 l2 H: O# o% I/ W
        PSCInit();
, z% `1 I1 r- T& ], c9 y# w# d1 p0 p5 f" Q$ I3 ^
   & P! G; q% g5 W! P+ w, `) d& u
    // 管脚复用配置
. h; Z/ }% V% d) U) O4 K/ v" S0 x    GPIOBankPinMuxSet();
: v* q/ Y$ D. f! R8 k. v2 T8 M    for(;;)$ U# j& w9 ^1 W) O. [: ~' \
        {
; G# Y  ]7 o" j$ ?$ \                SET_SCLK();//时钟正常输出8 k, `" A9 ^$ T' e6 @/ f
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
: p+ a  w9 L9 ^7 p% O) {  \    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
2 F& m# F4 o; P    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN$ J' W2 _" H3 ?4 `, w
& Y$ \; e3 ]5 }/ y+ y5 j7 r
    delay(20);3 _5 u5 s- h. T; F
                CLR_SCLK();2 {0 d, \/ [% G# m$ P
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
" M: i/ l) q- b7 t/ o                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3
* n: `+ ^. M, _3 i. X                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
* N; s0 F5 |, H                delay(20);$ C" T1 ?8 @" ?' [0 P  k
        }. t: t+ |0 C: O
}
, t  Q& [& u2 ?& `7 }$ F& t+ F
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的
. y) O* m3 _+ y; n% F3 G! T
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-19 04:16 , Processed in 0.038002 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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