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

F28335 SPI低电平为什么是2V?

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

. `2 ]! U6 w0 B4 Y
% q# g8 v2 m) F1 U: Z

7 q1 T- g: r2 d
如题,我用示波器测量SPI的波形,高电平是3.3v没问题,为什么低电平是2v?下面是我的程序
' Y3 X. T% v* P1 L
# ~/ p  {) O" e8 Q6 p#include "DSP2833x_Device.h"     // DSP2833x HeadeRFile Include File
! p) m8 }' g4 B- ]( d3 d" \#include "DSP2833x_Examples.h"   // DSP2833x Examples Include File6 K& T0 X! h3 V2 l- V! q! _( G

5 x7 n4 j- R: Q7 G5 e% `2 O: H4 u//#define          LedReg        (*((volatile  Uint16 *)0x41FF))% R6 i6 j, H- Z& j" a
//Uint16    *ExRamStart = (Uint16 *)0x100000;  t+ v" }0 q7 z2 _/ N$ v
4 {& S5 B4 L# P* r9 E
void spi_xmit(Uint16 a);- L) u, x8 z8 l; S& ~
void spi_fifo_init(void);
& U# ^% X1 g8 F1 H4 Vvoid spi_init(void);
( k0 Z- U5 f! K1 c9 S( ]
/ g! t3 b' d8 i; y+ |7 qvoid main(void)
, K) |9 u4 }# m0 \- y{+ E% m0 ?$ ?6 v/ e" w0 _
   Uint16 sdata;  // send data
" D& Z, [, R9 M: q   Uint16 rdata;  // received data
% G  \8 t1 _3 Z  i. @# Q$ \2 A8 \7 }4 g
   InitSysCtrl();# K. C8 g) U# T0 |4 w
$ g$ v& o+ a: I& l; ^7 j0 o( O
( R/ V4 m" E$ X  r( A
   InitXintf16Gpio();        //zq
5 j' c" m, d# q% X7 o6 W8 F: ^
5 J" W$ H* b# Q9 Z   InitSpiaGpio();$ x3 ?' _8 z/ H& [

& p. N3 t/ \) r' p) b   DINT;
5 g* e, e7 |# l8 g3 y9 U
" |8 X' X; M  G9 e  V   InitPieCtrl();
. W7 S; _1 n1 x# e1 F- s( U, E
0 O1 x3 \4 S# |. v6 U// Disable CPU interrupts and clear all CPU interrupt flags:0 L6 p) i! m  F+ n( A3 Y% d$ L
   IER = 0x0000;
! Y) z. v3 ]! S4 y6 x8 K7 W& W% J   IFR = 0x0000;* V9 x- j# T* j  u7 f, X
   
1 X3 h' |2 ?8 ^: E   InitPieVectTable();2 O! p5 r* q: ]4 D/ O8 R

" `. b% l/ p$ I& T$ R" h6 O   spi_fifo_init();          // Initialize the Spi FIFO
, A; M; {; Z2 o* E   spi_init();                  // init SPI
- g: ]5 `/ @4 \; W7 y
- s- `. b+ |: a  `/ e7 ?! y   sdata = 0xAAAA;
; ^2 y1 j. w" i4 v   for(;;)0 ?1 R. M4 v( o  C8 V) E8 j
   {   * L/ Z( r( A% F8 A7 ^( }) m
     // Transmit data
2 T$ E2 i* X! l$ P9 E        spi_xmit(sdata);
8 P  V: j% K4 m) M8 q4 c4 p     // Wait until data is received# F" @$ C# S2 e$ z1 u
     while(SpiaRegs.SPIFFRX.bit.RXFFST !=1) { }                        
# @* Q% C& C# O: |1 c7 s     // Check against sent data
- }9 o2 |/ o" I9 E. d( p+ n3 P+ d3 P) Y     rdata = SpiaRegs.SPIRXBUF;. s8 [9 x" L: W% g: {
     1 i- h% x$ G/ I" h4 k
     //sdata++;
& R! x+ l  ^0 U; ~% u/ K+ j+ d! I+ x$ K" d: V- s  _! X
   }
! U! K* d, K( Z$ W6 o. H}        ! x( t' X' h5 M  m! E
void spi_init(), Q5 Y0 T0 v( g+ y; m6 P; E
{8 l8 j# S0 v9 \( c! U: K, h+ j
        SpiaRegs.SPICCR.all =0x000F;                     // Reset on, rising edge, 16-bit char bits
/ \1 E2 K% B* c' O7 q; v: o        SpiaRegs.SPICTL.all =0x0086;                         // Enable master mode, with phase delay,- k' y0 p! c" d. S
                                                 // enable talk, and SPI int disabled.
  _" }  c; q/ ]: l/ W        SpiaRegs.SPIBRR =0x006;                                        //波特率7.5MHz& |7 r  P7 Z- T6 N1 w
    SpiaRegs.SPICCR.all =0x008F;                         // Relinquish SPI from Reset1 m1 K: P! F4 ]( q4 I9 Q
    SpiaRegs.SPIPRI.bit.FREE = 1;                // Set so breakpoints don't disturb xmission
3 `  A: e6 _% f* J$ ~}
# U% g: c  _- o: F. G! _* Y8 ^" j9 J( F1 [; h0 Y, J% `' w
void spi_xmit(Uint16 a)
+ A/ ?1 y5 ~% b{" M9 X' O( J7 u
    SpiaRegs.SPITXBUF=a;  K9 i9 p5 B  x
}* I. @, ~' w' C9 s5 T# }1 E- F
8 v! r5 a1 w0 u4 h  ]
void spi_fifo_init()  {- c/ l- |# {% z2 i2 C8 I$ R# E
{( u5 O$ D, K" U/ N2 s( T: g
// Initialize SPI FIFO registers! V" m7 Z1 V/ y2 A) x. ^
    SpiaRegs.SPIFFTX.all=0xE040;
7 T4 _" m) I: t: g+ B6 e; _    SpiaRegs.SPIFFRX.all=0x205f;
% S! M  [& k; t7 m& Z    SpiaRegs.SPIFFCT.all=0x0;: @3 ~, W9 t: W4 H# x' o9 @
}1 D: g$ p2 ?. j) @
(顺便说一下,f28335的芯片资料上SPI波形的高电平不知道为什么是5v,是不是错了)

3 q9 o! F( i* U( t9 c2 [$ z0 P/ o' |  B6 u+ {9 J5 S% C
( w$ C0 z+ Y- d: g+ ?$ Z

9 U* X1 S6 {; _/ M* K8 r
  • TA的每日心情
    开心
    2023-1-3 15:10
  • 签到天数: 2 天

    [LV.1]初来乍到

    2#
    发表于 2021-6-25 13:10 | 只看该作者
    肯定不是5V  你看看硬件上哪儿加入了直流分量没
  • TA的每日心情
    开心
    2022-12-5 15:37
  • 签到天数: 2 天

    [LV.1]初来乍到

    3#
    发表于 2021-6-25 16:14 | 只看该作者
    我调试CAN也遇到同样的问题了,低电平进CANRX就被拉高到了2V以上
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-11-24 10:43 , Processed in 0.156250 second(s), 23 queries , Gzip On.

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

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

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