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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

62

积分

注册会员

Rank: 2

积分
62
跳转到指定楼层
楼主
发表于 2015-5-23 19:02:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用下面的例子代码,不能使SIMO和CS为低电平:
& X- R( q/ e+ I8 j3 _. hvoid PSCInit(void)
+ ^0 U! [  ]0 W; j. D# p* ^5 G{  h$ j6 n6 f) K
        PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
" s- F# Z0 n6 a: V1 o1 J}
# U. B  |  U5 P6 q8 C" E" d: o9 z$ {' S1 {9 }; u7 d* D8 B
void GPIOBankPinMuxSet(void)) W2 O+ M1 w. F2 E7 L. b9 y, r1 p( k
{
  Z9 [: Z! @3 \        // DRDY     ------------ GPIO6[14] -- 111$ I& ^# v: D4 L6 G- a
        // SPI1_CLK ------------ GPIO2[13] -- 46. _4 T" p  _8 P8 Q+ w7 Z
        // SPI1_SOMI------------ GPIO2[11] -- 44* p& e! D% i; ~5 _
        // SPI1_SIMO------------ GPIO2[10] -- 43: n% l( E) I& v- `  |1 K  p! f
        // SPI1_CS2 ------------ GPIO1[0]  -- 17
" ]- u+ l# H3 _$ V2 V( d! T        // SPI1_CS3 ------------ GPIO1[1]  -- 18
7 @+ ?' a5 W# @* f) v, r4 c/ M/ L+ v  w. o; _
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x88000000);
* \1 A6 h, p4 G' T. @: G        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);0 I" G7 [* d! K. i0 l0 E- @! J
        HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);6 m- d2 z/ P0 u2 K( c

4 f# _! B$ c2 [. ?        //DRDY
: H6 D7 k* G9 Z6 ]        GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_INPUT);  // GPIO6[7] DRDY8 a/ S$ Q* Y: v& `" [
        // CS2,CS3% [6 h, _$ C  p3 ]( d, D# b9 ?; y
        GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO1[0] CS2! D4 M& i) Y4 k( |. ~; |$ P1 z: ]) O
        GPIODirModeSet(SOC_GPIO_0_REGS, 18, GPIO_DIR_OUTPUT);        // GPIO1[1]        CS3
) O; B8 @9 w' n- B1 s, R        //SIMO
% H" K& x6 U; S- P        GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10] SIMO: E1 A: @9 ]  T4 L
        //SOMI
, k0 T7 b  J$ Y0 C) s+ {$ {3 Y* {        GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11] DOMI
! d+ C/ n" d+ t% }- C, G) [        //CLK
7 @- F9 y( X* K        GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13] CLK
, k& d' P3 m- \4 W* }: f/ V- z" p8 _8 j8 \! V6 B
        // LDAC9 @/ T8 z, M9 Y# ~8 w. {2 `
        GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK" q3 l$ J4 [' G0 v/ [
        GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
  v8 ^- c8 N% Y( k) o        GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
6 u5 X/ t# ^" g  K$ h  Z3 H* E        GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); //CS3- V! x; v  C  v& r2 v! L  e* D
        GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); //DRDY/ i6 L+ p0 }5 s1 i! m- i
}
1 Z, i/ {, N4 J# W8 O& n; Q1 j5 a9 J0 P) R5 ?/ Q; t' @
int main(void)
4 u! u' o6 o9 N& @7 J{
9 e' u8 c$ C" E: @- p4 @        // 外设使能% g! Z+ h2 ]6 P: t9 q6 @
        PSCInit();
3 v' |8 e  B5 \1 C) Q" V# o4 ?
/ }( J8 g, I. E3 u( p( T   
& l& o0 o3 s( g    // 管脚复用配置* p# ^& n4 {- k* u6 F
    GPIOBankPinMuxSet();) G+ n( L* ^8 V: U: k! |% ]' R  @' B
    for(;;)
" d- `9 ]$ _  d2 |+ M: w, P" H        {; P8 q/ Z+ p6 A( b; F# P3 V% T
                SET_SCLK();//时钟正常输出$ t2 \+ D) A" u' ?0 u* N
                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS2
: A1 T% y, I4 j. q, K6 \6 M/ J    GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_HIGH); // CS35 S: \9 B. [) i' J/ s0 T5 W* Z, ]1 W
    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN2 x2 g, j0 \* \6 T; e3 F+ U2 d
' S+ f% c% X$ l5 a
    delay(20);
% f' Q/ L' a! |) W6 J                CLR_SCLK();
; T& \; K$ I' v! g+ a5 k# L                GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // CS3
; ^5 B! B% L' u) ?7 _                GPIOPinWrite(SOC_GPIO_0_REGS, 18, GPIO_PIN_LOW); // CS3
5 U6 o: V; x) E! {! v                GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_LOW); // SDIN
+ M. c5 N6 \2 w+ L  u! X7 B1 Q                delay(20);
7 l7 [- ?( F4 }6 Q7 u        }
" z' x, v# S: B  U+ {% Y3 O; ~}& B/ ?4 ~, z  G1 ~' k
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

184

帖子

1137

积分

QQ游客

积分
1137
沙发
发表于 2015-5-25 14:26:53 | 只看该作者
这个GPIO的配置是没有问题的,在主函数里并没有使CS2拉低,其他的没有问题的
* R# C" f( ?1 V" x3 G6 I& O: i
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-4-3 03:18 , Processed in 0.038925 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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