nzyk 发表于 2025-2-21 17:18

gd32h7+netxduo

基于 官方提供的关于gd32f4移植netxduo 的底层驱动来 移植gd32h7 目前的移植情况呢 是开Cache 网络不通ping不通
不开Cache的情况下网络是能够ping通的
mpu 配置
       
   mpu_init_struct.region_base_address = 0x30000000;
    mpu_init_struct.region_size = MPU_REGION_SIZE_32KB;
    mpu_init_struct.access_permission = MPU_AP_FULL_ACCESS;
    mpu_init_struct.access_bufferable = MPU_ACCESS_BUFFERABLE;
    mpu_init_struct.access_cacheable = MPU_ACCESS_NON_CACHEABLE;
    mpu_init_struct.access_shareable = MPU_ACCESS_NON_SHAREABLE;
    mpu_init_struct.region_number = MPU_REGION_NUMBER1;
    mpu_init_struct.subregion_disable = MPU_SUBREGION_ENABLE;
    mpu_init_struct.instruction_exec = MPU_INSTRUCTION_EXEC_PERMIT;
    mpu_init_struct.tex_type = MPU_TEX_TYPE0;

if defined   (__CC_ARM)                                    /*!< ARM compiler */
__attribute__((section (".RAM_D2")))enet_descriptors_structrxdesc_tab;      /*!< ENET RxDMA descriptor */
__attribute__((section (".RAM_D2")))enet_descriptors_structtxdesc_tab;      /*!< ENET TxDMA descriptor */
__attribute__((section (".RAM_D2")))uint8_t rx_buff;         /*!< ENET receive buffer */
__attribute__((section (".RAM_D2")))uint8_t tx_buff;         /*!< ENET transmit buffer */

RAM_D2地址划分如下:
; RW data -SRAM0(0x30000000) + SRAM1(0x30004000) 16 + 16 = 32kb
RW_IRAM4 0x30000000 0x00008000 {
        *(.RAM_D2)
}

       


页: [1]
查看完整版本: gd32h7+netxduo