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

YunTu Forum

YTMicro.com
  1. 主页
  2. Discussion & Question
  3. YTM32B1M系列
  4. YTM32B1ME05的SPI速率问题

YTM32B1ME05的SPI速率问题

已定时 已固定 已锁定 已移动 已解决 YTM32B1M系列
15 帖子 6 发布者 3.6k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • yanglusiY 离线
    yanglusiY 离线
    yanglusi
    写于 最后由 编辑
    #1
    spi_state_t lpspi_MasterConfig0_State;
    const spi_master_config_t lpspi_MasterConfig0 = {
        .bitsPerSec=40000000U,
        .whichPcs=SPI_PCS0,
        .pcsPolarity=SPI_ACTIVE_LOW,
        .isPcsContinuous=false,
        .bitcount=8,
        .clkPhase=SPI_CLOCK_PHASE_1ST_EDGE,
        .clkPolarity=SPI_SCK_ACTIVE_HIGH,
        .lsbFirst=false,
        .transferType=SPI_USING_INTERRUPTS,
        .rxDMAChannel=1,
        .txDMAChannel=0,
        .callback=NULL,
        .callbackParam=NULL,
        .width=SPI_SINGLE_BIT_XFER,
    };
    
    
    peripheral_clock_config_t clock_config0PeripheralClockConfig[4] = {
        {
            .clkName = DMA_CLK,
            .clkGate = true,
            .divider = DIV_BY_1,
            .clkSrc = CLK_SRC_DISABLED,
        },
        {
            .clkName = GPIO_CLK,
            .clkGate = true,
            .divider = DIV_BY_1,
            .clkSrc = CLK_SRC_PLL,
        },
        {
            .clkName = LINFlexD2_CLK,
            .clkGate = true,
            .divider = DIV_BY_1,
            .clkSrc = CLK_SRC_DISABLED,
        },
        {
            .clkName = SPI4_CLK,
            .clkGate = true,
            .divider = DIV_BY_3,
            .clkSrc = CLK_SRC_PLL,
        },
    };
    
    const scu_config_t clock_config0ScuConfig = {
        .fircEnable = true,
        .fircDeepSleepEnable = false,
        .sircDeepSleepEnable = true,
        .sircStandbyEnable = true,
        .sircPowerDownEnable = true,
        .sysClkSrc = SCU_SYSTEM_CLOCK_SRC_PLL,
        .fxoscConfig =
            {
                .enable = true,
                .bypassMode = false,
                .gainSelection = 5,
                .frequency = 24000000U,
            },
        .sxoscConfig = 
            {
                .enable = false,
                .gainSelection = 0,
                .bypassMode = false,
                .deepsleepEnable = false,
                .standbyEnable = false,
                .powerdownEnable = false,
                .frequency = 32768U,
            },
        .pllConfig =
            {
                .enable = true,
                .pllRefClock = SCU_PLL_REF_FXOSC_CLK,
                .pllFeedBackDiv = 10,
                .pllRefClkDiv = 1,
            },
        .sysDiv = SCU_SYS_CLK_DIV_BY_1,
        .fastBusDiv = SCU_SYS_CLK_DIV_BY_1,
        .slowBusDiv = SCU_SYS_CLK_DIV_BY_3,
        .flashDiv = SCU_SYS_CLK_DIV_BY_3,
        .clockOutConfig =
            {
                .enable = false,
                .source = SCU_CLKOUT_SEL_PLL_CLK,
                .divider = 1
            },
    };
    

    这样配置SCLK的时钟频率应该是40MHZ,但是测试只有20MHZ,94f22981-d349-497a-836d-4eefb485ca6f-image.png

    1 条回复 最后回复
    0
    • yanglusiY 离线
      yanglusiY 离线
      yanglusi
      在 回复了 Diga 最后由 yanglusi 编辑
      #4

      Diga 早上好,我想配成40M的速率应该怎么配置,PLL时钟为120MHZ

      1 条回复 最后回复
      0
      • KirkK 离线
        KirkK 离线
        Kirk YunTu
        写于 最后由 编辑
        #2

        .bitsPerSec 的值应该跟实际 SCLK 成两倍的关系,可以试一下将 .bitsPerSec 的值改为 50MHz,实测应该是 25MHz

        1 条回复 最后回复
        0
        • DigaD 离线
          DigaD 离线
          Diga
          写于 最后由 编辑
          #3

          你配置的SPI的功能时钟为 PLL/3=40M,这是无法配置20M以上的通信速率的。

          img_v3_02nq_e763ab16-9faf-496e-b5fe-7d3c31b8a8eg.jpg

          yanglusiY 1 条回复 最后回复
          0
          • yanglusiY 离线
            yanglusiY 离线
            yanglusi
            在 回复了 Diga 最后由 yanglusi 编辑
            #4

            Diga 早上好,我想配成40M的速率应该怎么配置,PLL时钟为120MHZ

            1 条回复 最后回复
            0
            • yanglusiY 离线
              yanglusiY 离线
              yanglusi
              写于 最后由 编辑
              #5

              image.png配置工具是不是有BUG,只能3分频,大于40MHZ就报错

              1 条回复 最后回复
              0
              • WRW 离线
                WRW 离线
                WR YunTu
                写于 最后由 编辑
                #6

                这个不是bug,他要求输入的最大时钟频率是40Mhz

                1 条回复 最后回复
                0
                • WRW 离线
                  WRW 离线
                  WR YunTu
                  写于 最后由 编辑
                  #7

                  你必须配置时钟频率小于等于40Mhz

                  yanglusiY 1 条回复 最后回复
                  0
                  • yanglusiY 离线
                    yanglusiY 离线
                    yanglusi
                    在 回复了 WR 最后由 编辑
                    #8

                    WR 你好,我现在是配置等于输入时钟40Mhz,如何配置成SPI速率40MHZ,还有SPI的DMA发送最大字节数不能大于等于32768?

                    1 条回复 最后回复
                    0
                    • runR 离线
                      runR 离线
                      run YunTu
                      写于 最后由 run 编辑
                      #9

                      最大的配置就是:

                      • IPC界面的SPI功能时钟最大到40MHz
                      • SPI总线上CLK 最大也就是20MHz(作为Master)
                      • 如果作为Slave,要求总线上CLK 最大是10MHz

                      发送最大字节,按照API应该是uint16_t, 65535字节

                      yanglusiY 1 条回复 最后回复
                      0
                      • yanglusiY 离线
                        yanglusiY 离线
                        yanglusi
                        在 回复了 run 最后由 编辑
                        #10

                        run 实测是,DMA模式下大于等于32768就发不出来,中断模式就可以

                        FrankF 1 条回复 最后回复
                        0
                        • FrankF 离线
                          FrankF 离线
                          Frank YunTu
                          在 回复了 yanglusi 最后由 编辑
                          #11

                          yanglusi DMA TCNT为14为位,超出肯定不行的。54d90edf-d0f1-4900-aabd-c1564cf08599-image.png
                          使用DMA需要分开多次发送

                          yanglusiY 1 条回复 最后回复
                          0
                          • yanglusiY 离线
                            yanglusiY 离线
                            yanglusi
                            在 回复了 Frank 最后由 编辑
                            #12

                            Frank OK,了解了

                            1 条回复 最后回复
                            0
                            • yanglusiY 离线
                              yanglusiY 离线
                              yanglusi
                              写于 最后由 编辑
                              #13

                              支持DUAL SPI或者QSPI吗

                              1 条回复 最后回复
                              0
                              • yanglusiY 离线
                                yanglusiY 离线
                                yanglusi
                                写于 最后由 编辑
                                #14

                                Frank 支持DUAL SPI或者QSPI吗

                                1 条回复 最后回复
                                0
                                • yanglusiY 离线
                                  yanglusiY 离线
                                  yanglusi
                                  写于 最后由 编辑
                                  #15

                                  image.png

                                  1 条回复 最后回复
                                  -1
                                  • ,FrankieF Frankie 将这个主题转为问答主题
                                  • ,FrankieF Frankie 将这个主题标记为已解决

                                • 云途开发生态介绍

                                  快速上手云途开发生态

                                • 云途论坛规则/Yuntu Forum Rules

                                  发帖前请查看

                                • YT CONFIG TOOL调查问卷

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

                                • can
                                  25
                                  demo
                                  22
                                  lin stack
                                  13
                                  uds
                                  13
                                  md14
                                  6
                                  yt-link
                                  6
                                  fbl
                                  5
                                  adc模块
                                  4
                                  Online Users
                                  • 登录

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