极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11073|回复: 9

也来聊聊arduino模拟USB鼠标(第二季)

[复制链接]
发表于 2012-10-27 15:19:48 | 显示全部楼层 |阅读模式
第二季主要分析用普通arduino普通IO口模拟USB所需电路的硬件分析
先贴张图:

上图是5V系统的IO口仿真USB所需的硬件电路。
其实这个电路对大家来说并不陌生,大家手头的USBasp一般都是采用这个电路,应为这种下载器也是采用没哟USB接口的AVR来设计的。
先说下2.2k电阻的作用。第一季已经提到过了,USB标准中,低速设备的D-信号线要有1.5k电阻上拉到电源,这里就不在上图了。因为这个是5V系统,所以使用电阻要比标准电阻大一些。
只有是稳压二极管。也就是传说中的齐纳二极管,学过模电的同学肯定知道(二极管的方向击穿有两种,一种是雪崩击穿,一种是齐纳击穿。书里大概是这么说的。)稳压二极管的工作原理就是当反向电压达到一定值时,他便会被反向击穿,通过这种方式来稳定电压。这种击穿当电压降低之后二极管可以恢复到正常状态,几乎不会对二极管有损坏。不说废话了,这个二极管的作用就是将数据线电压有5V等级,稳定到3V左右等级。
最后呢,说下串联在信号线68欧姆的电阻。这个电阻的作用大家可以探讨一下,我这里只是说下自己理解的主要作用。首先呢,还是来看标准,
捕获.GIF
标准上的意思就是USB信号的单端等效阻抗是28-44欧,所以这个68的电阻其这个作用。第二,这作用个人觉得重要与第一个。当信号被arduino拉到高时,稳压二极管便会被击穿。假设没有这个电阻,因为arduino的IO引脚与稳压管之间没有压降(因为没有电阻)所以稳压二极管就要漏下很多电流,知道吧IO口电压拉低至稳压电压。在这种情况下可以认为是IO重负载,所以输出电流接近AVR的IO的最大驱动电流40mA,这样会极大损害IO结构,无辜功耗增加,再个就是需要选一个功率稍大的稳压二极管,这种情况下也会增加不稳定性,有了这两个电阻便会避免以上问题。这样看这个电阻可以看做是限流电阻了

在3.3V系统中
2.2K的电阻,当然可以按照标准改为1.5k
再个限流电阻可以去掉了
另外68欧姆的电阻,也有可以去掉的可能……没试过,稍后去掉看下上来汇报
回复

使用道具 举报

发表于 2012-10-28 09:50:18 | 显示全部楼层
把arduino程序放出来
回复 支持 1 反对 0

使用道具 举报

发表于 2012-10-27 18:42:26 | 显示全部楼层
嗯,我今天也发现了,稳压管貌似接在68Ω电阻之后比较合理。回头将我那块板子改改看看会不会更稳定
回复 支持 反对

使用道具 举报

发表于 2012-10-28 13:59:45 | 显示全部楼层
持续跟踪...
回复 支持 反对

使用道具 举报

发表于 2013-9-16 19:31:45 | 显示全部楼层
呃,你说的3.3v系统中,求问FTDI的集成芯片 能把i/o直接拉低到3.3v么?假若是3.3v系统,那为什么不知直接上拉1.5k电阻,还可以少用一个i/o口。。
回复 支持 反对

使用道具 举报

发表于 2013-12-23 20:05:00 | 显示全部楼层
fuwen0202 发表于 2013-9-16 19:31
呃,你说的3.3v系统中,求问FTDI的集成芯片 能把i/o直接拉低到3.3v么?假若是3.3v系统,那为什么不知直接上 ...

同问,为什么不直接上拉到VCC
回复 支持 反对

使用道具 举报

发表于 2014-12-26 20:38:58 | 显示全部楼层

请教楼主,该方法在widows系统下没问题。但是windows启动前比如想自动输入Bios密码时没反应,而一般的usb键盘可以。请问有办法在windows启动前也能用吗?
回复 支持 反对

使用道具 举报

发表于 2017-4-18 10:51:01 | 显示全部楼层
请教楼主,我用的atmeg328p做的,两信号线的电压为3.2+v,信号线的接线顺序也是VCC,D-,D+GND,为什么还是无法识别该设备,设备管理器中显示:设备描述符请求失败。求解答
回复 支持 反对

使用道具 举报

发表于 2017-4-21 15:05:36 | 显示全部楼层
用的什么编程器呢?怎么修改外部中断的入口,是选择默认外部中断的吗?
回复 支持 反对

使用道具 举报

发表于 2017-5-6 20:43:18 | 显示全部楼层
模拟鼠标的程序呢
回复 支持 反对

使用道具 举报

高级模式  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2017-12-17 08:21 , Processed in 0.043355 second(s), 8 queries , File On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表