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

路过的各位朋友帮忙给看看啊!谢谢啦

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
用的STM32F072的芯片,在调试CAN程序的时候,用JLINK仿真出来的发送状态永远不是CANTXOK。
8 ^, _! i8 d' s+ CCAN的寄存器显示为三个邮箱先后为Pending状态,之后就状态一直为无邮箱可用。芯片无法发出信号。求解啊,各位大神,难道是硬件的原因吗
& u$ y1 }; U& f* t5 |) Z2 m" \int main(void)
; O- t; E/ v2 g4 i9 M5 }{- `( p. h0 [5 A3 a
        3 A: w, g# `8 u1 l% T
    CanTxMsg TxMessage,TxMessage1;
7 k2 U" z0 D& N! j0 t. w  GPIO_InitTypeDef       GPIO_InitStructure;# e9 T+ f( V" i0 n
  CAN_InitTypeDef        CAN_InitStructure;
* G3 B5 h3 D- i% S  L2 R  CAN_FilterInitTypeDef  CAN_FilterInitStructure;
/ ~# Q+ t, I% Z. ^    NVIC_InitTypeDef       NVIC_InitStructure;    . V+ r- g( D; m2 {' t: \
  //CAN¿úÏà1Øê±Öó8 r& E6 e1 M! `2 O6 k
    RCC_AHBPeriphclockCmd(RCC_AHBPeriph_GPIOA,ENABLE); //ê1ÄüGPIOAê±Öó
5 C5 u4 P( ]1 U$ I& G8 r9 b# C" S; C' r9 }0 ?: g$ B
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN,ENABLE);//ê1ÄüCAN1ê±Öó    : R+ L$ R. N! A( s; _
    " L' H) [: b$ w& M
    //can1¿úòy½ÅÅäÖÃ1 ?! ~; K+ L3 q- r7 t
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11|GPIO_Pin_12;//3õê¼»ˉ
4 {5 A- L$ m8 m/ J) ?    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//¸′óÃ1|Äü% l$ W4 l- F/ T
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;    //Ëù¶è
5 R. I: W9 K7 K! @  j    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //íÆíì¸′óÃêä3ö; E  x0 s4 G! |( V% W8 C( _6 n: L
    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL; //éÏà-8 q! w5 y; C: u& H
    GPIO_Init(GPIOA,&GPIO_InitStructure);
4 ~' z! I8 x- W* T3 W        3 t, I# n' W* L, h
    GPIO_PinAFConfig(GPIOA,GPIO_PinSource11,GPIO_AF_0); 4 w& c: I* C- {8 r
    GPIO_PinAFConfig(GPIOA,GPIO_PinSource12,GPIO_AF_0); / c& M: q# P" ~- x2 X: i" `
    . `, S: p8 p3 K- |1 F
  //CAN1¿úμÄÏà1ØÅäÖà  
* w% c+ S9 O, J" [- _  h# h' J    CAN_InitStructure.CAN_TTCM=DISABLE;  
$ y: O: l3 H1 P$ K$ P, g    CAN_InitStructure.CAN_ABOM=ENABLE;# r  L% T$ v( n5 i1 G
    CAN_InitStructure.CAN_AWUM=DISABLE; * u8 b1 ^) m3 p* D* |' v2 _
    CAN_InitStructure.CAN_NART=DISABLE;( r8 S; k$ ?' T" p6 k" t% B" k/ z
    CAN_InitStructure.CAN_RFLM=DISABLE;
. n' {' H& p6 ?, s9 }    CAN_InitStructure.CAN_TXFP=ENABLE; 7 ~  l9 \7 a6 Z6 O- c6 l
    CAN_InitStructure.CAN_Mode=CAN_Mode_Normal;* g) x0 U/ o/ J5 w" o# U5 T
    CAN_InitStructure.CAN_SJW=CAN_SJW_1tq; & B6 l5 x: z/ M! a8 g. s. D
    CAN_InitStructure.CAN_BS1=CAN_BS1_10tq;
  m9 s# d# q$ P* Y" A3 i    CAN_InitStructure.CAN_BS2=CAN_BS2_7tq;7 t, m5 n# K: A
    CAN_InitStructure.CAN_Prescaler=4;
7 G  k& j: c) D; U6 x   
3 E  [8 j7 l3 p% Y; v& p//    CAN_InitStructure.CAN_Mode = CAN_Mode_LoopBack;           // »Ø»·2aêÔÄ£ê½# H+ D* Z* `1 ~

+ ^1 c4 g* r. U    CAN_Init(CAN,&CAN_InitStructure);
3 Q8 {* @* ~" i  ]8 _    /* CAN filter init */1 w4 S5 f$ F, ~
    CAN_FilterInitStructure.CAN_FilterNumber=0;      
! l$ |9 A8 ?1 r/ c    CAN_FilterInitStructure.CAN_FilterMode=CAN_FilterMode_IdMask;    9 }+ E0 E' V5 e7 U
    CAN_FilterInitStructure.CAN_FilterScale=CAN_FilterScale_32bit;
' ?: ?' g9 b- V% y    CAN_FilterInitStructure.CAN_FilterIdHigh=0x0000;
$ V- {" \: V6 N    CAN_FilterInitStructure.CAN_FilterIdLow=0x0000;
* E7 {/ T4 K/ R6 n( r0 o: b    CAN_FilterInitStructure.CAN_FilterMaskIdHigh=0x0000;
+ V+ N" i8 G: O    CAN_FilterInitStructure.CAN_FilterMaskIdLow=0x0000;* ?6 I! q5 X% g0 a6 f
    CAN_FilterInitStructure.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;
2 e# r7 Q6 ]% A2 A9 U% X    CAN_FilterInitStructure.CAN_FilterActivation=ENABLE;
% ]( x0 U( E) N" W    CAN_FilterInit(&CAN_FilterInitStructure);6 K% w/ a6 B3 }$ u& R  u$ X
  " n- N' M, L# T' H; c! \) b& i
         TxMessage.StdId = 0x12;
3 B4 [3 i5 c1 w/ |  h4 ?        TxMessage.ExtId = 0x12;. t1 [: z8 I* R6 G
        TxMessage.RTR = CAN_RTR_Data;           //0x00000000;
/ }  c1 T3 Y; u2 q/ p        TxMessage.IDE = CAN_ID_STD;                    //0x00000000;& p: P- g- |8 I& d3 E& L7 }9 q
        TxMessage.DLC = 8;( T$ c' s  ]8 U5 P5 l$ l
        TxMessage.Data[0] = 0x01;
* l2 P4 X& q, D1 I, K- t1 o        TxMessage.Data[1] = 0x00;
. g. r/ e: g# A8 N0 e        TxMessage.Data[2] = 0x00;; x. V4 w/ x$ L& C4 k$ k9 `
        TxMessage.Data[3] = 0x00;
' A3 I# ~3 y# Q) t0 ]. J8 v5 O        TxMessage.Data[4] = 0x00;1 q3 j- W- `" [5 X5 L
        TxMessage.Data[5] = 0x00;
( u2 _& r' e$ s% E, o# }: ?        TxMessage.Data[6] = 0x00;; i0 ?6 L8 e( s- s
        TxMessage.Data[7] = 0x00;% @+ E0 X/ X; _& D% M
        while (1)+ K1 s: O2 V6 M9 H8 z( H! h
        {
9 G- i; {( h+ e% c9 h1 M3 T- T                GPIO_WriteBit(GPIOB,GPIO_Pin_9,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_9)));8 w4 G. q7 `8 [# H( T
                ii = 0x3fffff;
0 r- e" t! r* b; N, A* f6 H                CAN_Transmit(CAN, &TxMessage);2 u5 T; x4 p7 B& [7 Q6 X  d/ R! A  y
               while(ii--);
: D" W7 D4 U- M- e) \                6 j3 C2 c& y6 m& v* e9 r3 q' X2 Y
        }
( u2 C3 l0 w" \8 X- q}
6 v. f: D( G4 B

该用户从未签到

3#
发表于 2020-10-9 19:21 | 只看该作者
路过的帮你顶一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

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

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

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

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