存档

‘硬件’ 分类的存档

Arduino初探

2009年7月8日 没有评论

研究了一把Ardunio,对这个东西的功能有了一点了解。

首先是它能够驱动LCD显示屏,能够和PC直接通讯。这个过程中不需要做PCB板,不需要焊接,程序也比较简单。

我没有找到汉字LCD的驱动办法,考虑到汉字的点阵问题,显然这个点阵只有存储在LCD里面,这个点阵显然不会小,于是这个LCD必然比较贵。不过在淘宝上查了一下,有个12864的LCD似乎带中文字库,比如这个,或者这个。价格60~75人民币,还不错。就是没有找到怎么连接到Ardunio上去。

LCD的显示不是那种手机的屏幕,比较粗糙,类似于机箱上的那种。所以用来显示Twitter的话,比较困难,没有中文汉字库,而且屏幕太小。

但是如果装上温控探头,显示机箱温度,以及通过PC程序在LCD上显示BT下载的进度,都是不错的应用。这些都只需要英文。其它系统状态也可以显示,比如内存情况,CPU情况,有多少封未读邮件。

Ardunio模块在澳洲可以直接买到,20多澳元;英文LCD模块要18澳元左右,12个字符×2行的那种。中文估计只能从中国弄过来。

我应该看一下LCD的说明书,然后找一个中文LCD的说明书,估计差不多,依葫芦画瓢就可以了。

PC段不用担心,只要能够连上,以我的软件的经验,调试不是问题,问题还在于硬件,是不是能够正常工作。我以前折腾单片机的时候,自己弄的PCB板,怎么都不工作,怎么改软件都没用,最后干脆精简到只有数行,以点亮一个发光二极管为目标,都没有成功。最后定位为硬件问题,但是我就是无力解决它。所以我最没有信心的就是这个东西的硬件。

先弄一个发光二极管,两块面包板,一些小的线头,一个Arduino板子,再带一个LCD板子,还有数个电阻,要不要一起把传感器买回来呢:温度的,超声波的,但是如果主板子不行,这个周边不都废掉了?

挺害怕自己搞到最后又是一场空的。不过如果做了起来,这绝对是一个全新的未涉足的领域。

值得尝试。

早上起来下载了一个Arduino软件,想着先试试软件,再花钱去买硬件。70兆的压缩包里面居然塞了一个JDK1.4。解压后200M,JDK占了40兆。启动时有点小错误,但是忽略即可。我试着把JDK目录改名,发现软件依然可以运行,说明依靠系统的JDK就够了。

尝试了一下编译,发现可以看到编译后的二进制码的大小。这样的话,最好的办法就是先把要做的东西设计出来,把代码写好,编译以后看看大小,如果足够小的话,不要买标准的Arduino,买一款比较小的就可以了。

不过我十分害怕低档型号的Arduino会不会需要连线什么,然后再次将我的军。我现在对自己不熟悉的领域多了不少谨慎。

早上把某人博客上用Arduino来连接LCD12864的文章打印了下来,坐火车的时候看了看,做火车时候特别适合看这种文档,感觉很好。三下五除二看完了又不觉得累,比在电脑前就是容易看进去。

开开小差,想到了KindleDX,如果有这种东西的话,以后就不用打印文档了,掏出来,连上USB,FireFox一键把当前网页(或者用Abduction插件保存成图片)传输过去,上班路上就可以慢慢消化了。

貌似连线很简单,程序也是现成的。但我隐约感到了以前犯的错误。那就是野心太大,调试困难。

应该把步骤写下来:

1、使用官方程序,点亮单个LED灯

2,让LED灯具有闪烁的功能

3,使用官方IDE,通过Serial输出窗口,来测试每个输入输出端口的状态

3.1  设置端口1状态为1,然后读取端口1,然后打印出来;等待2秒,设置端口1为0,读取,打印出来;不断循环

3.2  挨个测试各个端口

4,端口1作为输入,通过按钮开关连接到5V输入(是不是5V?),不停检测端口状态并打印,通过按钮开关测试

5,在4的基础上,搞一个Flash或Processing,实时显示端口1的状态。

6,在5的基础上,做一个Java(或.net,或what ever)程序,实时显示端口1的状态。

。。。。。(待完善,尽量分解,基本上到这个地步,应该问题不大了,还要分解LCD显示模块)

在购买硬件之前,先看一下LCD显示驱动的代码编译后到底有多大。

设计的原则是让Arduino只做输出功能,而把业务逻辑全部放到PC端,复杂的东西都有PC端的程序处理以后,把需要显示的信息输出到Arduino控制的LCD上。

至少传感器的部分,虽然有趣,但是可扩展性(只能通过硬件来实现,不像软件可以做的事情又容易又有无限可能性)不大,暂时可以不弄。

Arduino端可能要有一些按钮,用来告诉PC端,我要看哪方面的信息。差不多就够了。

风暴了一张图出来。

Arduino

一个问题是如何或者BT下载的速度和进度,这个是非常重要的功能,但问题在于这个也是最难获取的。

另一个问题是编程语言,我可能使用Linux,那么Java是非常理想的选择,它天生就是跨平台的。但系统信息怎么获取,CPU占用率之类的可能都要通过系统函数才能获取。Flash也能跨平台,但是不能功能非常有限。

还有一个问题是如何获得自己当前的地理问题。毫无疑问,带有GPS功能的手机可以做到,包括iPhone(有人写了一篇关于iPhone地理定位的有趣的文章),但是GPS据说是最耗电的应用,除非手工开启GPS定时刷新自己的位置,还有就是昂贵的3G流量费用也会卡住这一块。因此这个应用(实时显示我在哪里)想起来虽然有趣,但是实际上基本不可用。就算技术方面解决了,隐私也是个大问题,就像那个文章写的那样,我可不想告诉小偷我出门了。

从需求的角度而不是新奇的角度,Report功能可能是最需要的,方便是关键。

报告BT下载的状态,是不是要重连,是不是应该加新的种子了。报告网络是不是又断了。报告CPU是不是过热了。报告内存是不是占用过多,需要重新启动。报告TPG流量是不是快要爆了。报告今天要做什么事情了(GTD)。报告今天(这周)花了多少钱。诸如此类。

另一方面,Arduino提供一个按键,按一下可以重连Wiimote也是相当不错的需求,只是未必好实现。

最近的研究表明是,这个东西天生就是Java的,IDE是Java的,它用的一个PC端软件Processing也是Java的,因此用Java写东西来玩简直天经地义一般。

网络上随便一搜就找到了Java如何访问Arduino的文章,实际上它使用了RXTX的Java包,这个包背后其实是通过不同平台不同库文件来实现的,支持很多平台,包括Windows和Linux。而Java和Arduino通讯的办法其实就是访问第4号串口(一个虚拟出来的串口,物理上实际上是个USB口)。

这样的话,用Java要简单过用Flash。而且调试的时候,似乎应该优先考虑Java的;晤,这样的问题就是,我怎么才能保证我向某个串口发送数据成功了呢。也许得找个模拟串口的程序了。这个倒不需要Arduino参与进来就可以玩。

原创的话痨如需转载请注明来源:http://blog.chenyi.me/blog/10431;转载的文章我会力所能及地注明来源如有疏漏请留言指正。

文章的脚注信息由WordPress的wp-posturl插件自动生成

分类: 硬件 标签:

雅思,恶趣味,Arduino单片机,FireFox插件

2009年7月8日 1 条评论

最近上班相当充实,在写Workflow的一些东西,很有点意思,不管怎么说,自己总是想把工作做好的。

昨天ZY终于考过了雅思,5次雅思考试,最后终于修成正果,平均分8分,强大。而且今天是他签证延期半年到期的日子,刚好拿着成绩单去申请PR。一切都好起来了。

昨晚和ZY一起吃了一顿,还搞了点酒。还从ZY那里学到了一个新网站Meebo,用来替代MSN客户端不错,主要是不用安装,到了哪里都可以用,比微软的网页版MSN要好用得多。

昨天发现了Morphine提供的一些恶趣味的东西,很好很强大,BT下载中,18+,自行搜索。然后取BT种子的时候,却发现FF会把这个文件当作文本文件在FireFox中打开了。搞了一下,依靠自己之前的记忆,找到了Force Content-Type这个FireFox的插件,这个插件可以对不带后缀名的文件强制设置文件类型,非常不错,要不然只能干瞪眼。

今天早上把一直拖着没有搞的FF插件的兼容问题做掉了,一个不可或缺的插件inline_blocked_image_view被FireFox3.5禁掉了,一直在等官方更新,等了一周也不见动静,只好自己搞,1分钟搞定;很简单,把插件的XPI文件下载下来(不要用Firefox,因为FireFox会把这个扩展名认为是插件而自动执行插件安装,用IE就可以了;非要用FF,那估计使用Force Content-Type插件也可以做到),然后把扩展名改为zip,解压,打开install.rdf文件,修改掉兼容最大版本号,保存,压缩,修改扩展名为xpi,打开FF,拖放XPI文件到FF,就会得到安装插件的提示,安装,搞定。

昨晚还迷上了Arduino这个单片机。其实很久之前也研究过,当时没有在意,觉得就是个单片机,和自己直接弄MCS51没啥区别。这次因为一直琢磨着对EEE BOX搞掉花哨的东西出来,所以有了兴趣。仔细一看,其实还是很不错的。至少不用C语言了,下载使用USB也方便了,硬件可以直接买,不用自己制作PCB也方便了,更重要的是不会有低级错误导致运行不能(上次就是败在这个上面的)。

一晚上都在研究Arduino,这个词不知道怎么念,感觉倒像是I donot know的发音。早上又打印了一些资料看,终于对它的原理和一些专业名词(比如它的分类)有了一点概念了。好吧。我的目标是做一个USB+LCD显示的东西出来,这个其实和Arduino不是特别接近。但是调整为让Arduino和PC通讯(比如蓝牙)并显示到LCD上,这就和Arduino有关了。至于是不是容易实现(我可不想自己做PCB,极其容易搞砸),要看看有没有现成的硬件,然后我来写软件。

本来想在淘宝上买Arduino的,早上发现其实澳洲也有供应商,一块板子20多澳元,和国内的100多人民币差不多。显然是这里比较方便。

先做好预研,然后就动手。

顺便说一句,好像这东西可以做机器人,真正的雏形的机器人。不需要太多硬件动手能力,有现成的配件卖,自己写软件来控制机器人的每个关节的运动。

昨晚看到一句有意思的话:“怀揣着机器人的梦想,开始投奔Arduino”。很多宅男都是机器人控吧。

好像把Arduino描绘得比较尖端了,其实这东西就是一个8还是16位的单片机,连手机的板子都比不上,它的优势在于,使用方便,大部分时间你只要写软件加连接不到10根线就够了。晤。适合我这种半吊子的爱好者。

原创的话痨如需转载请注明来源:http://blog.chenyi.me/blog/10427;转载的文章我会力所能及地注明来源如有疏漏请留言指正。

文章的脚注信息由WordPress的wp-posturl插件自动生成

分类: 硬件, 电脑, 软件 标签:

AppleTV和XBOX360

2007年4月11日 没有评论

今天看到了AppleTV的广告,澳洲这边大概498澳元。突然很感兴趣,于是查到了以下资料。这两个东西都不能直接播放RMVB。XBOX360可以用第三方工具搞,但是CPU占用率100%,因此实用价值很低。在我看来,这种东西只有解决了RMVB的直接播放的问题以后,才真正有实用价值,因为我作为一个使用者如果需要用大量时间预先做好格式转化,那么乐趣就在等待中丧失殆尽了。至于微软和APPLE提供的影片节目,都是要钱的啊。

http://www.enet.com.cn/article/2007/0405/A20070405524987.shtml

苹果Apple TV对决微软Xbox 360 后者略胜一筹
2007-04-05 13:16 作者: 罗斌 来源: eNet硅谷动力 [收藏到E起摘]

  【eNet硅谷动力消息】苹果公司已用另一款表面光滑、白色、做工精美的产品点亮了大众的眼睛,这次目的是为了让用户在起居室的电视上播放iTunes电影和歌曲更为方便。

  不过,在真正重要的地方苹果未能让人满意——就电视屏幕上的视频质量来说,这个售价299美元的Apple TV表现的非常差劲,它给人的感觉好比推出了一款iPod,但声音却像是盒式磁带录音机的。

  当和人们提到Apple TV时,他们中的大多数顾名思义推断它可能是一台电视。为了澄清事实,我现在明确说明,它不是一台电视。它是一个四方体的设备,大小和一本硬皮书差不多,非常适合放置在你的娱乐中心。它可以通过电缆线连接到你的电视上。同时它还可以无线或采用电缆线与Mac和Windows电脑相连。

  一旦设置完毕,Apple TV可以在电视上播放电脑上iTunes媒体库里收藏的音乐、播客、视频、电视界面和电源等等内容。XP是苹果惟一官方支持的Windows版本,但我将这个设备与一台Vista电脑相连,丝毫没有问题。

  Apple TV配备了一个40GB的硬盘。它可以自动尽可能多的拷贝iTunes库存的内容,因此在电脑关闭的时候你也可以徜徉于自己的媒体库。不过这个硬盘没有将Apple TV变成一个TiVo:它不能用来刻录正在播放的电视节目。

  控制这个设备的是一个小小的红外遥控器。这个遥控器看上去就像一个微型的iPod。如果你经常在沙发上到处找遥控器的话,这个小家伙你来说绝对是个恶梦。它如此之小,你甚至能够将它塞到你的另一个遥控器里面。

  在电视屏幕上,Apple TV投射出一个非常类似iPod的界面,非常清晰而且容易操作。它看上去十分赏心悦目,尤其是在一部高清电视上。它能够使用你自己的照片做为屏保程序的画面。

  说到高清电视(HDTV),对Apple TV来说非常必要。它的设计没有考虑老旧的单芯RCA视频电缆线。你需要一根三芯电缆(通常由红、绿和兰三根颜色不同的线组成),或者一根完全数字化的HDMI电缆线。

  下面,来自苹果在线商店iTunes的视频在高清电视上的令人窝心的表现肯定会让你错愕不已。这些电影和电视节目具有和DVD同样的分辨率,但看上去更模糊些,接近标准清晰度的电视画面。

  更糟糕的是,这些画面糟糕的电影售价却并不便宜。《神鬼奇航2:加勒比海盗》在iTunes上售价15美元,几乎和买一部DVD碟片的代价差不多。电视节目价格较为合理,每辑仅需2美元。

  你也可以将高清摄象机拍摄的家用胶卷转换后拿到Apple TV上播放,但不会再是原来的分辨率1080i,它的画质在这里也打了折扣。

  我将Apple TV和微软公司的Xbox 360进行了对比,后者或多或少也可以做同样的事情,即在Windows电脑和高清电视之间充当沟通的桥梁。

  在我的眼睛接受了Apple TV菜单温柔的爱抚之后,回头再看Xbox的界面就像脸上挨了一巴掌。它看上去俗气不堪,混乱的令人想要生气,而且你不得不多点几个按键才能达到你想要去的地方。但Xbox却可以让你的高清电视物尽其用。微软的Xbox Live在线市场拥有一些高清电影,而且效果出奇地棒,几乎可以赶得上HD DVD或Blu-ray光碟的质量。后两者向消费者提供了目前最好的视频质量。

  即便是同样标准清晰度的内容在Xbox Live的效果看上去也比iTunes电影要好得多。它们看上去和DVD的效果不相上下。

  Xbox Live此外还拥有其它两个优势:电影可以直接下载到你的Xbox硬盘上,不必借道电脑,而且你租一部电影的成本大约为3美元,远比买着便宜。

  这并不等于说你应该马上跑出去花400美元购买一部Xbox当作电影播放器使用。Xbox不能与你的电脑建立无线连接,而且也没有一个视频风格的遥控器。虽然所有这些缺憾都可以通过额外的购买补救,但同时会将你的成本推高到接近500美元。

  Xbox的硬盘只有Apple TV的一半大小,不过当你愿意租借电影看而不是购买时,这个应该不是问题。(微软正在计划推出一个120GB版本、售价480美元的Xbox。)这些电影只能在Xbox上观看,而苹果的电影也可以在电脑上或iPod屏幕上看。微软限定一部Xbox电影只能在24小时内看,这个条件似乎有点过于苛刻。

  此外与Apple TV相比Apple TV还多少显得有点粗鲁。它比较吵,而且它的电源适配器被称做“砖块”一点都不会过分——它的大小和Apple TV差不多。苹果自己没有提供电源适配器。

  总的来说,目前哪一个解决方案都不完美。不过我更喜欢Xbox。我不会花费数千美元买台高清电视在它上面播放标准清晰度的视频,而且我相信所有新买了高清电视的主人都会有同感。

  当然,苹果也会在以后某个时间也开始出售高清视频。它不得不这么做。不过这些高清视频能够在当前的Apple TV上播放吗?我有点怀疑。

  据该公司提供的规格,Apple TV能够播放分辨率为1280×720像素的高清视频,但看上去却没有相应的效果。它的硬盘比较小,而且它的低耗电量暗示了里面的处理器功能不会太强。此外,由于苹果标准清晰度的视频看上去如此槽糕,我对于它的高清视频也不敢抱有信心。

  我的建议:如果你不想购买Xbox 360,就等待iTunes和Apple TV认真对待高清的升级版

原创的话痨如需转载请注明来源:http://blog.chenyi.me/blog/9417;转载的文章我会力所能及地注明来源如有疏漏请留言指正。

文章的脚注信息由WordPress的wp-posturl插件自动生成

分类: 硬件, 电玩 标签: