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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
1 K8 \( y  r- W: ]) C/ D' w

0 }. b# `, r" x  x2 [% O

0 Y* N, w' S% I! O) ^
如题,我用示波器测量SPI的波形,高电平是3.3v没问题,为什么低电平是2v?下面是我的程序
/ D( v2 y( [- y, w" o  n- T% r' U) v2 G3 X2 U: Y& r
#include "DSP2833x_Device.h"     // DSP2833x HeadeRFile Include File* H, p; A$ Y, F  N
#include "DSP2833x_Examples.h"   // DSP2833x Examples Include File* ]% K3 m# H7 f+ \* Y0 ~
  u8 S2 i* Y$ ~8 z( u% e, }$ n2 u% K
//#define          LedReg        (*((volatile  Uint16 *)0x41FF))
" c6 e4 s  A. |' l//Uint16    *ExRamStart = (Uint16 *)0x100000;
1 Z& K2 `- ~6 Z& s! i& V) x3 d& u3 ~4 @8 X
void spi_xmit(Uint16 a);
9 A8 Y; c  p1 }' y1 a1 D. Evoid spi_fifo_init(void);! b* w  d' |5 V. l- G! E2 P
void spi_init(void);
% n4 A1 H4 [! \# I+ p/ u8 d- ^$ J# f3 y+ J
void main(void)
% b  J2 n$ w1 I{
2 n: i6 U! x% r, k: G. j   Uint16 sdata;  // send data$ f, v4 Q* ]5 `& s, K0 a( k
   Uint16 rdata;  // received data
( m4 O4 C* s  ~+ R
( o2 p: |" L. v. z( t: l& o   InitSysCtrl();. E6 B5 j. W0 c0 |1 Z" X
, X$ Y; d8 v' i3 _

' c9 M" L; t1 Y- g4 Y   InitXintf16Gpio();        //zq
2 t+ v6 C) F: A; M
0 p( I, F7 I  J5 `* |7 F7 V  s9 i   InitSpiaGpio();! w. w$ b) b; {' H$ O
8 C" @' S. V5 J% y$ N6 ?- h
   DINT;
$ a1 L" P' D& L2 `- t* s$ C  w- Q, Q0 X) M& k2 Q, {9 u* O& V5 |
   InitPieCtrl();6 s7 ^3 q4 R- Y$ C& H$ Z) B

* z4 Z. P# d4 t" i+ F2 j( x// Disable CPU interrupts and clear all CPU interrupt flags:
* Q' E" \; T6 n" w   IER = 0x0000;
. \. R9 I& p( l) o4 m   IFR = 0x0000;  z  G) p3 O/ q4 d" d& V  c
   % E& _9 F. P6 P3 h, u
   InitPieVectTable();
3 N: s# B2 c: ]4 c, r! F: @$ |( f1 L
   spi_fifo_init();          // Initialize the Spi FIFO0 d0 M: ]( n; s! i! A
   spi_init();                  // init SPI& M8 i1 a$ c: d% }: S- ?% F/ O
9 b7 v: F) Y9 Z* q2 S
   sdata = 0xAAAA;2 s& e/ e; L) F5 x
   for(;;)5 y; m& h  O2 V* j7 b: I  x. p
   {   
- @- W  k# Y7 @     // Transmit data
+ w; h1 {. q9 a5 E  J. I0 ~( }# Y# A        spi_xmit(sdata);
0 T4 g; O$ p" [' Y+ f' m1 X     // Wait until data is received2 `8 Q: G5 O5 k8 B+ ^
     while(SpiaRegs.SPIFFRX.bit.RXFFST !=1) { }                        4 _) }4 M1 `. L2 U4 I
     // Check against sent data2 N6 W7 p) I# R# x" R7 h
     rdata = SpiaRegs.SPIRXBUF;$ Q% r& N, B4 M1 l0 ^; [
     
* p, w2 U" I$ }     //sdata++;
2 F& m- ]. |2 E% |  {) J
# ?, z$ i, I4 F; ?. l   }. E: [5 r3 w% p6 i. d' B3 o
}        % h' O9 L1 H. B2 K2 J+ {
void spi_init()
9 }( `1 P5 a# l' F5 `, \( f- X{# Y+ c$ b. O2 H& {
        SpiaRegs.SPICCR.all =0x000F;                     // Reset on, rising edge, 16-bit char bits8 m  G! `$ M3 q
        SpiaRegs.SPICTL.all =0x0086;                         // Enable master mode, with phase delay,( W% E5 ]& M% ?6 M* w- a
                                                 // enable talk, and SPI int disabled.
- F/ u9 }. y* R( ~        SpiaRegs.SPIBRR =0x006;                                        //波特率7.5MHz
+ S5 |4 \- t4 l2 p6 A& d1 D    SpiaRegs.SPICCR.all =0x008F;                         // Relinquish SPI from Reset
0 ^1 J# X& {( i" l7 a( l: ~# j    SpiaRegs.SPIPRI.bit.FREE = 1;                // Set so breakpoints don't disturb xmission
0 l6 [" _: c* n# q}+ f# {) s9 b2 U# Y9 B2 x- z
2 y2 s' h9 f2 {+ j" [2 d
void spi_xmit(Uint16 a)
7 S) j* I( ?9 M, J+ n2 l9 X/ \{3 g8 e9 s- ^1 d# J. x
    SpiaRegs.SPITXBUF=a;
4 Q: I  L( r3 k' Y8 s4 c3 x}
# n$ z3 p3 J6 i+ u* H! P6 W8 _- `9 k- Q/ m5 I: q1 k  F' Z8 B
void spi_fifo_init()
+ N6 l5 @3 x% F! S: f& J{
( R5 ?6 X  _& S( \* j* E) O$ L// Initialize SPI FIFO registers
, y' p' M+ m/ P; Y9 m    SpiaRegs.SPIFFTX.all=0xE040;
$ U' s( T0 s' }, R, m    SpiaRegs.SPIFFRX.all=0x205f;+ y4 M: f  N' O7 S9 X
    SpiaRegs.SPIFFCT.all=0x0;
! A) Y! R- K& Q( D2 ]}
' r0 T7 ]$ y1 N  q(顺便说一下,f28335的芯片资料上SPI波形的高电平不知道为什么是5v,是不是错了)
& d8 P- X, l6 }, |8 Q! [* |. t
& |3 q( A) p2 F( q, M) B

/ s6 A8 i2 w# |! C8 P, g6 w7 U1 b1 _4 ^, |8 t) y1 a
  • 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 13:16 , Processed in 0.140625 second(s), 23 queries , Gzip On.

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

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

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