打印
[STM32F4]

DM9000 + LWIP 和系统时钟的一些问题

[复制链接]
188|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
如题使用STMF4 + DM9000 + LWIP搭建tcp服务器,现有新旧板子和新旧程序。新旧班子只有外部晶振不同。
旧板子使用12M外部晶振,旧程序的系统时钟设置HSE_VALUE为12M,PLL_M为25,如下图。


新板子使用10M外部晶振,新程序重写的架构,开始设置HSE_VALUE为10M,PLL_M为10,此时串口可以正常通信,但网络一直ping不通。
然后我用旧程序不做任何修改直接下载到新板子中,网络居然可以通,期初我以为是驱动还是初始化啥的不对,一点一点看了大半天没找出问题,后来我照着旧程序把我新程序设置也改成HSE_VALUE为12M,PLL_M为25,然后网络就通了,但是串口发乱码。
这个问题真的把我搞晕了,旧程序的时钟设置我也没搞懂,这样设置系统时钟算出来12/25*336/2大概是八十多mhz吧,f4不是系统时钟168mz吗。
另外我的认知里lwip跟时钟有关系的只有定时器给lwip一个基准时钟,我之前看定时器中断也一直是正常触发的,DM9000好像也和时钟没什么关系,现在对系统时钟的认识完全被推翻了

39802632bced6b0b86.png (168.02 KB )

39802632bced6b0b86.png

使用特权

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

本版积分规则

5

主题

11

帖子

0

粉丝