CH569的HSPI

看手册写的最高速度达到3.8Gbps,有测试Demo吗。

用HSPI_BurstMode代码测试的感觉速度也就300MByte/s+,不知道是哪出的问题,求解答。

还有HSPI的代码里的串口波特率都是921600下进去之后跑不起来,改成115200可以跑


SPI的初始化部分 楼主能共享下不,我用的普通的SPI1输出无任何数据


您好,可以把配置SPI1部分的代码贴出来看一下呢


SPI1初始化程序

void SPI1_MasterDefInit( void )

{

    R8_SPI1_CLOCK_DIV = 4;                                   //主频时钟4分频

    R8_SPI1_CTRL_MOD = RB_SPI_ALL_CLEAR;

    R8_SPI1_CTRL_MOD = RB_SPI_MOSI_OE | RB_SPI_SCK_OE ;

    R8_SPI1_CTRL_CFG |= RB_SPI_AUTO_IF;

    R8_SPI1_CTRL_CFG &= ~RB_SPI_DMA_ENABLE;                  //不启动DMA方式

    //R8_SPI1_CTRL_CFG |= RB_SPI_DMA_ENABLE;                 //启动DMA方式

}



主程序:

int main()

{  


UINT8 i;


SystemInit(FREQ_SYS);

    Delay_Init(FREQ_SYS);


    GPIOA_ModeCfg( GPIO_Pin_12, GPIO_Slowascent_PP_8mA );

    GPIOA_SetBits(GPIO_Pin_12);


    /*配置串口调试 */

DebugInit(115200);

printf("Start @ChipID=%02X\r\n", R8_CHIP_ID );


/* 主机模式  */

    printf( "1.spi1 mul master mode send data ...\n");

    DelayMs( 100 );


    R32_PB_OUT |= 1<<11;


    R32_PB_PD  &= ~(1<<11 | 1<<12 | 1<<13 );

    R32_PB_DRV &= ~(1<<11 | 1<<12 | 1<<13 );

    R32_PB_DIR |= (1<<11 | 1<<12 | 1<<13 );


    SPI1_MasterDefInit( );


    GPIOA_ResetBits(GPIO_Pin_12);


// 单字节发送

    R32_PB_CLR |= 1<<11;


    SPI1_MasterSendByte(0x55);


    R32_PB_OUT |= 1<<11;


    DelayMs( 1 );


// FIFO 连续发送

    R32_PB_CLR |= 1<<11;


SPI1_MasterTrans( spiBuff, 9 );


R32_PB_OUT |= 1<<11;


DelayMs( 1 );


    while(1);    

}





你好,问下是用的两块CH569测试的吗,上端板给下端板发数据,32根数据线,全速300MB/s


只有登录才能回复,可以选择微信账号登录