这个问题主要与电子相关,但也有编程方面的问题。 一些背景的问题 我们办公室的墙上有红绿灯。 当人们进入办公室时,他们可以立即从交通信号灯中看出昨晚的自动build造和试车是否顺利进行:绿色表示所有testing通过,黄色表示一些testing失败,红色表示一些build造失败。 现在,三根电缆上的三个开关挂在交通灯上,有人必须每天早上手动切换这些开关。 我正在寻找一种简单的方法来使用PC自动执行此过程。 关于我的一些背景 我可以写软件。 我有一些焊接经验。 我知道数字devise理论,但我从来没有build立过一个物理设备。 我手上没有太多时间。 这个问题 如何以最less的努力(和投资)从PC控制三个110V灯泡(或任何设备)? 一些松散的限制 我不在乎编写软件来控制串行/ USB端口。 话虽如此,如果我不必编写任何软件,只使用现有的工具,那将是一件好事。 我宁愿不做任何焊接! 我可以去那些把组件插入插槽的兴趣套件中的一个。或者,也许它可能是Toys“R”Us的东西。 我愿意购买像Arduino板这样的现有设备。 如果我可以用只是躺着的部分完成这个将是很好的。 例如,我有一个老的2400Bd调制解调器,我可以分开(但是,那可能会跟着一些焊接)。 更新 答案中提到的类似项目: “红熊警戒!” – 哈德逊熊灯 http://magnetiq.com/exports/lights/bears.jpg 大哥交通灯 http://magnetiq.com/exports/lights/traffic.png 泡沫,泡沫,build设的麻烦 http://magnetiq.com/exports/lights/lava.jpg
我试图从基于FTDI 2232H芯片的定制设备接收数据。 我正在使用一个简单的asynchronousFIFO模式,input数据速率是3.2MB /秒。 一切工作完美与我的电脑上的testing代码,但我有问题接收我的东芝茁壮成长的数据。 TDI的Android驱动失败,所以我使用Java编码。 我可以完美地获得95%以上的数据,但是每隔一段时间,数据就会“飞溅”,并且将相同的4-5K数据的一部分分两次或三次,然后返回到正确的数据。 对于Thrive或者Android来说,我不会太快,因为之前我的数据是双倍的(6.4MB / sec),而且也有95%的数据。 (所以它应该没有问题,一半的速度。) 似乎在Android中发生的缓冲(或双缓冲)中存在某种错误。 (这不是FTDI 2232H内的缓冲区,因为重复的数据大于芯片的4K内部缓冲区。) 设置代码很简单,而且几乎完美地工作。 数据抓取的循环非常简单: while(!fStop) if(totalLen < BIG_BUFF_LEN-IN_BUFF_LEN) { len=conn.bulkTransfer(epIN, inBuff, IN_BUFF_LEN, 0); System.arraycopy(inBuff, 0, bigBuff, totalLen, len); totalLen+=len; } 如果你认为这是arrays拷贝的时间延迟 – 即使我发表评论,我仍然会丢失数据。 IN_BUFF_LEN是16384(即使增加inBuff的大小,bulkTransfer也不会返回更多的值)。 bigBuff是几兆字节。 作为第二个问题 – 有谁知道如何传递一个指向bulkTransfer的指针,直接填充bigBuff —在一个偏移量(不是从位置'0'开始?
现在, Android API支持直接使用USB设备 (从3.1开始),我很好奇是否有任何工作为一些更受欢迎的符合类的设备(如audio或HID)创build“软模式”驱动程序, 。 换句话说,是否有任何开源项目将特定类的设备与更多有用的通信结合到一个可以添加到Android项目中的Java类中? 对我而言,我特别感兴趣的是USBaudio,但似乎从Linux内核模块源派生的一组社区构build的类可能对许多项目有利。 我希望别人也有同样的想法,已经开始工作了。 任何在这个方向的指针将不胜感激。 我偶然发现了更多的资源: 用户模式USB从设备到主机的等时传输 Audio Evolution似乎已经build立了自己的用户级驱动程序
对于我的学校工作,我做了很多切换电脑(从实验室到笔记本电脑到图书馆)。 我有点喜欢把这个代码下的某种版本控制。 当然,问题是我不能在我使用的电脑上安装额外的软件。 有什么版本控制系统,我可以保持拇指驱动器? 我有一个2GB的硬盘来放这个,但如果有必要,我可以得到一个更大的。 我所做的项目并不是特别的大。 编辑:这需要在Windows下工作。 编辑二:集市结束了我所select的。 如果你和TortoiseBzr一起去,那会更好。
我试图用Snow Leopard上的Java Sound录制/处理三个USB麦克风的audio(但是如果修复了问题,可以切换到Windows)。 问题是,当我尝试使用与USB麦克风相对应的调音台时,Java Sound告诉我该行不受支持。 具体来说,这是说… 可用的混音器: Java声音audio引擎 USBMIC串行#041270067 内置input内置麦克风 Soundflower(2ch) Soundflower(16ch) 线程“AWT-EventQueue-0”中的exceptionjava.lang.IllegalArgumentException:线路不支持:接口TargetDataLine支持格式PCM_SIGNED 96000.0 Hz,8位,立体声,2字节/帧, 当我要求它selectUSBMIC调音台时: Mixer mixer = AudioSystem. getMixer(mixerInfo[1]); 我已经尝试将audio格式与麦克风(16位,44100Hz,立体声)的确切规格进行匹配,并没有任何区别。 问题在这里出现: final TargetDataLine line = (TargetDataLine) mixer.getLine(info); 这似乎是搅拌机和TargetDataLine不喜欢对方。 有什么办法让这两个“匹配”,相处? 我使用的麦克风无疑是有点奇怪的。 他们被制作成名为SingStar的卡拉OKvideo游戏。 麦克风本身具有标准的单声道线路input连接器,可插入一个小型集线器(两个集线器),将其转换为一个单独的USB连接器。 除了奇怪之外,他们似乎和Audacity一起工作的很好,因此多渠道logging显然是可能的,也许不是Java。 我也考虑过使用像Soundflower这样的程序来共享不同程序之间的audio。 不过,我不能确定这将工作,因为我不知道如何使USB麦克风input到Soundflower,然后将它们pipe入Java。 一个快速实验告诉我,我可以从麦克风录制Audacity中的audio,通过Soundflower将其导出,然后在我的Java程序中进行处理。 不过,我想要做的是在Java中实时发生。 有人熟悉这种问题吗?
是否有任何Windows 7(64位)的软件驱动程序,可以报告一些应用程序软件和USB设备之间传输的数据? 我试过史努比( http://sourceforge.net/projects/usbsnoop/ ),但我无法得到它的工作。 可能我需要去安装早期版本的Windows的路线。 还有其他build议吗?
这个问题似乎是谷歌,但答案都指向使用系统分析器。 这很好,但是使用System Profiler,你所得到的是这样的: DasKeyboard: Product ID: 0x1919 Vendor ID: 0x04d9 (Holtek Semiconductor, Inc.) Version: 1.06 Speed: Up to 1.5 Mb/sec Location ID: 0x1d114000 / 11 Current Available (mA): 500 Current Required (mA): 100 USB2.0 Hub: Product ID: 0x0608 Vendor ID: 0x05e3 (Genesys Logic, Inc.) Version: 32.98 Speed: Up to 480 Mb/sec Location ID: 0x1d113000 / […]
如果你的shell脚本可以帮助你在完成工作后安全地移除你的闪存盘 ,那就太酷了。 在发布问题之前,我做了很多功课,要求解决scheme可以满足以下需求: 假设闪存盘与其他许多闪存盘一起被安装为/media/A ,并且代码可以select性地删除/media/A而不干扰其他的盘。 例如,我可以传递/media/A作为参数。 轻的解决scheme。 安装另一个大小为100MB的软件包来完成任务让人疯狂。 我知道一些像hdparm这样的命令,除了它们的文档很难读取。 如果能给我一个解决办法,我希望他/她也能提供参数的解释等等。 最好,如果代码可以处理各种闪存磁盘(例如,我的老年人在2003年购买32Mb)(和可选的便携式磁盘)。 它应该达到确切的效果,正确的点击磁盘 – >点击“安全删除驱动器”。 安全问题将占上风,否则可能只是拔掉通常不会受伤的磁盘。
我正在尝试将minicom连接到通过USB连接到串行适配器的串行设备。 这是一个PL2303,从我读过的一切,不需要额外的驱动程序。 该器件被识别为PL2303。 我是minicom的初学者。 这是执行正确的命令吗? 还是我需要configuration一些东西? $ sudo minicom –device /dev/ttyUSB0 minicom: cannot open /dev/ttyUSB0: No such file or directory $ sudo lsusb -v Bus 002 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port Device Descriptor: bLength 18 bDescriptorType 1 $ tail /var/log/syslog #then removed and attached the device. Mar 13 23:31:49 ubuntu […]
我遇到了通过USB进行Android ADBdebugging的问题。 使用Macbook Air 2013并尝试连接Nexus 6 dev手机。 在MAC Android Studio上,安装了最新的android sdk。 当我做 adb kill-server adb devices 我得到: adb I 661 9881 usb_osx.cpp:259] Found vid=18d1 pid=**** serial=***** adb I 661 9881 usb_osx.cpp:259] adb E 661 9881 usb_osx.cpp:331] Could not open interface: e00002c5 adb E 661 9881 usb_osx.cpp:265] Could not find device interface 所以它发现设备,供应商ID,产品ID和序列符合我在Nexus 6的系统信息中find的内容。 以下build议在网上find我试过 – […]