跳转至内容
  • 版块
  • 最新
  • 标签
  • 热门
折叠
品牌标识

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. ME05 CAN123 初始化后无法正常收发

ME05 CAN123 初始化后无法正常收发

已定时 已固定 已锁定 已移动 YTM32B1M系列
18 帖子 3 发布者 339 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • swustS 离线
    swustS 离线
    swust YunTu
    编写于 最后由 编辑
    #9

    可以上传的,方便发的话

    lxwL 1 条回复 最后回复
    0
    • lxwL 离线
      lxwL 离线
      lxw
      回复了swust 最后由 编辑
      #10

      swust flexcan_state_t flexcanInitConfig1_State;

      flexcan_user_config_t flexcanInitConfig1 = {
      .max_num_mb = 64UL,
      .num_id_filters = FLEXCAN_RX_FIFO_ID_FILTERS_8,
      .is_rx_fifo_needed = false,
      .flexcanMode = FLEXCAN_NORMAL_MODE,
      .payload = FLEXCAN_PAYLOAD_SIZE_8,
      .fd_enable = false,
      .pe_clock = FLEXCAN_CLK_SOURCE_PERIPH,
      .transfer_type = FLEXCAN_RXFIFO_USING_INTERRUPTS,
      .bitrate = {
      .propSeg = 4, /!< Propagation segment/
      .phaseSeg1 = 6, /!< Phase segment 1/
      .phaseSeg2 = 2, /!< Phase segment 2/
      .preDivider = 14, /!< Clock prescaler division factor/
      .rJumpwidth = 1, /!< Resync jump width/
      },
      .bitrate_cbt = {
      .propSeg = 6, /!< Propagation segment/
      .phaseSeg1 = 2, /!< Phase segment 1/
      .phaseSeg2 = 1, /!< Phase segment 2/
      .preDivider = 0, /!< Clock prescaler division factor/
      .rJumpwidth = 1, /!< Resync jump width/
      },
      .rxFifoDMAChannel=0,
      .rxFifoDMALastWord=0,
      .is_enhance_rx_fifo_needed=false,
      .num_enhance_rx_fifo_filters=0,
      .num_enhance_rx_fifo_extid_filters=0,
      .num_enhance_rx_fifo_min_messages=0,
      };

      uint32_t CAN_PTCAN_RXMB_INDEX[CAN_PTCAN_RX_MB_NUM] = {

      0x000,
      

      };
      //for Rx ID
      uint32_t CAN_PTCAN_RXMB_ID[CAN_PTCAN_RX_MB_NUM] = {
      0x000,
      };

      //for Rx ID mask
      uint32_t CAN_PTCAN_RXMB_IDMask[CAN_PTCAN_RX_MB_NUM] = {
      0x7ff,
      };
      flexcan_msgbuff_t CanPTCAN_RxPduInfo; //fifo接收缓存

      pin_settings_config_t g_pin_mux_CAN1[2] = {
      // CAN1_RX
      {
      .base = PCTRLC,
      .pinPortIdx = 6U,
      .pullConfig = PCTRL_INTERNAL_PULL_NOT_ENABLED,
      .passiveFilter = false,
      .mux = PCTRL_MUX_ALT3,
      .intConfig = PCTRL_INT_FALLING_EDGE,
      .clearIntFlag = true,
      .gpioBase = GPIOC,
      .digitalFilter = false,
      },
      // CAN1_TX
      {
      .base = PCTRLC,
      .pinPortIdx = 7U,
      .pullConfig = PCTRL_INTERNAL_PULL_NOT_ENABLED,
      .passiveFilter = false,
      .mux = PCTRL_MUX_ALT3,
      .intConfig = PCTRL_DMA_INT_DISABLED,
      .clearIntFlag = false,
      .gpioBase = GPIOC,
      .digitalFilter = false,
      }
      };
      static void CAN_MBConfig(uint8_t CAN_Chanel, uint32_t *mbIndex, uint32_t *CanId, uint32_t *IdMask, uint8_t FilterNum, flexcan_msgbuff_t *messagePduInfo)
      {
      uint8_t index = 0;

      for (index = 0; index < FilterNum; index++)
      {
          FLEXCAN_DRV_ConfigRxMb(CAN_Chanel, mbIndex[index], &rxMbStdCfg, CanId[index]);
          FLEXCAN_DRV_SetRxIndividualMask(CAN_Chanel, FLEXCAN_MSG_ID_STD, mbIndex[index], IdMask[index]);
          FLEXCAN_DRV_Receive(CAN_Chanel, mbIndex[index], messagePduInfo);
      }
      

      }
      void Can1_Init()
      {
      status_t status1 = STATUS_SUCCESS;
      status1 |= PINS_DRV_Init(2, g_pin_mux_CAN1);
      status1 |= FLEXCAN_DRV_Init(CAN1_INST, &PEcanState, &flexcanInitConfig1);
      FLEXCAN_DRV_InstallEventCallback(CAN1_INST, Can1InterruptCallback, NULL);
      //使用 Individual Mask,使能 FIFO
      FLEXCAN_DRV_SetRxMaskType(CAN1_INST, FLEXCAN_RX_MASK_INDIVIDUAL);

      CAN_MBConfig(CAN1_INST, CAN_PTCAN_RXMB_INDEX, CAN_PTCAN_RXMB_ID, CAN_PTCAN_RXMB_IDMask, CAN_PTCAN_RX_MB_NUM, &CanPTCAN_RxPduInfo);
      

      }

      1 条回复 最后回复
      0
      • lxwL 离线
        lxwL 离线
        lxw
        回复了swust 最后由 编辑
        #11

        swust 58ea2239-6064-4481-8b6d-7e06aaad89bb-image.png
        有这个demo吗 可以换成新的SDK我看看不,我没权限通过配置工具打开,帮忙配两个通道呢,一个CAN0,一个CAN3

        swustS 1 条回复 最后回复
        0
        • swustS 离线
          swustS 离线
          swust YunTu
          编写于 最后由 编辑
          #12

          CAN0OK_CAN1NOK.zip

          1 条回复 最后回复
          0
          • swustS 离线
            swustS 离线
            swust YunTu
            编写于 最后由 编辑
            #13

            这是根据你的代码建的一个工程,通信正常。
            image.png
            image.png

            1 条回复 最后回复
            0
            • swustS 离线
              swustS 离线
              swust YunTu
              编写于 最后由 编辑
              #14

              配置应该没啥问题,请着重检查一下硬件

              lxwL 2 条回复 最后回复
              0
              • lxwL 离线
                lxwL 离线
                lxw
                回复了swust 最后由 编辑
                #15

                swust 在 ME05 CAN123 初始化后无法正常收发 中说:

                配置应该没啥问题,请着重检查一下硬件

                我用你们demo板 试试你发的工程 对比测试一下

                1 条回复 最后回复
                0
                • lxwL 离线
                  lxwL 离线
                  lxw
                  回复了swust 最后由 编辑
                  #16

                  swust 4bf0fc84-0a3d-4ae1-b22e-ac6e4132c5a2-image.png 你发的工程 我也打不开 这个找代理吗

                  swustS 1 条回复 最后回复
                  0
                  • swustS 离线
                    swustS 离线
                    swust YunTu
                    回复了lxw 最后由 编辑
                    #17

                    lxw 直接用vscode打开就行。没有权限在用户系统提个申请。80a1a780-0eec-4535-b304-acb73adad91a-image.png

                    1 条回复 最后回复
                    0
                    • swustS 离线
                      swustS 离线
                      swust YunTu
                      回复了lxw 最后由 编辑
                      #18

                      lxw CAN0_demo.zip

                      1 条回复 最后回复
                      0

                    • 云途开发生态介绍

                      快速上手云途开发生态

                    • 云途论坛规则/Yuntu Forum Rules

                      发帖前请查看

                    • YT CONFIG TOOL调查问卷

                      帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...

                    • can
                      24
                      demo
                      20
                      uds
                      13
                      lin stack
                      12
                      md14
                      6
                      fbl
                      5
                      yt-link
                      5
                      adc模块
                      4
                      Online Users
                      yt0222Y
                      yt0222
                      • 登录

                      • 登录或注册以进行搜索。
                      • 第一个帖子
                        最后一个帖子
                      0
                      • 版块
                      • 最新
                      • 标签
                      • 热门