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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:
; _" w" A+ U; x' U( O( vvoid PSCInit(void)
5 z' y6 b9 j: U- x, f- o' E{
4 H4 ^0 `4 C7 G4 w        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);4 K2 i' V6 F$ a7 g0 c& ^/ Q
}
# }- u. w9 Y, r4 X) e5 t2 j8 D7 G, d4 k' ]( X
void GPIOBankPinMuxSet(void)
) V4 E2 }! c6 ^! D{, O( w0 X1 ]$ S: ~3 H( ^7 q6 {' f
        // DRDY     ------------ GPIO6[14] -- 1114 |7 ?6 D# H3 e' _' [3 B) E
        // SPI1_CLK ------------ GPIO2[13] -- 46+ Q$ U4 c& J& I
        // SPI1_SOMI------------ GPIO2[11] -- 44: d/ e" l, Q; o, s+ t
        // SPI1_SIMO------------ GPIO2[10] -- 43" I, D$ o& [6 f4 a) \: w5 `
        // SPI1_CS2 ------------ GPIO1[0]  -- 17) t/ b1 j) I" W- y& P; b* X6 J
        // SPI1_CS3 ------------ GPIO1[1]  -- 18
5 y( x' C. q+ W# ]! ^: n1 `6 e
3 A3 E7 \% p+ B9 R1 m4 {5 y$ w; p        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);, h3 m( x/ O! V9 u, V3 O9 C) A& w
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);+ @' J$ X# i# g/ Q
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);/ b# @" Q! {8 k7 p) v8 X3 o6 p
4 ~7 J  c& ?/ b5 |1 U- v
        //DRDY- g$ W# ~+ A; T5 m* a$ I+ r' J6 |
        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY+ M4 R9 c* x: I5 t% j! L( |9 F
        // CS2,CS3
6 T- [9 W9 i6 I2 u        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS26 `- m' w  C0 b7 {" c
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
4 D! s6 H) K1 U2 N8 c  |        //SIMO& r& T2 j5 q/ k
        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO
$ O1 h$ {" T' Z2 H/ e* X# B        //SOMI( }) t& b1 T; r6 x: }+ X
        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI
0 K9 r/ f. ~+ q0 ]        //CLK: I# S7 @  \' L0 E3 \! r
        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK
' g5 g3 k# Z  k7 k4 F* W
$ D7 y  [% v, K7 O) S% M8 I        // LDAC( v1 `8 f% l, A' Q$ Y" Z8 z& E3 B8 R
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK" k1 F5 ]8 c( a. `; v: z
        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN. W- a' z* l6 N$ D0 a0 e. D9 O3 G
        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2/ ?% f# y- ^8 _8 e- c4 Y
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3
. w% Q- Z; ?$ p( e1 H) b5 u        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY
% Q! V1 V4 F; h" J3 R* `! K9 E- T}" Y8 b( t# Q9 W" N: H/ s- K6 q. V5 q, Q

, f0 _( f1 e" e1 V4 dint main(void)
, }: {9 A' F" v6 U! s$ s% l{# |& h+ k( _% x- E! w4 V( K5 Y
        // 外设使能
, s$ s) S+ V/ X  w$ d5 y9 v( d. T        PSCInit();& ?' T" C2 W, X
, L) U( m% ?. o* _* d3 i
   3 D, m& ~- e' _7 k0 K$ B0 ]
    // 管脚复用配置
& C. R. _6 l4 H7 I0 d+ p    GPIOBankPinMuxSet();
/ H1 v  }3 M; H3 B! V/ Y    for(;;)
2 E( N' h2 U. u' d7 @7 z6 x        {
+ P/ c6 Q/ ?" R5 ^3 ?0 E1 A- i                SET_SCLK();//时钟正常输出9 e, g6 r3 b/ `: `# q1 K. U6 N8 P% v
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS28 n# ^9 Z/ d7 s
    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3+ X" L: k$ G& a1 n! F7 H% z
    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN
8 Z; Q/ q% b( `. s; [$ h# T- A/ n3 _: @
    delay(20);% Y3 K  @0 f9 a/ P8 K( L" f
                CLR_SCLK();
7 P. {6 t# w% ]" B                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
3 C* U7 g7 I+ w: l; I+ k8 u( c                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3
/ `; T; @2 L: m7 |                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
% A- ^0 C" H4 Z! s* b( ^                delay(20);
- S0 b" u. j# d8 {        }
+ o4 @5 Y7 k$ m8 \# Y5 x+ }  ]}
2 z' `8 ]% R8 J! q% W
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的& {1 Y% P! Q1 A: x: N% ]. ~' q
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-3-8 13:42 , Processed in 0.042591 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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