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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:  _* o1 J8 f* m: o( c& v  I! b* ~2 v
void PSCInit(void)6 e, M; A  D5 R6 @
{7 _$ W. s+ L( Q6 k: v8 n( ~
        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);7 a: K1 G" n0 n6 O8 V" w7 D, a
}
/ h+ T! K+ X% N; `" ]
6 S$ Y" U  @; ~: ]/ h; L( svoid GPIOBankPinMuxSet(void)
% X/ d% |. Q1 P' e/ R' s( h{
; w5 t3 b$ B. O8 K/ u0 A3 m% i( m$ j1 \        // DRDY     ------------ GPIO6[14] -- 111
/ t0 r( }) A4 k$ N( O3 W: U        // SPI1_CLK ------------ GPIO2[13] -- 46
# }$ j  \7 U, {+ D' k+ Q2 \5 E7 q8 B2 q        // SPI1_SOMI------------ GPIO2[11] -- 44
0 a) _) |$ P2 Q2 {( ?        // SPI1_SIMO------------ GPIO2[10] -- 43
2 ^1 b. L: h/ E; l7 z        // SPI1_CS2 ------------ GPIO1[0]  -- 17. D0 w  i) m- t) S6 q
        // SPI1_CS3 ------------ GPIO1[1]  -- 180 d. |+ z6 Q6 Y: I1 J9 T

0 |" a) a. ~5 I; q        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);" P# p. k$ `: p0 p# R9 F
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);
9 U  }) g* U1 O5 k- y, q        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);
8 k1 r2 ~) F8 I0 F& V! D) @2 \% y% E+ h0 n
        //DRDY
4 |: J. d& g+ }: O        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY
3 o0 m: w5 p0 O7 i) B        // CS2,CS3
$ t' l0 |( L+ v7 a; Q0 Z        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS2" V+ C5 X% x& ?+ H& Z+ k
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
& P2 b- H! T, O$ |; D        //SIMO
+ P; S3 V; [2 k9 E6 P. L" B' ^        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO
- b) ^4 ]  {  p        //SOMI4 I$ Z( t6 g' q
        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI
! U1 p3 ~6 k1 x9 z; N1 a* A5 U) L' g        //CLK- d% @7 ^& D+ p4 ]) M( o* @
        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK4 z. ?4 D! i# p2 T( r# O- Z

* w* A8 {* B* [% h/ j# Q' {        // LDAC& u7 N4 n# c) K; h* z/ v
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK; j( D# W$ f: t& A* w  w
        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN7 U' Y5 a  ]: I, w# `" f; }9 X
        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
1 M) l8 }8 M( ~- c        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS30 d, w2 K" U$ {: B  H7 Y% E
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY5 A5 W8 Q* M/ \7 d- l0 v) f5 y
}. [4 v& y/ m, ~* O1 g- O& u1 Z6 t1 W
2 q9 g7 T8 u/ A* Z! l: `2 M1 Z0 n
int main(void)! Y+ ^# u8 @1 j1 t% R  b. A1 }
{
7 Z* o# O: q. E' }$ U" P- R        // 外设使能: z' w2 W) {5 R" g
        PSCInit();
' b* t& m8 v9 q9 k. U; Z8 J; t3 n) Q% K8 v& [! G
   
/ [/ J3 T' t# k    // 管脚复用配置1 `0 s. ^* u, Z
    GPIOBankPinMuxSet();: A3 b( g$ y' D$ ?( ^: g& T
    for(;;)
$ y" E1 @$ h0 u1 L" J        {+ ~6 w5 @4 |# ?- A
                SET_SCLK();//时钟正常输出
$ N  u" E- S3 O! |                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
8 F) e3 U3 t1 _& K" ?    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3( _0 \2 ^! @( I) c# o$ Q$ V" m
    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN) z" [' F& n  q; @" I6 B

9 m0 {0 ^: p( A1 Q4 k, `    delay(20);
" V7 T) b( ~8 U0 P9 D" k                CLR_SCLK();
0 O) W& i+ M6 I+ s. ~6 d8 l' }                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
, d) v* z" c) J6 O9 |; f, ~; R                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3
1 g2 l; c+ X' {8 L                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
! F. V, K1 f) o) o' O; F2 C) N                delay(20);0 g, G+ \. |, g
        }% E$ n! p8 E. Q5 o- T' s
}1 e  N3 b/ _4 b9 {1 m
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-27 16:14 , Processed in 0.037281 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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