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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:( Z0 d4 m& o& K& o! f% h* ]4 I
void PSCInit(void)2 o# ~0 _7 y" l
{! v* N  g) v$ C9 ?( L; o# r0 {+ t4 G4 N
        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);# ~/ R4 z8 c+ F7 r
}+ c6 g9 y; y2 {- y1 s8 s( g

) Y( N2 X( K; s  B4 k3 Uvoid GPIOBankPinMuxSet(void)7 N) Z2 u* S/ R7 ?
{
$ _) E& c# s* d) y' \        // DRDY     ------------ GPIO6[14] -- 111; J! t0 H- |7 L6 X$ y1 ?
        // SPI1_CLK ------------ GPIO2[13] -- 46
  h6 ]. P8 f  e( f3 J. N4 F        // SPI1_SOMI------------ GPIO2[11] -- 44
/ Z7 q% U" B' D" N' e; H, |) \0 ^# B        // SPI1_SIMO------------ GPIO2[10] -- 438 V5 A! `: I0 E8 ?
        // SPI1_CS2 ------------ GPIO1[0]  -- 17
0 }0 ?/ X( l& Y$ u' j        // SPI1_CS3 ------------ GPIO1[1]  -- 18& _3 O: i' h; T2 l* A
; p* Y# }: ?3 e& g, }# T
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);
0 z  }8 W% r' v4 m: w- e        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);; f8 N0 w! a8 j# z6 \. i& c
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);
. j" A7 }8 P1 ?8 w& j. g, d
  V& F' ^1 s+ p; V: l0 m* o. M+ K, ?        //DRDY1 H* \. B/ U6 K
        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY( V* I. O" `' e$ Z
        // CS2,CS38 `' B& H3 @1 {; u
        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS23 M4 {" y- V% P# p6 N4 Q$ a
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
/ j- D% b. ?) Y% G* \        //SIMO
/ X# X" t" X, v! G( `0 @) ^1 \        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO
. j' U1 [% T( p  n6 J2 R/ k/ x        //SOMI, i7 |- X& M+ c
        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI0 w% q& i3 O+ U# ^$ K
        //CLK9 s, e* c! A8 x$ R
        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK
* i* W7 Q7 [' R+ [1 a) |: R. Q+ l# |, w4 Y3 j: X
        // LDAC0 u5 l: E& ]. ^0 {* o0 x' D
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK  M# a2 e8 B. F) F
        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN5 O. {3 h1 a& z  l0 I$ V" A
        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2% V) J; k' x: H! W
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS36 Q1 f0 T) H1 {( a7 C
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY
1 @7 E* \2 z" p& v! E}
8 K9 y9 x; O7 O6 c* B! t" A" n" l) w) P' k: f: \
int main(void)3 S4 V, q  h8 M3 n
{
" c) L3 X( \- r' @4 c3 E        // 外设使能
2 Q  |) b# J' a: Z$ x/ P        PSCInit();" W0 T  s2 W2 l- I5 u$ E
9 d, }- C: r0 g, A) c% R! R- M6 h
   
. i3 X4 ~( e! V2 x    // 管脚复用配置
- u3 c. R: I& F- T3 w( b3 G, [4 \) u    GPIOBankPinMuxSet();
; h/ g: ~9 ~9 g1 W" u    for(;;)( Q# l% l  Z! S1 V& d
        {
4 y9 e; V7 B' U% c. [* w. G                SET_SCLK();//时钟正常输出9 E/ ^+ n/ \0 f2 D& K0 Y5 t
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
9 N% H2 M9 Z) `4 c' p. I. c    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS30 q3 M) Z7 I/ |2 h8 L7 V9 {2 v; v
    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN
4 e4 ^+ [) ~: o; E) f' z# b
9 g' S- M. C9 M$ b; V8 Q$ B    delay(20);
3 `! E5 k7 `3 G& ~1 h) N# C! b5 s, j                CLR_SCLK();
: ~  x. R- r8 Z- y- \0 r5 w7 Y" w                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
) _  U3 _- V- d; f. Y& W  r4 A+ |                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3* I5 h" I1 y: a* b$ E- ?
                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN# [& C6 n  m- {6 o2 f
                delay(20);
" p& [) ~! C) y8 {1 M7 C        }
! k2 X/ `4 E9 I& X2 f; e}( q4 F8 ~4 C+ y3 _& R- ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-1 16:09 , Processed in 0.042871 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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