TL138_1808_6748-EVM使用GPIO模拟SPI不能是SIMO为低电平 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站
点击跳转“创龙科技服务通”

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:7 {6 V* b1 v5 Q- N4 V1 S
void PSCInit(void); g; |* |, O) H' @
{
4 f) v3 ^- r  L        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);8 t4 }6 p1 E4 |5 ?
}0 E8 n! Q7 z) N

$ e; w) ^7 q9 K) V& ovoid GPIOBankPinMuxSet(void)
6 V4 c9 j$ e, `. g0 Y. z& j1 {4 z0 I7 D{+ k$ n1 d4 ^: N
        // DRDY     ------------ GPIO6[14] -- 111
' P" x9 W8 j8 |  U+ B8 |# b+ M. M        // SPI1_CLK ------------ GPIO2[13] -- 46
, m# |0 x" B1 z* G+ P        // SPI1_SOMI------------ GPIO2[11] -- 44
% o: U2 Z4 F, _% P2 q5 C- m        // SPI1_SIMO------------ GPIO2[10] -- 43
* t/ c5 }# r; Q. |/ w. }* l        // SPI1_CS2 ------------ GPIO1[0]  -- 17
6 |( |0 Q  N( `8 t4 E        // SPI1_CS3 ------------ GPIO1[1]  -- 18# b* s- h6 O' v# A6 E
5 o) o8 W6 i, V  r/ s6 n  d) U
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);+ f; M. L  F6 i$ j, Q; u
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);6 p6 o3 u1 a: T/ @/ o* M  f) R
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);# C6 M) {9 e; S  |- n! [
% Q6 T1 M2 X# X0 r5 L9 x) X7 e$ }
        //DRDY
9 s. M& m' g7 G) n        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY
# ]7 H, X) i2 b3 y, ^3 {& L! X        // CS2,CS3
4 x- Y! U* k$ d8 g  F        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS2
0 v8 L) w/ H' ?2 W; y& Q! e        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
+ C2 s' I# o1 J  h# s3 A/ Q: V        //SIMO
+ D/ @3 m6 O4 U: P, X/ |: l2 q: I        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO. S, {/ u5 Y1 B& D$ c- G! ^, Y5 [8 H/ ~
        //SOMI( M. I& ?! R; m1 }9 S) T
        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI4 J  `- y- t5 s& b( b: X" j& g
        //CLK+ U+ A) M9 R! M6 m0 }8 @0 O
        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK
: |8 b" V& [3 u- x" }/ Z$ v( B5 i* s
        // LDAC
) p7 K+ C0 ?5 N        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK
6 O2 u- h3 M' M3 Y  f0 P) c: H        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
  F$ _8 T+ [+ L1 @3 \  d. m: x8 P: @& Q        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2/ k* Q3 ?! T0 `, V
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3
* A" a  }0 l( Y9 F2 q, g        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY0 o) i6 _0 v9 c/ |( L1 A6 w
}$ }/ J' @6 p3 v- r+ a; K9 a2 M

) Z# J: |1 g6 P$ I# u3 Q& Jint main(void)
' q* z# q: E* N7 n$ d{
& G1 C9 R0 l6 `9 j# o& l( l        // 外设使能1 K* ^" E& O6 W2 Z
        PSCInit();8 q" I& v/ f( _4 G$ }

6 S3 m# \+ Z& T) E2 @3 ^" C   
$ B+ E) Z- U1 N9 ?/ l) B" S    // 管脚复用配置( |8 `8 }& f3 q! o9 x  `& b" R; k1 _
    GPIOBankPinMuxSet();, v6 B  \; b, e0 _( Y# e. U
    for(;;)
9 {6 i& u8 c, F' p2 l+ J        {
8 n5 p5 d8 k  h) d                SET_SCLK();//时钟正常输出
& M' q6 z& J, c( |+ ~& _- A& q                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2# ^, b* d5 v4 }/ \6 p9 B. `
    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
9 _+ F6 B8 R( _4 U# U5 [+ h    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN- y, T5 a2 T7 ?% X% C

- c8 j2 N6 c. y6 ]0 l9 `    delay(20);
9 c# k8 z5 H1 W  b! m9 [, u- i                CLR_SCLK();' W6 \3 V" S' d6 j# G
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3" a! k* T$ p- b  }" u* D2 O
                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3! [# q6 e0 @( `1 h& Y$ ]+ L
                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
6 L8 }1 ~% Y5 ?6 w# C                delay(20);8 ~! w, W& o4 i9 x
        }
2 {; p% {8 h( G5 ?5 a}
/ L  I0 h5 g' L/ i' l; m- h" H
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的6 o, B' P! }  o
回复 支持 反对

使用道具 举报

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

本版积分规则

点击跳转“创龙科技服务通”

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

GMT+8, 2026-3-10 16:43 , Processed in 0.038178 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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