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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

8 {4 L, o# }0 T  ?

2 t" h- t* ?% b; m! W
) U" R6 t7 d! L2 S& ~! }0 n2 L
如题,我用示波器测量SPI的波形,高电平是3.3v没问题,为什么低电平是2v?下面是我的程序# C/ A; a' l; D" x
1 j( h  Q1 @, h$ ?8 o3 d
#include "DSP2833x_Device.h"     // DSP2833x HeadeRFile Include File
- R$ d5 \% g* P, {#include "DSP2833x_Examples.h"   // DSP2833x Examples Include File
6 k) C- L0 K8 |  I; X# y! U" q3 \/ m& W
//#define          LedReg        (*((volatile  Uint16 *)0x41FF))
/ Q, R3 O8 |9 `& B( `//Uint16    *ExRamStart = (Uint16 *)0x100000;. W& l! z( ^' Y7 _0 ^

+ ^' J- l  Z% S7 E5 ]+ g  wvoid spi_xmit(Uint16 a);
8 C8 [2 |/ N' h) Y9 U- O- Svoid spi_fifo_init(void);
( S/ E( f; j3 p% W9 Wvoid spi_init(void);" O9 `9 U2 I" C) k  v& H) h8 x0 O
# z8 m" v8 k1 e2 h# k
void main(void)& M! `" O3 R" r8 d* F, J& A+ d
{' f9 i/ y) S3 D0 @
   Uint16 sdata;  // send data
9 `7 ?, A4 b% W9 _7 v   Uint16 rdata;  // received data
' `4 S& g% D! q- }% W4 P' l0 o3 F* \+ x$ Y; L8 ]5 B
   InitSysCtrl();' w9 ^  `& J7 j& c' S# d. O+ g) b

* f7 o" ^3 c/ d- P4 _9 C
$ H) h! C8 F+ c: ~- ]" l  v( `   InitXintf16Gpio();        //zq* M( s9 A3 I6 F! ^# Q! R  F8 p
! o+ {/ m6 D  X
   InitSpiaGpio();- G' V( j- q' z9 n
: |2 `+ ]' G5 V. {; H# p
   DINT;
$ u# z+ p. }4 a6 y) N5 m; D: w" I% y* Z' F1 w& G
   InitPieCtrl();
0 M% T" Q$ d2 F" `* g: Y% x/ W* c' k. o- k
// Disable CPU interrupts and clear all CPU interrupt flags:
0 _9 N4 K( \3 w  S0 K. G& W   IER = 0x0000;
1 V$ L1 H/ \$ L   IFR = 0x0000;
3 G; c/ ]; S  }+ ?% n: n   
* m! d. F7 L4 P: m   InitPieVectTable();
0 F" I( H* ]% D3 Q) F. ?
. ]8 f# x; `; ]9 d) n( e. k* e   spi_fifo_init();          // Initialize the Spi FIFO: J* V; c5 j* M. N- T/ l
   spi_init();                  // init SPI* K7 n) |6 ]  _* `
+ o7 ~7 C4 A% S) K% t
   sdata = 0xAAAA;2 B2 o. M- t1 ]! T9 s/ h: W& D
   for(;;)
/ x4 k+ y, p. w7 V+ q( Z   {   & Q# G6 x+ D' Q0 s
     // Transmit data
% I1 Z- U' F. w: C        spi_xmit(sdata);8 a! J6 {1 x" Q9 U: E8 Z9 R! n
     // Wait until data is received; u5 x7 b& o+ Z) m8 C( u
     while(SpiaRegs.SPIFFRX.bit.RXFFST !=1) { }                        $ X+ j7 M- H" @1 }/ o4 E+ I
     // Check against sent data+ C: ~* D( p! ?% G7 ^
     rdata = SpiaRegs.SPIRXBUF;5 h: |% a9 E6 y8 ]
     
% g3 W5 V' k) ?: H     //sdata++;
; d) }- j, c) c: S( U# V& [. ~9 I1 W( q* h+ B& D) S7 l
   }& M/ w- D4 \3 ~- q) @& K  |% o
}        
% ]+ g: |% r7 ?/ t, Evoid spi_init()5 T+ c# g0 b: x8 _
{
6 M; Z' z' e2 t6 v( v. |        SpiaRegs.SPICCR.all =0x000F;                     // Reset on, rising edge, 16-bit char bits
6 v3 t- `: T( d( a" l. a        SpiaRegs.SPICTL.all =0x0086;                         // Enable master mode, with phase delay,
1 ^7 ^; H9 a* Y                                                 // enable talk, and SPI int disabled.
% D" w$ R' L6 T0 z        SpiaRegs.SPIBRR =0x006;                                        //波特率7.5MHz
9 ~) P% B9 H' z1 i    SpiaRegs.SPICCR.all =0x008F;                         // Relinquish SPI from Reset% l) w1 t( C" U* m5 i
    SpiaRegs.SPIPRI.bit.FREE = 1;                // Set so breakpoints don't disturb xmission
. U0 |9 w5 K$ y' Q* ~* ~" z/ K) v}0 Z8 a5 Q7 _: }
+ D& M4 t' p$ T6 Y8 @( ^
void spi_xmit(Uint16 a)
6 y8 W7 C& d$ r9 i{
% F7 ]! Q# c- U  m    SpiaRegs.SPITXBUF=a;
: B5 Q- {# ?: x, x" w- n+ E  g$ }}; `, s4 d/ f+ h3 ~, _( a

* F/ a4 c" g9 N" \9 Uvoid spi_fifo_init()
# i5 e" C9 d+ f. h2 c% F{
/ P4 p$ {: o- X, k2 e// Initialize SPI FIFO registers7 ?0 V2 r+ T8 X& R, m5 z
    SpiaRegs.SPIFFTX.all=0xE040;
3 a; w( U, [9 R+ Z! b  s    SpiaRegs.SPIFFRX.all=0x205f;
7 e" E7 n* P) e$ Q% G    SpiaRegs.SPIFFCT.all=0x0;2 m, h0 u; c( n* X! X, w3 z' `
}1 T! t4 H6 X* F& T2 T4 G# S6 V( t
(顺便说一下,f28335的芯片资料上SPI波形的高电平不知道为什么是5v,是不是错了)
  |8 a3 c: z& n+ ?8 p5 e- J* Z1 v2 {2 T
* Y6 T' R( _/ E! k0 u3 j$ @

6 Z5 |+ K* o+ T0 t* [( t
8 u; d. Y  H. S# z3 K: h8 v7 q6 B; c
  • 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 14:34 , Processed in 0.171875 second(s), 24 queries , Gzip On.

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

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

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