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

YunTu Forum

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

YTM32B1ME05的SPI速率问题

已定时 已固定 已锁定 已移动 YTM32B1M系列
15 帖子 6 发布者 121 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 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
    • quanfengQ 离线
      quanfengQ 离线
      quanfeng 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 条回复 最后回复
                                0

                              • 云途论坛规则/Yuntu Forum Rules

                                发帖前请查看

                              • YCT离线License申请流程

                                帮助没办法联网的电脑使用YCT

                              • YT CONFIG TOOL调查问卷

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

                              • demo
                                14
                                can
                                9
                                lin stack
                                6
                                yt-link
                                5
                                adc模块
                                3
                                vscode
                                3
                                i2c
                                2
                                uuid
                                2
                                Online Users
                                • 登录

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