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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:
" T! C0 ^% V" B9 Y: u& W# x: c& Z6 Mvoid PSCInit(void): F7 c7 d$ {5 ^( G! a
{
$ o: Q) G( J. V. g5 @3 g. l6 O        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
9 |' T+ X$ A9 ~* K+ ]}
& T  E- I& G, w  M: [
8 T% L& W+ t# z% n; \void GPIOBankPinMuxSet(void)
$ z3 t! h% |4 ^& p! [; c{
% r, X; F$ g5 T6 j4 f, @3 Y, ]2 z4 i        // DRDY     ------------ GPIO6[14] -- 1112 H- M/ [& T- m5 a8 o, W
        // SPI1_CLK ------------ GPIO2[13] -- 46, L) O8 U$ {0 Z& T
        // SPI1_SOMI------------ GPIO2[11] -- 448 F$ T( ?3 O5 J7 n# {1 k
        // SPI1_SIMO------------ GPIO2[10] -- 43
* }7 K; B* N% c        // SPI1_CS2 ------------ GPIO1[0]  -- 17# Q! m1 k: j* J+ N0 e! s
        // SPI1_CS3 ------------ GPIO1[1]  -- 184 K+ P1 |5 `2 _' h( g, |

/ K$ |! \; Y  l: Z4 Q3 P        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);
: G/ C% x) J& k" I) s( g0 t        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);4 ~6 V( Z% z7 j& x& j, a" c4 g! t% h, ^
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);( `& j0 M, h9 P8 G( V
- L  A# {+ t& d; l
        //DRDY8 ]' N  Y5 G4 b& Y3 W7 P  y9 c
        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY
1 f2 z) m& J, k, ]# [1 E9 a        // CS2,CS3
* Q/ V2 |# E  P, O+ V' \+ K        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS2  U9 t6 ?+ G6 I5 H
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS39 ^2 S8 W$ `& @8 ?6 W  Z
        //SIMO/ U9 j0 |  i7 x1 u. T0 P- H6 c- N8 v
        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO
* Q0 M  o0 O9 y2 F1 v        //SOMI3 g2 p3 l! F  q* `0 |
        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI5 R; w0 T9 {! p) l, G
        //CLK4 {4 E, \; m* T
        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK/ {. ?! u# a! o* Y, f
% s1 D) [; _6 U- [: T) I: }
        // LDAC
5 @. Z. M8 x7 P+ l+ y6 G        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK$ u7 g! n! Q6 E% w( w$ x9 C2 W
        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
& r+ l1 ^2 J/ A( L% o. E3 K6 B        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2  l( s% p7 C6 M# S& U  a
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS37 h& \: t& h$ c& s5 H; J( m
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY5 o4 c- F* _4 M6 b: c/ A
}) f/ s5 l' w- f! Q: H
$ m: i5 T& M  u, R# Y4 @/ |
int main(void)
$ s' _5 f9 _8 ?. V: }{8 b- y5 _9 j' k9 t  e
        // 外设使能
; I( e. r9 ^4 k/ J: L1 I        PSCInit();
5 _, i2 l; ?. G6 U3 Q, u. l
$ l9 e! I$ e( n7 K9 g1 K   
$ u* `. p6 K  s0 {6 b) \: l$ j    // 管脚复用配置
2 q! Q8 ~+ m( a6 b' I    GPIOBankPinMuxSet();( o/ ?8 d" O! E1 S* N; W
    for(;;)
1 z1 r# w& O4 C        {
% T1 M" W4 m! K! @; `$ B1 v& q                SET_SCLK();//时钟正常输出& @1 g* n2 U+ J5 \$ O
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
/ F7 t/ @' J8 |. r! ]. c  |, V    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
$ {; v6 |: w7 K# Q5 S" v; S/ G- H( A    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN5 h9 S# V, ^, i+ z
) N( @+ w( ^  ?, v% \
    delay(20);
! k% r9 x) B" T0 b! z8 {5 A                CLR_SCLK();; q1 u0 W  H% v
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
! i8 u" X- X- c1 H! Z/ T: Z8 j" X                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3
0 K% X( o5 y" L$ {7 d! H2 J- h9 \                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
7 B& M  _% l# D& m# h8 f                delay(20);
8 r3 F/ k8 ]) n3 @0 X: M. W        }$ h2 ~5 ^4 Y, _6 H
}( }2 i3 r3 Y  o' j
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的6 Z9 M: V- @  D# R: \. f
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-3 21:43 , Processed in 0.039508 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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