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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:
9 S- Q2 \' l, K  m- svoid PSCInit(void)$ o0 q& E8 W4 \  v
{! k; u1 Z( \% ?) r2 C# M7 j7 L" a
        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
# z7 Z, ]! \! ]6 R: y$ y- J/ X  }1 y}# u8 |" [  s& v
% a0 W0 ^8 q+ f2 h: n/ s
void GPIOBankPinMuxSet(void)8 N$ z6 N7 |# j4 s! y" Y
{" |' d$ V4 h' R
        // DRDY     ------------ GPIO6[14] -- 111) @; J0 w7 e5 `
        // SPI1_CLK ------------ GPIO2[13] -- 46+ R  c- _/ U9 T2 r
        // SPI1_SOMI------------ GPIO2[11] -- 44
. `0 H0 Q. k" f7 N( Y2 B( g        // SPI1_SIMO------------ GPIO2[10] -- 43
% E- E6 V4 t2 b: h: @# x        // SPI1_CS2 ------------ GPIO1[0]  -- 17
6 O, O. M6 j; |7 w7 T        // SPI1_CS3 ------------ GPIO1[1]  -- 18: c0 z' d0 \9 h/ j1 S
8 W. V1 ~7 D& H0 F5 Z$ l; F: M! ]; [
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);- J- ~% U1 o7 M% d  {  `
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);
. V" I9 {* l5 b: B        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);6 g9 w) X: ~# i* E- A
: `$ ~, L/ u* I
        //DRDY
" o  I% d+ ^6 I# Z        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY" I; n+ Q, s0 F* q* G7 g! u! C
        // CS2,CS3
% _) R8 `$ L/ l/ {& v) E) g        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS20 }2 p6 }: z5 T- O
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
1 W$ r  n: ?) Y) M% |5 ~        //SIMO4 c0 B. Q5 x4 A* R. a
        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO; G! |2 _$ L. H3 v# z9 k9 n- ^
        //SOMI
2 c- o1 s- v' M# h/ s- K& x9 {, J        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI
: R5 Z' x1 G8 E0 ]8 ?2 N8 g        //CLK, R- p- q" s6 p4 W$ i( G- l& K
        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK
* f3 Y7 X+ O  I* Z" g; l8 g+ }7 t! N4 c5 e% J/ m% r* M- R0 V
        // LDAC4 H* A4 @; _0 U7 Q0 ~' I( s
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK
0 J: R) z5 [5 [3 F0 }, T        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN) E0 J* e, O0 i" [2 i/ G
        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS21 k; ~! i2 i% e; u+ I* f5 M$ P
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3+ n3 _9 Q/ I: Y6 \7 Z" Z
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY
: d% _  g4 h# ]5 _% v}
1 D) ^+ j; c+ k3 z# _% r2 X, C9 U: S
int main(void)
) [; q7 {: J/ {  A" j2 C{
( ?' k: u& V  h* W        // 外设使能
6 N/ \" C  q& c        PSCInit();
. m/ e6 L; |. S- H: e8 W
; {2 j+ W% k' s" L1 T% P2 g, N* T   
9 I# p+ O6 t6 u3 t& z    // 管脚复用配置
8 o9 Y" `& e5 [3 E5 S1 X) P* q4 v1 [    GPIOBankPinMuxSet();7 ~1 {) K: N& J  S+ l1 y( B
    for(;;), H2 G8 S' z  ]  @' x. ~; s
        {/ H: w4 @$ }# T6 c, D! w
                SET_SCLK();//时钟正常输出: x5 A7 Y4 D( M1 w% ?
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2. K  Q' x! t  s9 Y* x& Q
    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
9 b$ p6 u& Q7 c7 _) z    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN9 u' s2 z6 h. \; ?- G/ r( A# N
. d6 C/ p& q6 l9 m+ P$ Q# |
    delay(20);
3 z3 {8 ~( c/ ~# T  c: p                CLR_SCLK();
2 M* A1 j( H7 _) @) ~  j. G$ w                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
8 A) ~+ o/ R. H5 V  S! v) ]8 W                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3! v! r% ?1 l' P- w  W" f; x  \
                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN. K4 g' l, p1 W; _) @
                delay(20);
, M1 j% ]3 g  T; c        }
. m  {; q0 T7 o1 ?) `. M" B2 v}
1 b% L; z* ]! N" G5 d% A- L
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的
& _; b, h/ r* x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-11-25 08:29 , Processed in 0.041485 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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