找回密码
 注册
关于网站域名变更的通知
查看: 276|回复: 1
打印 上一主题 下一主题

求助!!!mcbsp spi模式发送多字节问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-7-15 15:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
我用例程试了下,发单个字节是没有问题的:2 o- B8 R; D# ]) K% Y/ M$ l: s
下面是我的配置:, {3 P6 Q9 [' r) G
//*************** RESET MCBSP
9 U9 h: J! J3 ?+ e9 w6 u. e        McbspaRegs.SPCR2.all=0x0000;                 // Reset FS generator, sample rate generator & transmitter& ], B: q0 l, T' g$ o3 s3 d
        McbspaRegs.SPCR1.all=0x0000;                 // Reset Receiver, Right justify word, Digital loopback dis.' ~" D( {. _: U

, d$ c4 n' w2 o/ O- n, `* _7 e7 e4 J8 e        McbspaRegs.PCR.all=0x0F08;           //(CLKXM=CLKRM=FSXM=FSRM= 1, FSXP = 1)
* n3 m6 a6 V. G9 |
8 p; y5 L6 c' t9 ^
# R0 R0 F+ c& R1 O        //McbspaRegs.SPCR1.bit.DLB = 1;
2 ^9 k0 q) N. S' `' S+ ]+ u$ q0 j$ M2 c
        McbspaRegs.SPCR1.bit.CLKSTP = 2;     // Low inactive state without delay:' n1 p! P1 |% `! C
        McbspaRegs.PCR.bit.CLKXP = 0;                 // transmits data on the rising edge
6 H; j% e2 i' ]+ I4 X        McbspaRegs.PCR.bit.CLKRP = 0;        //receives data on the falling edge of MCLKR.# Y. q/ D! a, c6 B
6 @$ k! ^4 s  }, O) M
        McbspaRegs.RCR2.bit.RDATDLY = 1;      // FSX setup time 1 in master mode. 0 for slave mode (Receive). w) I5 ?7 i0 J1 K6 [9 B
        McbspaRegs.XCR2.bit.XDATDLY = 1;      // FSX setup time 1 in master mode. 0 for slave mode (Transmit)
0 @5 R) \# p6 w0 Q
: f. b3 p$ n" D) \- v2 B8 W        McbspaRegs.XCR2.bit.XPHASE = 0;  //发送使用单相位帧
9 k% P. ]6 P) C: C        McbspaRegs.RCR2.bit.RPHASE = 0;  //接收使用单相位帧2 A, D( ~0 j& x+ e: Y% ^
! u6 ?+ B( P" f; V
        McbspaRegs.RCR1.bit.RWDLEN1 = 2;     // 16-bit word- ^9 g( p% u+ B5 D/ q5 x* t) ~
        McbspaRegs.RCR1.bit.RFRLEN1 = 15;
1 b2 a. A$ D( Y1 j3 ?5 t( H) k( N        McbspaRegs.XCR1.bit.XWDLEN1 = 2;     // 16-bit word
& H8 F. O6 \0 i  q! a9 B/ u  _        McbspaRegs.XCR1.bit.XFRLEN1 = 15;7 @; B. J8 G; S3 v
- ]# \) R! ^6 g0 d  K
        McbspaRegs.SRGR2.bit.CLKSM = 1;                // CLKSM=1 (If SCLKME=0, i/p clock to SRG is LSPCLK)* ^: ]; V8 G0 [* N* W! Q, ]. i
        McbspaRegs.SRGR1.bit.CLKGDV = 8;        //10 CLKG frequency = LSPCLK/(CLKGDV+1)
6 Q7 z% T# V5 l" o
: G" i! |9 @" A        McbspaRegs.SPCR2.bit.GRST = 1;         // Enable the sample rate generator
, S( c% A- x- R4 {; I3 u        //delay_loop();                        // Wait at least 2 SRG clock cycles
/ I! O1 [6 W7 y+ w* ^$ O        McbspaRegs.SPCR2.bit.XRST = 1;         // Release TX from Reset8 q: Z9 c2 k" E  S  r0 S/ _
        McbspaRegs.SPCR1.bit.RRST = 1;         // Release RX from Reset; d1 T- o+ K; h
        delay_loop();, I7 V) I% m6 J# q5 G' S/ h
        McbspaRegs.SPCR2.bit.FRST = 1;         // Frame Sync Generator reset
8 C* |0 i4 h7 r' J9 J) ^8 N6 t2 c6 X. \2 [
我定时发数据16个字节数据
: o; \9 U$ e. h5 j0 t8 vfor(i=0;i<16;i++)- v; z- W" ^( B; ^' K4 i
{
# T& x5 g1 u& X7 V+ B# l% m0 ]        McbspaRegs.DXR1.all = Send_Dat[i];. @" }# B1 }# @# a! \/ C* L5 k
}* p8 z. K5 N( z+ s; x& v
数据就全部错位了,但如果只发一个字节,则没有问题。3 K4 }1 U: {: Y6 m4 s  e% b7 r
请教各位,是否有遇到这个问题,谢谢!" v7 L2 C- c0 Y+ P. B$ E
  • TA的每日心情
    慵懒
    2022-12-26 15:28
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2020-7-15 15:51 | 只看该作者
    你检查检查你的设置,看有没有问题
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-25 00:42 , Processed in 0.156250 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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