打印

一线研发之声---软硬交互“自学习匹配”的秘密

[复制链接]
5226|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sedatefire|  楼主 | 2014-5-27 15:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1. 一个IO,三态法!
    通常的做法是,一个IO,上拉电阻,下拉电阻,就识别两种机型。
    问题是,如果生产是电阻漏上怎么办?
    所以软件的识别写法要利用mcu的IO机制,利用上下拉输入各读几次交叉验证。
    这个时候,你突然发现,这种机制可以使软件利用一个IO识别三种机型。
    2个IO就九种方案哦,三个IO就27种哦,绝对够用了。
    三种状态:上拉/下拉和浮空,你懂了吗?

2. 分压法,一个IO,接上不同的分压电阻,那么不同的电压刻度表示不同的硬件版本。
    注意:电阻会老化衰减,分压刻度的间距要足够开,给老化留下空间。

3. 电容充电法。
    IO上串个电容,给它充电,看放电时间来决定。
    注意:老化,衰减,同上。

4. 外围设备的器件ID。
    如果不同的硬件版本上的外围设备ID有异,那自然也可以用来识别硬件版本。

5. 其他的组合方案
   按理说,上述几种方案的组合已经足够穷尽想象力了。
   但有的时候吧,穷到连一根识别IO都挤不出来的,外设也都是廉价到没有ID让你读的。

   这是时候就需要展现个人价值的时候了,我讲一个自己的事儿来说说吧。
   我做过一个案子,新版本换了颗无线解码IC的型号,更廉价距离更远。
   坑爹的是,两颗IC的片选线的有效电平相斥,硬件为节约成本,也不做兼容,也不给识别机制,
   而且因为通信协议兼容的关系,要求软件必须同一套。
   各种抗拒抵触不可能啊,那个抓耳挠腮啊,
   天可怜见,我在示波器上发现,在片选有效时这些IC的data脚会疯狂的输出散乱杂波,无效时io如水平淡,顿时**一闪:最终,我在上电时周期翻转那根片选线,我扫描计数data的电平变化次数,timeout时间后判断识别结果。
   最后,还是发生了一些小概率事故,有些ic,在片选有效时,也不会有波形,尤其是在生产的抗屏蔽房里面装机时。未能识别正确的片选有效电平,导致仓储的时候电池狂漏电。
   于是最后打了个补丁,上电后进入识别流程,没识别出来之前软关机时我就哔哔惨叫:“要死啦要死啦,IC未识别不能睡啊,会睡死掉的”。
   再加一个工艺流程:用无线发送设备加速触发自学习。





相关帖子

沙发
sedatefire|  楼主 | 2014-5-27 15:05 | 只看该作者
思来想去,决定在新手园地首发
聊尽版主之责

使用特权

评论回复
板凳
dirtwillfly| | 2014-5-27 16:04 | 只看该作者
学习了,长见识

使用特权

评论回复
地板
elec921| | 2014-5-28 09:18 | 只看该作者
很好很搞笑

使用特权

评论回复
5
gcxzhz| | 2014-5-28 10:13 | 只看该作者
1. 一个IO,三态法!
   
见这个帖子
https://bbs.21ic.com/icview-644922-1-1.html
以前就有人提出了这个问题 最终有人还给解决了
  2点之前找到了 我电脑是1:59 结果发不上拉了 只好早上发了

使用特权

评论回复
6
sedatefire|  楼主 | 2014-5-28 11:56 | 只看该作者
gcxzhz 发表于 2014-5-28 10:13
1. 一个IO,三态法!
   
见这个帖子

谢谢

使用特权

评论回复
7
yyuukk| | 2014-5-29 11:22 | 只看该作者

楼主辛苦了      

使用特权

评论回复
8
tuzihog| | 2014-5-29 20:01 | 只看该作者
关注一下

使用特权

评论回复
9
gxliu08| | 2014-5-30 20:46 | 只看该作者
工程经验

使用特权

评论回复
10
mcuisp| | 2014-5-31 11:56 | 只看该作者
此声不可取,未document的特性,千万不要去利用!

使用特权

评论回复
11
sedatefire|  楼主 | 2014-6-3 08:55 | 只看该作者
mcuisp 发表于 2014-5-31 11:56
此声不可取,未document的特性,千万不要去利用!

未doc何解? 愿闻其详...

使用特权

评论回复
12
mcuisp| | 2014-6-3 12:25 | 只看该作者
sedatefire 发表于 2014-6-3 08:55
未doc何解? 愿闻其详...

undocument

使用特权

评论回复
13
sedatefire|  楼主 | 2014-6-4 09:07 | 只看该作者
mcuisp 发表于 2014-6-3 12:25
undocument

谢谢你,让我知道一个新单词,而且印象深刻。
这些技术,都是我上一家公司在用多年的。只是细节我不便公布,原理大概如此。


undocumented生词本
英 [ˌʌn'dɒkjʊmentɪd] 美 [ˌʌn'dɑ:kjʊmentɪd]
adj. 无正式文件的,无事实证明的
网 络
未公开的; 没有记录的; 无文件证明的; 解除坞接

使用特权

评论回复
14
sioca| | 2014-6-10 18:22 | 只看该作者
RFIC RESCIVER 在工作时DATAOUT脚疯狂输出白噪声是正常特性,不是undocumented

使用特权

评论回复
15
W_fantasy| | 2014-10-25 21:01 | 只看该作者
其实我想说,作为一个玩过单片机的,除了知道楼主写的“IO”是什么意思,其余像是在看天书!

使用特权

评论回复
16
sedatefire|  楼主 | 2014-10-27 12:10 | 只看该作者
W_fantasy 发表于 2014-10-25 21:01
其实我想说,作为一个玩过单片机的,除了知道楼主写的“IO”是什么意思,其余像是在看天书![em ...

有回复就是一种缘分啊
你估计从业不深,如果你经历过一个产品,迭代个5版硬件以上,或者有众多的客户差异化分支,你就会知道这篇**的含义和价值了。

使用特权

评论回复
17
W_fantasy| | 2014-10-27 13:45 | 只看该作者
sedatefire 发表于 2014-10-27 12:10
有回复就是一种缘分啊
你估计从业不深,如果你经历过一个产品,迭代个5版硬件以上,或者有众多的客户差异 ...

恩,继续学习!

使用特权

评论回复
18
afei8856| | 2014-11-25 14:48 | 只看该作者
多谢版主的经验共享

使用特权

评论回复
19
极光大侠| | 2014-12-10 13:49 | 只看该作者
没这样玩过,算是长见识吧

使用特权

评论回复
20
lqk0819| | 2017-5-14 16:31 | 只看该作者
不知道是不是跟行业有关,写了好几年的单片机程序,很少仔细研究过这些问题,顶这些技术达人!

使用特权

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

本版积分规则

个人签名:我为我自己代言... 链接:一线研发之声系列汇集 链接:Sedatefire的笔记 我发心,待人

4393

主题

5935

帖子

33

粉丝