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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:! Y1 Q" j5 B, ~& W8 P0 [
void PSCInit(void)' _0 V, f+ B; a/ P
{
( s, g0 J" D) q; ]0 T$ S2 d        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);) q+ [, l0 v& V. X  T) Y* o
}
# u0 s; A: ]% J; k) P+ x5 W  w4 i( P. N" [
void GPIOBankPinMuxSet(void)* q3 }& P+ ^" M, `
{
9 d' k8 M1 B9 K. n+ S6 u        // DRDY     ------------ GPIO6[14] -- 111- X7 M. g4 h( G8 T6 b8 K2 t
        // SPI1_CLK ------------ GPIO2[13] -- 46) y4 i9 F2 `$ m1 [' u# A( W
        // SPI1_SOMI------------ GPIO2[11] -- 44
" j2 m0 u$ l4 n* Y) L; a9 s        // SPI1_SIMO------------ GPIO2[10] -- 433 ^( d6 I2 {) e8 V, B# M4 f# R
        // SPI1_CS2 ------------ GPIO1[0]  -- 172 V' i% o5 N+ p. s2 ]/ r3 c
        // SPI1_CS3 ------------ GPIO1[1]  -- 18
% r) n8 E  J8 \) {0 I+ w
' C, X2 x' J$ C% q; T; L4 `        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);3 t& O) ?$ V) ]# V
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);
' E. \8 Q  O+ {8 ]" Y! u- f! o        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);9 P, X: G& }& Z4 |. j
2 z  r. g4 h! m- r# ^: }( K) a0 f
        //DRDY9 q$ }- ^1 U/ [5 _) Z/ D
        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY
' y$ F8 a2 Q/ h% _  G$ _% B+ v) P        // CS2,CS3
) X; b) C* r) \$ c4 Y        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS24 w+ {; V$ r, ]5 k  r6 U
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
4 L! `. W1 x5 f" A* |6 N$ a        //SIMO
. `5 C5 d8 `2 F        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO
& l  Y6 }( _$ r  J: i. O# P        //SOMI+ a. S5 C4 _4 g1 g+ F
        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI, g/ Y% F* g* e: H1 ~& _8 t3 N
        //CLK
# l0 ?0 B  K0 k# @        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK; K! F/ n5 @( H: \

: M' i- i  y+ f/ g  b1 M        // LDAC& j  h. ~& e1 c- D6 B& P- w$ E  U- p
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK: ^2 y2 G' @, w+ D! _1 n
        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
8 p6 l7 D; E8 P( g4 N        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2+ r2 x; Y- `4 W1 b
        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3/ @* ]! G! z" s2 j$ T
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY
, m+ O' U2 K! V; m( L}+ C* }/ |: g0 @, I: ]# w, S: B1 h8 X
  p' m9 h6 ?( h) c/ X" h
int main(void)4 `" O% }3 e8 c0 N
{
/ R9 l- D. `4 l' O# E0 E        // 外设使能4 ?5 v0 I# U! L% K
        PSCInit();5 e9 h- ^# C$ ~: ~

. u0 g0 E+ _1 Q" j& l9 F   7 [8 c( O; V9 \/ }7 |
    // 管脚复用配置5 v! r: D0 j6 e0 o3 u. Y8 I
    GPIOBankPinMuxSet();
( R6 v" p# \2 G# O( E. b    for(;;)* Y/ @% N2 V1 j2 ^5 g: [
        {
" Z" E/ k* s3 }; h                SET_SCLK();//时钟正常输出
6 i5 @" d" g1 l; y                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
5 _3 h/ ~: o& q: L6 |+ ^+ r1 ]. s    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS3
* d3 Z: {+ ?; Z$ ~( g    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN
# R( i! B* j; A/ ]7 N6 }' V) M, j" D0 h  s% \: q  c7 O" p
    delay(20);
, z& h( {0 H$ V  o8 t                CLR_SCLK();
# p( V3 \9 x: R6 U7 t, R% Z  T+ v                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
4 q' K" z9 B& D4 i! Z3 P5 x+ \                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3
& T# R6 g; V& y: Y( Z+ k                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
6 u) R3 u1 u7 J7 t* p$ j2 ?9 M0 s2 o                delay(20);
" ]' \3 R" u: ?9 b- g0 a        }) _8 q& V, X" H) i9 y+ w, y, o
}
7 v) h# g) Q1 W: T  x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的
" T  ?5 c/ V* T% l! f
回复 支持 反对

使用道具 举报

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

本版积分规则


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

GMT+8, 2026-1-12 23:34 , Processed in 0.038764 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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