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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
我用例程试了下,发单个字节是没有问题的:2 l5 Q$ [7 x; l; _! y$ p2 \" m$ n7 J
下面是我的配置:
7 }) H0 P3 S6 f# d. r8 h5 A//*************** RESET MCBSP- s( O. j1 g- R" w  ~4 L
        McbspaRegs.SPCR2.all=0x0000;                 // Reset FS generator, sample rate generator & transmitter
7 D3 \! V' T/ `( J) t9 R- y+ |7 F0 t        McbspaRegs.SPCR1.all=0x0000;                 // Reset Receiver, Right justify word, Digital loopback dis.) ~. j( K; A$ i. K: E; u8 J
% S3 a# g5 A+ D5 [+ f- R, E
        McbspaRegs.PCR.all=0x0F08;           //(CLKXM=CLKRM=FSXM=FSRM= 1, FSXP = 1)/ y! s8 r* u% r  O- M+ _" x6 i

8 _  _7 y/ k9 |5 M
2 W" T+ x# ^) b! M! T        //McbspaRegs.SPCR1.bit.DLB = 1;. x( l: ^  v! c
4 D$ O, X  K4 @
        McbspaRegs.SPCR1.bit.CLKSTP = 2;     // Low inactive state without delay:
0 }, @9 g5 k- a1 I2 R        McbspaRegs.PCR.bit.CLKXP = 0;                 // transmits data on the rising edge
! Z9 g9 a! D5 L! l  d, `2 i        McbspaRegs.PCR.bit.CLKRP = 0;        //receives data on the falling edge of MCLKR.% F1 ]+ ]/ R. `  }: ^3 N1 C0 K/ u

$ V3 {0 }* Y+ {: R- ]( L        McbspaRegs.RCR2.bit.RDATDLY = 1;      // FSX setup time 1 in master mode. 0 for slave mode (Receive)
: a, S7 U3 e5 b! Z        McbspaRegs.XCR2.bit.XDATDLY = 1;      // FSX setup time 1 in master mode. 0 for slave mode (Transmit)) D7 n- z6 u7 V* e9 O

1 u$ U; W+ X# E7 b: v2 h% [        McbspaRegs.XCR2.bit.XPHASE = 0;  //发送使用单相位帧
1 I- b4 O0 i6 m) Y! z" M+ j        McbspaRegs.RCR2.bit.RPHASE = 0;  //接收使用单相位帧1 G6 f  B2 N0 u8 k" q/ z) l

2 T5 E8 K% o7 V( ?        McbspaRegs.RCR1.bit.RWDLEN1 = 2;     // 16-bit word
, F+ w0 t! L. r" o% K4 B        McbspaRegs.RCR1.bit.RFRLEN1 = 15;6 q. \$ g5 l" @; J% n) i/ N6 [( Q+ f
        McbspaRegs.XCR1.bit.XWDLEN1 = 2;     // 16-bit word
; ~( Z  j7 J, u" S1 V! |; r. i        McbspaRegs.XCR1.bit.XFRLEN1 = 15;( ~; {- u5 o) [3 l( C( w

0 |  Y$ Y3 _! Z        McbspaRegs.SRGR2.bit.CLKSM = 1;                // CLKSM=1 (If SCLKME=0, i/p clock to SRG is LSPCLK)
/ m/ t: c# b; F9 U6 z1 y$ M8 g        McbspaRegs.SRGR1.bit.CLKGDV = 8;        //10 CLKG frequency = LSPCLK/(CLKGDV+1). ^' r$ f7 I, ?+ y# {
7 \! o  v! X( s8 K! e  u
        McbspaRegs.SPCR2.bit.GRST = 1;         // Enable the sample rate generator
, j5 A! x2 f# F' J  _7 K. u5 s  l3 `$ a' T        //delay_loop();                        // Wait at least 2 SRG clock cycles( G- l# c$ S3 b% |; |2 I) g' ~
        McbspaRegs.SPCR2.bit.XRST = 1;         // Release TX from Reset& |" @& f4 ~, c5 v; a
        McbspaRegs.SPCR1.bit.RRST = 1;         // Release RX from Reset
3 p! O7 U! k1 B# L& m7 O        delay_loop();
  s& K6 q' i7 U0 `9 x        McbspaRegs.SPCR2.bit.FRST = 1;         // Frame Sync Generator reset$ I% U& @4 O( j2 d) e

3 Y/ B0 y0 [1 D* i+ d我定时发数据16个字节数据
* o+ z7 ?' O" R  ]4 ]; Vfor(i=0;i<16;i++)  `  B- h, _+ ?3 V; @6 {2 Z+ M
{
/ Y1 i5 V+ q, F) C8 i8 \        McbspaRegs.DXR1.all = Send_Dat[i];( s% ~$ j. `5 I  ^  W& U
}
1 W4 `! m* R5 O8 }) D8 ?数据就全部错位了,但如果只发一个字节,则没有问题。. w  S% S% E/ G- G
请教各位,是否有遇到这个问题,谢谢!
/ C% ?4 V$ y7 v$ G8 `0 C
  • TA的每日心情
    慵懒
    2022-12-26 15:28
  • 签到天数: 1 天

    [LV.1]初来乍到

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

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-6-28 22:49 , Processed in 0.062500 second(s), 23 queries , Gzip On.

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

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

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