你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 1221|回复: 1

【MCU实战经验】+说说自己项目中遇到的几个揪心事

[复制链接]

7

主题

78

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
发表于 2014-4-5 23:27:29 | 显示全部楼层 |阅读模式
        哎,做个项目木有想到就会遇到这么多鸡肋的事,做硬件的是个二把刀,之前没接触过stm32,因为一开始外部晶振采购那边一直没送过来,所以一开始干脆没有加上去,程序也就使用内部晶振什么都调试的好好的,就等外部晶振贴上去就完事了,然后纠结的事就来了,一搞到外部晶振就完全不对头了,郁闷之余找示波器,晶振有输出,为什么时间就是不对头呢,检查电路也没发现什么问题啊,找做硬件的请教,这个问题拖了两天,等得不耐烦了,我就一点一点着重的看了看手册关于时钟这一块,最终初步判定是起震电容不匹配的问题,跑去找硬件确认,我擦,果然给我整了一12p的电容,而stm32上严格要求6p的。
         后来一切顺顺利利的项目搞定了,老大过来说看看能不能把功耗降一降,我说好,首先就把不用的IO口给处理了,一不留神就把J-link要用到的下载口也给搞了,下载了一块,恩还不错,整了程式之后,功耗降了不少,可是当我再下载更新程式时候,下载不了了,我没太在意,换了一块然后同样的问题又出现了,我哩个纠结,由于使用的cpu是64脚的bga封装,4mm*4mm的,所以焊接成功率惨不忍睹,一下子把仅有的俩块都搞没戏了,一下子慌了神,然后淡定下来,确定就是传说中的”自锁“,⊙﹏⊙b汗,捋顺情绪后,还好我的串口还在,使用串口刷了一下程式,一切ok。。
        熬了那么些天终于等到给客户一个答案的时候了,正暗自庆幸,客户打来电话说使用台湾的路由器不能自由获取ip,而大陆的没有遇到这个问题,一开始我以为那边路由器难道需要什么特殊设置?还是客户没有设置正确?最终把台湾的路由器拿到手之后,认真的阅读使用说明书,没错啊,确实获取不到ip,什么情况?也不多想,那就抓包吧,看看dhcp的通信协议到底哪里出了问题,看了n遍格式没有错额,再看额问题出来了,看看下边我的笔记吧。。
 
https://www.stmcu.org.cn/file:///C:/Users/Administrator/AppData/Local/YNote/data/landiaojiekou@163.com/db8d1ad240f54ea7a79c65f4259c3aeb/clipboard.png
dhcp 基本工作流程.png
 
在DHCP的广播包中包含的MAC地址中第一位第8字节的奇偶决定着组播或者单播(具体的可以参见关于MAC地址影响单(组)播等的解释 这篇笔记中的讲解),大陆的路由器不影响,但是使用台湾的路由器时候就出现不能自由分配IP的问题。图解见附件。
其实问题的关键在于MAC地址给的出了问题,后边是重点额,呵呵,48bit的MAC地址一般用6字节的十六进制来表示,如XX-XX-XX-XX-XX。IEEE 802.3规定:以太网的第48bit用于表示这个地址是组播地址还是单播地址。而大陆的路由器dhcp协议做的要求宽松一些,台湾的就相对严格。
 
看一下大陆的路由器抓到的包:
 
大陆路由器的数据抓包.png
 
再看看台湾的路由器抓到的数据包:
 
台湾路由器的数据抓包.png
 
发现问题了吧,呵呵。
 
<
回复

使用道具 举报

7

主题

78

回帖

0

蝴蝶豆

新手上路

最后登录
1970-1-1
 楼主| 发表于 2014-4-9 20:40:31 | 显示全部楼层

RE:【MCU实战经验】+说说自己项目中遇到的几个揪心事

自己顶一下
回复 支持 反对

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版