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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:2 h1 R# S! e$ q. B' d* V0 t1 W+ [& R% i
void PSCInit(void)
7 P' ?8 F" r. {. C{
5 C7 Y8 X# P# _4 b, A        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
3 {8 \: M" W0 ^  P4 U5 V}
' r- |: N- m  f3 v* u4 j0 |8 z. ^' z- Y& q
void GPIOBankPinMuxSet(void)
& ~- I9 \' h. c  }: K. t4 K- {: X" ?{
% x+ n/ B" X/ ~        // DRDY     ------------ GPIO6[14] -- 1116 _2 l+ K$ R! l+ P' y' d. U
        // SPI1_CLK ------------ GPIO2[13] -- 46
5 T& E7 j& Q( _! J        // SPI1_SOMI------------ GPIO2[11] -- 44' _0 E0 I/ P) {7 B4 C( ]9 w3 m
        // SPI1_SIMO------------ GPIO2[10] -- 43
5 Y2 k' b: y) L! M        // SPI1_CS2 ------------ GPIO1[0]  -- 175 c% Q0 m, |8 E
        // SPI1_CS3 ------------ GPIO1[1]  -- 18. C1 c9 h: x2 A# O7 ~" c8 \: v9 q
+ X* k  K* U! ~- E7 \, d
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);
: k. ~& Y6 }. l$ I7 J. _7 I        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);
' Q2 W+ b1 g8 ^; y        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);$ ]  C  I2 b  e. P( {& s/ g8 B

% M1 j5 N8 S" C. |6 K        //DRDY
3 C1 z, l& n6 q9 g        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY4 \! ^* M2 g) ^5 h3 p5 f
        // CS2,CS3
7 ^' }- K& W) L% D        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS2
8 R8 f/ }6 ?& _+ O+ Z& v+ x6 K# I- }        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
2 n6 _3 _& B! x' D        //SIMO
+ W9 t& s) M: k3 Y0 Z1 Q! {        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO6 ]; U2 q* x7 U% Y9 |  @8 X
        //SOMI6 c* x3 P( V& n" V& X" n, T
        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI
9 s9 T: }- i' a' i5 t& i8 o: U        //CLK
% D- {; a4 n, k1 G  r- W  a        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK
6 O5 ^: I0 v1 H5 }6 B# k  P8 k+ s+ C0 S4 m0 {
        // LDAC6 f: x6 R: b* s2 u4 [
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK
* A; [* ~. D; K. N6 C        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN* e0 K; D2 d& c( n! K
        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS28 s% w( N+ U1 G7 Y
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3
9 @3 @: M  F: V3 J0 _( g  B) h% k        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY
/ D3 T  Q" q, j! W5 g( i9 x& o}
4 u! \  ?0 S3 [  ?+ O; I
+ R; ?3 {- [, e7 uint main(void)1 O. h0 Y' o) N/ `) `; h: I, [6 o/ r
{
3 J6 {8 {- I$ t        // 外设使能
; {; X+ N' W# Z1 i; w        PSCInit();
6 X& U: O" b2 H8 I+ A5 w$ f% Z
0 u+ p( X) o$ s+ i; m9 B' b   
% m, v6 j9 J1 \9 e2 K; G! T    // 管脚复用配置3 P( V) G1 o- C! Y
    GPIOBankPinMuxSet();$ a" p) v- |9 ^6 Z) K/ G
    for(;;)7 A; ~% F) q' [! a# _, O+ z7 m/ }( k- P
        {" S4 E% K' ~- w& Y) U2 x) G: H# ]/ U
                SET_SCLK();//时钟正常输出/ B/ T+ |% m4 C( M7 q
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS23 d' q% y" P4 w9 W2 y3 j
    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
" y. X& E9 _0 o    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN
  K! n; m8 F# c% M7 _
& v9 a6 q4 A  q6 t$ N    delay(20);
, u7 W( r' A" d1 {( f3 }                CLR_SCLK();$ P: p9 U# r. @- N/ }( d6 z, K; }. @( _
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
9 A4 c1 y. h$ |$ g( B% ]                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS30 D& y& c" n+ I: p3 C
                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
9 F- e5 b: ?- ^0 s5 D: y9 A                delay(20);
7 h; I9 z* f) D! O& {3 i$ y        }) H# E) n& {, H  [/ g8 Q
}
$ k# |" o: i% g7 I" [
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的
( W- q$ b- z, K7 r0 \/ k; x/ E0 d
回复 支持 反对

使用道具 举报

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

本版积分规则


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

GMT+8, 2026-1-11 08:55 , Processed in 0.038767 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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