打印

从STM32F429迁移到GD32F450时,以太网驱动程序可能需要进行调整

[复制链接]
2145|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kepe|  楼主 | 2024-5-31 23:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 kepe 于 2024-6-1 08:47 编辑

从STM32F429迁移到GD32F450时,以太网驱动程序可能需要进行调整。GD32F450和STM32F429虽然在很多方面兼容,但它们的外设细节和驱动程序可能有些许不同。因此,确保使用适用于GD32F450的正确驱动程序是关键。
1. 驱动程序更新
首先,确认您正在使用GD32F450的官方以太网驱动程序。GD32F450的驱动程序可以从GigaDevice的官方网站或相关的开发资源中获得。

2. 确认硬件配置
确保GD32F450的硬件配置与STM32F429一致,特别是在以太网PHY芯片和相关引脚连接上。检查硬件配置,包括时钟设置、引脚复用等。

3. 适配驱动程序
将GD32F450的以太网驱动程序与现有项目集成,并进行必要的适配。以下是一些关键点:

使用特权

评论回复
沙发
kepe|  楼主 | 2024-5-31 23:40 | 只看该作者
本帖最后由 kepe 于 2024-6-1 08:49 编辑

配置系统时钟
GD32F450的时钟配置可能与STM32F429不同。确保系统时钟和以太网时钟正确配置。以下是一个示例:

c
void SystemClock_Config(void)
{
    // 配置GD32F450的系统时钟
    // 根据您的具体需求配置时钟源、PLL、分频器等
}


使用特权

评论回复
板凳
kepe|  楼主 | 2024-5-31 23:40 | 只看该作者
本帖最后由 kepe 于 2024-6-1 08:50 编辑

初始化以太网外设
确保以太网外设的初始化代码与GD32F450兼容。以下是一个简化的示例:

c

void Ethernet_Init(void)
{
    // 启用以太网时钟
    rcu_periph_clock_enable(RCU_ETH);

    // 配置以太网引脚
    // 使用GD32F450的GPIO库函数配置引脚复用
    gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_1 | GPIO_PIN_2 | GPIO_PIN_7);
    gpio_af_set(GPIOA, GPIO_AF_11, GPIO_PIN_1 | GPIO_PIN_2 | GPIO_PIN_7);

    // 其他引脚配置
    // ...

    // 配置以太网
    eth_deinit();
    eth_init();
}


使用特权

评论回复
地板
kepe|  楼主 | 2024-5-31 23:40 | 只看该作者
本帖最后由 kepe 于 2024-6-1 08:50 编辑

处理中断
确保以太网中断处理程序与GD32F450的中断配置匹配。以下是一个示例:

c

void ETH_IRQHandler(void)
{
    // 处理以太网中断
    // 确保使用GD32F450的中断处理函数
    if (eth_interrupt_flag_get(ETH_INT_RPS))
    {
        eth_interrupt_flag_clear(ETH_INT_RPS);
        // 处理接收数据
    }
    if (eth_interrupt_flag_get(ETH_INT_TPS))
    {
        eth_interrupt_flag_clear(ETH_INT_TPS);
        // 处理发送数据
    }
}


使用特权

评论回复
5
夜游神ss| | 2024-6-4 15:35 | 只看该作者
给一个

使用特权

评论回复
6
FranklinUNK| | 2024-6-20 19:41 | 只看该作者
把底层的库替换一下应该就行吧

使用特权

评论回复
7
有何不可0365| | 2024-7-31 21:45 | 只看该作者
功能测试

在迁移完成后,对以太网通信进行功能测试,确保数据传输正常。
通过ping命令测试连接稳定性,传输文件或数据包测试实际性能。

使用特权

评论回复
8
亚瑟| | 2024-7-31 22:06 | 只看该作者
直接按照程序逻辑重写一遍

使用特权

评论回复
9
发货后已经wi| | 2024-9-30 23:45 | 只看该作者
但它们的外设细节和驱动程序可能有些许不同

使用特权

评论回复
10
nqty| | 2024-10-14 15:37 | 只看该作者
从STM32F429迁移到GD32F450时,以太网驱动程序可能需要进行调整的位置主要包括硬件寄存器映射

使用特权

评论回复
11
ewyu| | 2024-10-14 16:32 | 只看该作者
STM32和GD32的硬件寄存器映射可能有所不同,因此需要检查并更新寄存器地址和位域定义

使用特权

评论回复
12
清芯芯清| | 2024-10-14 17:38 | 只看该作者
确保以太网相关的中断处理函数和优先级配置正确。

使用特权

评论回复
13
hight1light| | 2024-10-14 19:00 | 只看该作者
DMA配置,确保以太网DMA的配置正确,包括DMA通道、数据流和优先级

使用特权

评论回复
14
hhdhy| | 2024-10-14 19:12 | 只看该作者
PHY配置可能需要修改,保证PHY芯片的配置正确,包括复位、速度和双工模式

使用特权

评论回复
15
tiakon| | 2024-10-14 20:29 | 只看该作者
检查以太网驱动程序的软件层,确保所有函数和宏定义正确

使用特权

评论回复
16
teaccch| | 2024-10-14 21:00 | 只看该作者
在迁移完成后,进行全面的调试和验证,确保以太网功能正常工作

使用特权

评论回复
17
gongqijuns| | 2024-10-15 09:05 | 只看该作者
直接参考例程呗,我觉得GD应该也有相关的例程吧

使用特权

评论回复
18
eleg34ance| | 2024-10-15 11:16 | 只看该作者
其实有些时候,按照ST的例子直接改到GD的是可以的

使用特权

评论回复
19
gra22ce| | 2024-10-15 12:46 | 只看该作者
建议直接看看ST移植GD的手册,一般GD的官网会有

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

207

帖子

0

粉丝