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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:
# P$ x0 |$ |' P& q& u/ Zvoid PSCInit(void)+ X* d1 E( F1 R7 W
{; ~0 x( V: v; m% [1 g
        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
* ]  |. y! j; ]% R. G& i- i}
" A. X/ M" T7 n. y2 g6 Z- Q; ]2 F# x* S* }0 Q! f. Z
void GPIOBankPinMuxSet(void)
! j4 n6 ^' j) d) l. |. H% X- c- ]{
5 q9 O, ^' s& V4 Z! B        // DRDY     ------------ GPIO6[14] -- 111
5 a7 _; u! }9 u% t; N        // SPI1_CLK ------------ GPIO2[13] -- 46
9 e% F. {( c! y        // SPI1_SOMI------------ GPIO2[11] -- 44, E  b9 U6 i- E$ P- w; d* c
        // SPI1_SIMO------------ GPIO2[10] -- 43
1 {1 E) n) m1 X, F5 p9 u! ~) c        // SPI1_CS2 ------------ GPIO1[0]  -- 17: j: a! G: s6 b5 h: k8 Y9 ^5 H$ H, ^
        // SPI1_CS3 ------------ GPIO1[1]  -- 18
* J& I+ ?3 Q/ q, S. j$ V. U# I7 m5 |0 W2 K  n+ o& l" L8 s
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);/ v8 i7 _' n  n  V+ q& l
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);
- ?( t! M! b4 Y6 H$ e        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);
8 u; S3 `1 l6 w2 j' ]7 [5 F; z' K0 Q7 y% h# v/ x6 t4 p
        //DRDY6 D( T3 e. t0 m7 F& \
        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY
+ F4 f: d. u8 K3 {# Z4 `        // CS2,CS3
) p+ X# b- D' x0 Z  y: e+ O5 ~        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS22 b* \+ |& D& v; w9 |  D! K' f7 Y5 y
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3, r+ H) B, T, l. z+ m: f' c' b
        //SIMO4 ]+ _$ U$ }0 o/ d3 S
        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO' l, f+ E. n* W  l
        //SOMI
+ `- T* D& q. w4 x        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI
# s. @1 D* d( L6 w  x$ F$ L        //CLK
; f" o) _, e! K4 _( {+ N9 b        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK. k# X8 m0 }3 h* I4 \4 Z

& q% J9 C) d* P1 N; F' ~9 P        // LDAC+ u) H9 }3 j" Z( P( w
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK
3 J; M/ e$ ?9 _  K% @/ C        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
; v  Z/ K* O2 ~3 j0 V! s        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2; O. ?% j! Z5 L
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3, L/ w" E! W" h  _- i% F, ^3 ?2 Z
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY  T! c# u0 k& _: W3 z1 _
}
1 {! \- I0 M  I# e3 Z# g! G6 ^. a+ u  c' K6 }
int main(void)
$ i  |, ?6 Z: K; p# e{. f% }7 \, @. x# Q; T- d
        // 外设使能
+ z* V, h- y2 n8 L+ D        PSCInit();
$ U! Z" F9 c. i, x1 k& r2 n' r* x4 i( P
4 w  e$ f" K& Y, P9 x   , n9 D; q4 X) _& y8 E) y( E3 W
    // 管脚复用配置/ g# G4 ^0 _3 b9 o# I
    GPIOBankPinMuxSet();0 O* z( L' s4 r/ g
    for(;;)0 c- ]4 X- D% C* B  G
        {
. \# D5 x0 y- n! g) J                SET_SCLK();//时钟正常输出
6 u; p2 H' \$ [0 u3 Z5 v0 t9 x                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
7 C8 U8 O8 E4 D# y, I4 b/ c' Q  U7 ~    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
/ e( O- I7 D3 b( D# v5 G* t$ ?. g    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN
1 p& c8 j* Y7 C( N3 Q( ^, m# P$ w+ s1 P6 h" n% H
    delay(20);
, C9 i- K" c0 V0 R" F: E                CLR_SCLK();
  O- ~+ C4 q) H                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3& K' Q; q0 C7 O: B4 x
                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3% X; m; A1 N8 z
                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
  M8 g$ m* P$ `7 W' e/ n$ X: g0 n                delay(20);, d9 M1 _6 \* m
        }
! J" A& f/ z$ w; Z, d}" F9 l* [# e4 \% R
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的1 s3 U0 R" y, P) Q( y* H
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-3-26 10:41 , Processed in 0.043398 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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