Today's the day

向软件大牛炫耀我会焊单片机,向硬件大牛炫耀我会写 Rails,向软硬件大牛炫耀我生物,向软硬件生物大牛炫耀我会折腾期货 -_-bbb

用自制 Mini 键盘无限冰

大菠萝3发售了半年多了,一直玩得不亦乐乎。虽然争议多多,不过作为一款单机游戏可以让人玩这么久而且还在不断更新内容,已经相当厚道了~

这次不是要评论游戏内容,而是……

继续阅读

自定义 Mini 键盘按键

手持 Mini 键盘虽然搞定了,但是设置起来比较麻烦,要切换按键配置的话,得重新编译硬件上的程序再烧进去才行。

当初也想做个切换开关在键盘上,并预置几种键盘配置,这样就可以通过切换开关来切换配置了。

不过后来发现自己白痴了,既然是 USB 的,为什么不通过电脑上的 GUI 客户端来设置呢。

于是快速的写好 GUI 端,硬件上也设置好,接收到传来的设置数据,就按照数据变更键盘的配置。

不过调试的时候发现无论如何都无法发送数据给硬件,Google 了一下发现问题严重了……

原因是,像 USB 键盘和鼠标这类 HID 输入设备,Windows 把它们注册为默认设备,并且截获了所有的数据传送,也禁止别的程序来打开硬件句柄,自然就无法发送和读取数据了。仔细想想也合理,否则任何一个第三方程序都可以随便的读取键盘和鼠标数据了。市场上很少见这类可以自由配置按键的键盘,也许就是这个原因吧。

之后又去翻了翻文档,发现似乎可以用 HID 中的 Feature Report 来交换数据,但是尝试了一下没有成功,难道最终要实现这个功能,还得去麻烦的给这个键盘写个驱动程序吗?

最后,用了一种妥协的办法:

硬件上电之后,先注册成 Custom HID 设备,这样就可以接受设置数据。在接受到设置数据之后,再软件模拟硬件从 USB 接口上拔下并插上的动作,这样操作系统就会再次枚举这个硬件,然后在这个时候,再把硬件注册成一个键盘,这样的代价就是第二次设置的时候需要再次插拔一下键盘。

尝试了一下,成功了~  这样一个任何驱动也不用,即插即用的又可以配置按键的 Mini 手持键盘诞生了~~~

这样就可以随便调整键盘的按键了,比如 “拷贝 and 粘贴” 模式:

还可以 “切换程序 and 任务管理器/重启” 模式:

无敌方便~

手持 Mini 键盘

上次做了个脚踏键盘,虽然效果不错,但是脚踩多了还是有点酸 ,而且后来也没有去找更加好用的脚踏板。

这次干脆直接做成手持的了,硬件结构和软件完全都没变,只不过把脚踏板换成了按钮……

由于直接握着有棱角的电路板手比较疼,所以最后装在了盒子里面,把按钮的位置镂空露出来,又在表面贴了张纸,这样按起来更加静音:

这样只要用一根很长的 USB 延长线把这个 Mini 键盘和电脑连接起来,就可以在稍远一点的地方控制电脑了。

为什么要做这么个东西呢?当然是为了在作幻灯片演讲的时候,可以边讲边方便的翻页,不用再去弯腰摸索键盘和鼠标了~ 相当实用啊……

由于这次没有脚踏板的花费,所以总共成本只有 6 元,成为宅男必备道具之二。

继续阅读

自制全分立元件 OP 式耳放

上次的简易的耳放制作完成之后,兴趣也被勾了起来,正好继续补习模电的知识,顺便把这个耳放加强一下吧~

前级完全 OP 化了,在洞洞板上和雕刻板上尝试了好几天才把这个电路正确运行起来,虽然里面还有一些疑惑,不过经过这么一折腾,比看书的认识深多了。

全部用了分立元件,连稳压器部分也只用了三极管和稳压管,只要外接一个 24V 的电源,通过稳压器稳压后到 20V 左右,就可以使用了~

一般来说功放都是设计成正负双电源的,网上搜到的设计图也都是如此,但是为了省事,就用了单电源,用中点当做零点,所以 20V 单电源相当于 +10V -10V 的双电源,我也不知道图中的偏置方法是否正确,总之运行得还不错~

 

最终的外观相当华丽~    本来想用廉价电容来焊,但是发现手上的廉价电容都是 16V 耐压的,无奈只好拿出很久之前买的发烧电容(50V 耐压),最后就成了看上去很奢华的耳放了。

废了相当大的功夫焊接完毕,非常走运没有什么问题。听感比上次的廉价耳放好多了,声音非常平衡,导致感觉有点冷 :D。

不过还是有点小遗憾,电源部分忘了一个误差电容;右边中间的两个三极管离得太近了,装上散热片就快靠在一起了,而且正好是一个 +20V 一个地,安装的时候不小心用剪刀短路了一下这两个散热片,结果打了一个很大的火花,剪刀的一个尖还粘在了一个散热片上,太汗了……

此外为了调节音量,输入那边搞了一个双联的电位器(左边中间那个旋钮),但是这个电位器精度太低了,满值 10K,转到中间左右,两个值一个 5K,一个 5K4,误差快 10% 了,老有心理作用觉得两个声道不平衡,所以最后干脆拆了下来。

静态总电流 100mA 左右,功放管很烫,不过加了个小的散热片之后就比较温了,这个应该算作什么类的放大器呢?A 类?B 类?AB 类?目前对这个分类概念也不是很清楚。

为了测试耳放,还给 ER4 配了一条高阻线,说是高阻其实也只有 80 欧而已。原来一直觉得换线会改变声音是胡扯,但是这次换上高阻线之后的确声音有变化,声场变大了,层次更清晰了。原因不是很清楚,大概是阻抗可以抵消掉耳机的部分容性或感性负载的比例的吧,这样就可以让输出更加线性;另外高阻抗强制输入端必须提高音量,这样底噪占得比例也会变小。

有机会把前级改成集成的 OP 芯片看看有没有区别,自我感觉应该差别不是很大。虽说差分对三极管如果没有精确配对会带来误差,但是 Vbe 的差别虽然被放大,因为在单电源的情况下输出有电容耦合,所以直流的部分并不会被输出。hFE/Ic 之类的差别,可以被发射级电阻抵消大半,所以即便不如 OP 也不应该很明显的听出来才对。 至少用分立元件总体噪声会少,频率特性应该也会变好,此外也可以自由在各个部分选择特殊的三极管或者灵活的设计。我估计着,如果在差分部分用上孪生对管,再在各个部分用上用上高品质的三极管,最终的效果应该会超过 OP 才对,也许 HIFI 级别的功放里面都有大部分的分立元件,也是因为如此吧。

以这个东西为标志,模电三极管的补习算是告一段落。

以后就用这个耳放听歌了~ :D


 

接下来继续补习其他的东西……汗

趁着春节前的工作日,赶紧买了一些电感和 pF 级别的电容,春节期间看看高频的内容吧,这部分貌似也挺好玩的~

 

自制耳机放大器

看了半个月的模拟电路,今天做了第一个模拟电路的玩具 -- 一个耳机放大器~

其实这个电路是驱动低阻的无源音箱用的,但是手上没有:(。

电路板早就打样了,只不过今天中午才收到,下午焊上测试了一番,效果相当不错~ :D

左声道原理图(右声道相同):

大牛们请无视,因为目前就学习到这里,所以只能弄出这样的电路,并且基本是抄书。

5V 就可以工作,高了更好,只要不超过电容的耐压值,3.8V 以下就要被削波了。15V 下驱动 8 欧负载理论上可以输出 0.5w 以上。

成品:

使用兆信的稳压电源输出 5V ~ 15V、电池(4x1.5v)、USB 电源(再经过自制的稳压器),都可以很稳定的工作。

手上只有 ER4p 和 HD570 这两个耳机可以测试,都不难推:(,所以只能测试下音质效果。测试下来效果令人满意~ 原来曾经用过一个铁三角的廉价耳放,听上去效果没什么差别 :D。

总结:

无信号下噪声很低,是因为只有一级放大的缘故。不过插上耳机,还是会听到一些“沙沙”的噪声,主要来自信号线和音源的噪声,因为前级的电压放大把噪声也放大了,铁三角的那个耳放也有同样的现象。这个看来只有改善传输线和音源的品质才行。

原理图中的 C11 就是高音增强电容,想增强高音,就增大这个电容,不过太大了就没意义了(因为全增强了)。如果你的耳机高频很突出,那么可以不要这个电容,不过大部分情况下还是需要的。我开始听的时候,觉得高音太刺耳了,所以就认为 470uF 太高了,后来换成 10uF 的感觉不错,但是最后才发现是因为播放器的 EQ 把高音区打得太高了,把 EQ 调成水平,然后再换回 470uF,就正常了。拿掉这个 470uF,感觉很浑浊。

相比在播放器上用 EQ 拉高高音,使用电容调整的效果就要自然多了,这次自制耳放最大的体会就是这个。但是缺点也是有的,因为噪声也在这个频率区域,所以用电容调整,噪声也会变大:(,用 EQ 就不会有这种状况了。

C8 和 C6 是输入和输出的隔直电容,输入是 10uF,输出是 1000uF。实验的时候犯过一个错误,就是把 C6 也换成 10uF 的,结果发现低音全没了。后来才知道,为什么这两个电容不一样,是输入和输出阻抗不同造成的。

输入阻抗是 R7 和 R9 并联的值,大概 10K 左右,配合 10uF 的 C8,截止频率在 1.6Hz 左右($$f_c=\frac{1}{2\pi CR}$$),对低音信号(最小 20Hz)完全没问题。

输出阻抗其实是耳机的阻抗,比如 ER4p 是 27 欧,配合 10uF 的 C6,截止频率就在 590Hz 左右,自然低音都没了。换成 1000uF 的,到 5.9Hz 就没问题了~

下一步:

这次用的元件都是非常廉价的,第一级的三极管是最便宜的 2N5551,后面的推挽输出也没有配对,随便抓了个 TIP31C 和 42C 来用,电容也都是论斤卖的那种,所以下一步就是更换好一点的原件,看看音质上是不是有提升,也可以一定程度上了解那些音响的“磨机”有没有意义。

另外,这个电路板是上个星期五去打样的,周末出差,回来之后继续看晶体管的书,就看到了负反馈放大和差分放大,后悔没有加在这个电路里面。那么,接下来就是设计更有技术含量的电路吧,看看可否改善音质。

一般的功放,似乎前级的电压放大都是 OP 来实现的,既省空间又稳定。但是我也用 OP 就不好玩了,那么就尝试用分离元件搭个 OP 吧,正好书上也有这部分的内容,看看效果咋样 :D。