打印

两个IO 口,如何检测四个 TTL电平?

[复制链接]
2263|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
音乐乐乐|  楼主 | 2008-10-25 13:41 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
xwj| | 2008-10-25 14:01 | 只看该作者

CD40147编码器或者随便找个并入串出的移位寄存器

比如CD4021、74xx165等

使用特权

评论回复
板凳
liudewei| | 2008-10-25 14:27 | 只看该作者

如果是不关联的四个量编码器不行,一共可是16种状态,

后一种方法可行。

使用特权

评论回复
地板
hq_y| | 2008-10-25 15:04 | 只看该作者

并入串出的移位寄存器是正解

使用特权

评论回复
5
音乐乐乐|  楼主 | 2008-10-25 15:20 | 只看该作者

晕,还得用扩展芯片啊,偶的意思是更简单的方法啊

 比如搞几个二极管电容什么的?嘿嘿!

使用特权

评论回复
6
音乐乐乐|  楼主 | 2008-10-25 15:26 | 只看该作者

一般的并入串出的移位寄存器也不行吧

 时钟一个IO,数据一个IO,同步信号一个IO,三个了~ 
 不会得用I2C总线扩展吧

使用特权

评论回复
7
awey| | 2008-10-25 16:51 | 只看该作者

用不同的加权电阻叠加后,再AD转换来判断

使用特权

评论回复
8
PowerAnts| | 2008-10-25 16:56 | 只看该作者

俺还是用电容吧

每个GPIO挂一个电容,用相差两倍的电阻分别接在两个TTL电平上。
检测方法,GPIO输出0,然后计时循环读取GPIO状态,即可分辩两个GPIO的状态,硬件成本最低。

使用特权

评论回复
9
PowerAnts| | 2008-10-25 16:59 | 只看该作者

补充

TTL到这个电阻分别串一个二极管

使用特权

评论回复
10
PowerAnts| | 2008-10-25 17:05 | 只看该作者

如果MCU有ADC,则awey办法最好

只占用一个端口

使用特权

评论回复
11
音乐乐乐|  楼主 | 2008-10-25 18:31 | 只看该作者

呵呵,MCU没有ADC,所以awey 的方法有问题

PowerAnts 电容的方法挺好,但是会不会太耗电? 如果不考虑成本呢?

使用特权

评论回复
12
PowerAnts| | 2008-10-25 21:01 | 只看该作者

能耗多少电啊

难道你是实时监测?电阻分别用10K和20K,电容用104便行,电容误差范围<<sqrt[(20+10)/20], 好在用10%及5%的电容并不是太贵,约5分钱一只

使用特权

评论回复
13
PowerAnts| | 2008-10-25 21:06 | 只看该作者

俺用过的最精密的电容误差是0.5%, 560PF的,单价8毛。

配合误差0.5%的电阻,作视频同步信号移相用。(在一块模拟屏上,图像偏了一条线。)

使用特权

评论回复
14
lyjian| | 2008-10-25 22:11 | 只看该作者

4个TTL电平还是4路TTL电平

4个TTL电平两个IO正好合适

使用特权

评论回复
15
音乐乐乐|  楼主 | 2008-10-26 11:05 | 只看该作者

IO直接对电容充电,这个瞬态电流感觉太大

 有没有只要两根IO线控制的并入串出呢?简单点的,I2C太麻烦。

使用特权

评论回复
16
PowerAnts| | 2008-10-26 12:38 | 只看该作者

GPIO并没有想象中那么脆弱

单个GPIO短路,并不会引起芯片损坏,多个同时短路才会引起灾难性损伤。
标准IO,MOS的体电阻限制了3.3V电压下饱合灌电流约20mA,俺曾遇到过一例因GPIO输入0电平,且对3.3V短路数小时发热但没有损坏,后来对几款不同的MCU试验,也是如此。

在这里,用于对小电容放电,微秒级的饱合灌电流绝对不会有事。由于电流峰值被体电阻限制在20mA,这个“瞬间短路电流”引起的热点,温度绝对比长期短路引起的温度要低。

使用特权

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

本版积分规则

350

主题

2293

帖子

3

粉丝