树莓派上手记(3)

 

能够正常运行Linux服务的树莓派显然没做到物尽其用——毕竟Web服务、BT下载这些功能并不突出,好些路由器就可以做到,也没什么折腾的噱头。要释放树莓派强大的功能,目光自然要放在可编程的GPIO端口上。

 

树莓派GPIO介绍

 

树莓派的输入输出端口由板子左上角的26个针脚构成:

 

 

 

第一版和第二版树莓派的针脚定义有些不同:

 

 

 

如果分不清哪个是1号管脚,可以把板子翻过来,只有1号管脚的焊口是正方形的,其他都是圆形(上图也有示意)。

 

26个管脚中,GPIO有17个管脚,5个GND和4个VCC(3.3V和5V各两个)。

 

点亮LED灯

 

以下需要一些简单的电子元器件进行试验,请自行淘宝。

  • 面包板

  • 导线若干(公母线、公公线、母母线)

  • LED灯(一包,电压范围2.2V – 3.3V)

  • 电阻(一包,从几十欧到1M欧都有)

 

连接方式

  • LED灯和100欧左右电阻串联

  • 正极(LED长针脚)接3.3V输出(Pin 1),负极接GND(Pin 6)

  • 不放心可以先用万用表测量一下电压

 

 

程序控制LED灯

 

GPIO的端口输出可以通过很简单的方式控制。这里需要用到一个库 wiringPi。

 

建议在自己电脑上用git clone这个库 

 

git clone git://git.drogon.net/wiringPi

 

然后把源代码scp到树莓派上,进入代码目录,然后运行./build它就可以自己编译、安装了。

 

pi@raspberrypi ~ $ gpio -v

gpio version: 2.13

Copyright (c) 2012-2013 Gordon Henderson

This is free software with ABSOLUTELY NO WARRANTY.

For details type: gpio -warranty

This Raspberry Pi is a revision 2 board.

 

wiringPi对端口的定义和树莓派有一些区别,它把树莓派不连续的GPIO端口按照0~16的顺序一一对应编号。因此使用wiringPi时,需要用wiringPi定义的方式来访问端口。比如GPIO17在wiringPi里其实就是0号端口。

 

 

这一次VCC不从3.3V的一号口引出来,而是接到了Pin 11,GPIO 17上。这个端口在wiringPi里被定义为0号。

 

 

运行下面的命令就可以点亮LED灯:

 

gpio mode 0 out # 0号端口输出模式

gpio wirte 0 1     # 0号端口输出高电平

 

通过脚本的控制,可以让LED灯发出闪烁的效果

 

#!/bin/bash

while true; do

    gpio write 0 1

    sleep 0.5

    gpio write 0 0

    sleep 0.5

done

 

最后完工全貌:

 

 

题图来源:维基百科LED条目

 

===========================

 

小白小黑开了个微信公众号,公众号 – “黑白杂谈”, 微信号 talking_ted,或者扫描下面的二维码,欢迎大家踊关注。

 

LLVM折腾记(1)

这两天前看了一些关于LLVM的资料,比如《程序员》上的文章Dr. Dobbs上的 The Design of LLVM。之前还听说LLVM编译速度快、生成代码体积小效率高、架构优秀,连GCC都赶不上了,于是就开始琢磨着折腾折腾。
首先是下载编译最新的LLVM。我们的编译环境比较老,比如libstdc++的版本差了一点,最新的LLVM(包括3.1和3.0)都编译不起来(除了Debug+Assert版本,没想明白)。由于编译环境是公共的,自己fork一份出来太费劲,于是就将就用Debug版本编一个文件试试。
接下来是一般折腾找makefile里改编译器的地方,在一个已经用编译好的代码环境下通过touch一个源文件来一次只编一个,省的一下子把所有代码塞给clang/llvm遇上问题太多搞不定。预料上的问题很快就碰上了:代码里用了GCC的方言或者不符合标准的地方。clang(LLVM的C/C++/Objective-C前端)的主页上给出了目前不兼容GCC的列表:http://clang.llvm.org/compatibility.htm,大部分兼容性问题应该可以在这里找到答案。
第一个碰上的问题是关于模板类继承的:
http://clang.llvm.org/compatibility.html#dep_lookup_bases
改了点代码就编译通过了,算是完成了第一步。不过显然不能一直用Debug版本的下去,速度只有GCC的一半多一些,丧失了LLVM的一大优势。明天的任务就是fork出新的能够运行Release版本的编译环境。

Blog主机迁移完毕

早上花了点时间把主机从gegehost转移到了homezz。前面一个主机我已经用了2年,是我用的第一个虚拟主机(reseller)。两年期间没碰到什么问题,加上有ssh访问,所以什么问题也自己搞定。新主机价格一样,流量一样,空间少了100M,没有ssh帐号(这点其实对我挺不方便的,不能拿来用sshd和wget了,过两天还得买一个sshd或者vpn的帐号);好处在于速度快了很多,本来是320+ms的ping现在只有180+ms,另外可以架设自用那个啥的API,还送免费的图床(不过我用picasa)。
另外以前的邻居xyxn,如果你们还能看到这篇blog的话,你们以前的内容我也备份下来了,有兴趣可以找我要备份数据包。
最后,放几个邀请码,如果有兴趣购买homezz的又没没邀请码的可以顺便帮帮忙。
K6HB5FJ3
SR7GOM49
31NERVLH

转:百合上看到的131正转

注:要是159被取消的话,从高新区去火车站真的折腾了

131路历史正传
第一阶段:小荷才露尖尖角
上世纪90年代,南京市政府开始逐步加大开发江北地区的步伐.南京高新技术产业开发区就
设立在了长江北岸.随着开发区入驻企业逐渐增多,迫切需要一条能够沟通市区与开发区的
公交线路.就是这个时机,216路专线车开通了.这条216路专线车线路,就是当今131路和132
路最早的前身.专线216路由汉中门发车,经过城西干道一路向北,从大桥南路上长江大桥过
江,然后途经泰山新村开往高新开发区.
由于走向合理,换乘方便,216路自开线起客流相当的好.所以在不久之后的专线车"转正"中
,216路被命名为"汉高线",从线路名称上就可以直接看出,这是汉中门开往高新开发区的线
路.
第二阶段:邻家有女初长成
之后不久,由于城市建设需要,城西干道(虎踞路等)开始建设高架桥.原来汉中门汉高线使用
的场地没了.同时也为了减少对施工的影响,汉高线作出了调整.放弃了汉中门的终点站.而
是在清凉山折向东,顺着广州路,珠江路来到了莲花桥附近,在北门桥的马路边调头.线路走
向调整的同时,汉高线也改了名称,新名称是"高新线",取两向终点站"高新区"和"新街口"之
意.调整了线路走向之后,高新线比原来的汉高线更加接近主城的中心地带.莲花桥是个很好
的地方,离新街口不远,离鼓楼也不远.周遍公交线网密度更大.所以经过这一调整,"高新线
"客流的上升很迅猛.
第三阶段:江北风雨含霹雳
进入21世纪之后,城市的发展更为迅速,江北地区的发展甚至比城区还要快.于是一轮大规模
的新开过江公交线路风暴展开了.这批风暴里,原本在江北泰山新村掉头的泰浦(泰山新村-
-浦口公园),泰工(泰山新村--工地)两条规模比较大的线路延伸到了长江南岸,在大桥南路
安了家,即今"盐浦""盐工".两条老牌线路鼓扬线和盐十线加强了运力,盐十线还延伸去了更
远的葛塘,即今"盐葛".同时新开了"鼓珍""盐轮""高东"线路.随着江北公交线路增多,江北
人民需求无人售票刷卡线路的呼声日益高涨,"高新"和"高东"被选为试点线路,尝试过江线
路的数字化命名,并为以后的无人售票刷卡线路开通做好准备工作.于是高新线被改名149路
,高东线则成了159路.这可笑的数字命名实在是自欺欺人,车辆还是原来的车辆,线路还是原
来的线路,因为里程太长没有办法变成无人售票刷卡线路,所以车上仍然有售票员.仍然采取
上车按里程买票的方式运营.
第四阶段:千年媳妇熬成婆
在广大人民群众的强烈要求下,南京市公交总公司江北客运部在2004年3月开通了三条真正
意义上的过江无人售票刷卡线路.即今131,132和136路.按照公交公司的原意,计划是149路
暂停后由131和132路代运,159路暂停后由131路和136路代运.131路由高新开发区开往大桥
南路,132路由长途客运北站开往莲花桥.136路由长途客运北站至长途东站往返行驶.开线前
夕,经过慎重考虑,由于136路走向与159路区间稍有区别,另外若高新区仅由131路支撑尚有
不妥,况且江北至火车站客流较大,故159路最终被幸运的保存了下来,这也就是159为何数字
化命名而又有人售票的原因.就这样,131路和159路形成了现今的运营格局.

美国主旋律纪录片《美国:我们的故事》

历史频道最近推出了一部讲述美国历史的主旋律纪录片 “America: The Story of US”。全片分为12集,从17世纪的定居者初到美国讲起,直到21世纪初。



摘抄一段评论:

2010年4月,America: The Story of US「美国:我们的故事」在美国的历史频道首映。这是一部12集的史诗纪录片,收视率超过了绝大部分美国虚构电视剧。它全面使用电脑CG,把阿凡达式的视觉效果和好莱坞式的表演技巧引入纪录片,令人目瞪口呆,忘记这是真实的历史。
第一集的第一组镜头就把人牢牢吸引住了。深蓝色的水底,一条大鱼游过,随后从水下看到一艘船缓缓驶来。在一个俯瞰船身的镜头之后,摄像机加速度向着美洲大陆飞行,镜头前领飞的是一只美国兀鹰。
这部纪录片的叙事采取了画外音叙述,演员表演,嘉宾评论三种历史纪录片常用的方式,并把这三者巧妙地穿插在一起。给演员的镜头频繁使用特写,过肩,偷拍等纪实风格,与现代影像语汇契合,同时又跟历史虚构片保持了距离。
CG在片子中运用得出神入化,镜头时常拉出事发地,一直拉到俯瞰地球为止。在前两集中还多次使用了黑客帝国曾经用过的子弹时间特效,以表现军事冲突的紧张与暴力美学。
我认为片中与内容最相得益彰的特效是表现本杰明-富兰克林骑马送信的镜头,他和马匹变成了一个火球,在13个殖民地上滚动,随后火球蔓延开去。画外音解说:在殖民地,信息自由流动,英国军队开枪的暴行很快传开。而在英国好多人还不知道。
看了一些美国的评论,大家普遍认为,这片子史实还比较牢靠,反映了面向美国中小学生的主流史观。编创者不忘政治上正确,强调美国革命队伍中也有黑人。嘉宾的访谈评论点到为止,对欣赏画面几乎不构成干扰。尽管如此,美国还是有电视人对于使用嘉宾访谈形式提出了批评。有的地方我也觉得别扭。例如请出一个现役海军陆战队上校,说我恨不能跟华盛顿一起并肩作战。口味有点太重了。想像一下,一部讲述岳飞的纪录片,请一个解放军军官对着镜头说:我希望我能投入抗击金兀术的战斗中……

12集分别如下(看了6集):

  1. Rebels (有反抗传统的新大陆定居者)
  2. Revolution(独立战争)
  3. Westward(西进运动)
  4. Division(南北分歧)
  5. Civil War(南北战争)
  6. Heartland(中西部大开发)
  7. Cities
  8. Boom
  9. Bust
  10. WWII
  11. Boomers
  12. Millennium

个人感觉:使用了不少CG和演员来重现历史场景,有大量对小人物的跟踪。除了对历史事件的描述,深入挖掘事件背后的本质和驱动。是一部入门了解美国历史的好纪录片。
P.S. 我是在hdchina上下的720p,效果很不错。Emule上也有下载。

We are poineers, and trailblazers.
We fight for freedom.
We transformed our dreams into the truth.
Our struggle will become a nation.

上海3月租房记

4月份马上要上班了,租房子是逃不掉的。加上LP的租房合同也马上到期了,我们就一起找个两居室的房子。
首先是选择租房地点,很早以前就定下来大概在虹口曲阳路附近,这个地点在我们上班地点的中间偏杨浦(要辛苦LP上班多花20分钟了),附近有家乐福、易买得两家大型超市,地铁3号线和8号线,另外靠近同济、上外,也就有些不错的生活设施。
3月初我在网上进行了一番调研,确定了租房的几个目标小区:西南小区、曲一小区、玉田新村、东体小区、赤峰小区、密云小区、曲阳新村、双东小区、赤三小区、玉田大楼、曲阳大楼。之后又实地考察了各个小区的特征,把租房重点放在曲阳大楼、西南小区、赤三小区、东体小区和双东小区。也考察了附近的中介,并锁定了几家在网上房源较多的较大中介(后来证明这不靠谱)。
租房一般从个人或者中介走,各有利弊。个人房源的话省了中介费,不过选择的余地少,另外网上的个人房源除了有可能是中介假冒的以外,还存在很多二房东的情况(比如房客要提前搬走,就当一把二房东),而二房东往往是很多租房纠纷的来源。另外如果碰到难缠的房东,也很麻烦。中介的房源多,但也怕碰到黑中介,另外就是要收中介费,在上海的话是35%的月租,相较其他地方来说还算是比较公道的。
我们打算租一年,因此中介费被摊薄了;而锁定大型中介,也能规避掉一些风险。基于以上两点,我们直接选择通过中介租房。
租房是上上个星期日去的,LP还喊上了通晓上海话的同学kevin一起看房。在曲阳吃过午饭后,直接奔向在网上房源较多的仁家房产曲阳店。意外的是,在通报了我们的条件之后,在网上至少有15+符合条件房源的仁家房产居然只有三处,能看房的只有两家。接待我们的是个MM,但业务水平不敢恭维。看房计划的路线也很糟糕,直接导致第二个房子没有看成。而唯一看的那户,是个很奇怪的错层结构。各家各户的门在一个长连廊上,很像筒子楼;厨房和入口在11层,两个卧室和卫生间在10层,通过一个很陡(估摸有60度)的楼梯相连;卫生间的排风直接排到房间里,很糟糕;价钱不记得了,似乎是2800左右。看完这个房子已经两点了,而第二家房东由于等太久我们没过去,放弃了。于是决定换一家中介。
介于这时发现网络不靠谱,我们决定直奔上房置换曲阳店。这家门店不小,不过信息从来不上网。接待我们的是个态度不错的阿姨,提供给我们5-6个可以看的房源,价格听上去也比较靠谱。在她带领下,我们看了5套房子。
第一套在东五小区某高层的20楼,还在装修,不过很快就能完工。家具基本完好,2700块一个月,还行。唯一的缺点就是户型比较奇怪,两个卧室隔得很远,中间通过厨房连接起来。房东也在房子里,大学老师,北方口音,比较热情。我们对这个比较满意。
第二第三套房子也在东五小区,也是较高的楼层。由于基本没啥装修,租金只有2500,其中有一户还是双南的朝向,很好的户型。不过对于租房来说,基本毛坯的房子还是不能接受的。对于买房来说的话,倒是很好的选择。
第四套房子在赤三小区,东五小区的对面,隔着曲阳路。6楼,装修一般,却要价3000。房东是个老头,看起来脾气很不好,作罢。
第五套房子也在赤三小区,不过要到下午4点多才能看。我和LP合计了一下,决定就把第一套给要下来了,让中介把房东喊到门店里准备签合同了。
在店里等待的时候,我问LP和Kevin,如果这套没租下来的话,我们的alternative是哪一套?Kevin说怎么可能,价格都谈好了,怎么会租不下来。没想到我一语成谶。
房东来了以后,提出的一个要求让我们和中介大跌眼镜的要求:由于我们的租期只有一年,中介费加上合同期满之后的清扫费用使他的月收入下降到2400多,因此他要求免去房东方的中介费。他提出,他的房子并没有在上房置换直接挂牌,只透露给了中原地产),因此他不应该支付中介费用。另外他认为35%的中介费是霸王条款。这显然是中介不可能接受的,我们也很汗。讨价还价之后,他表示中介费最多出300块,于是双方谈崩,不欢而散。见识到提出这种要求和解释的房东之后,我们也不可能跳中介和他们签了。后经LP人肉发现此人是上海某不入流学院的讲师一枚。
此时正好看第五套房子。3楼,装修中,很亮堂。户型不错,缺点在于卫生间偏小,另外高度也有些低。房东是一对较年轻的夫妇,开价2900。而我们的条件是2800。中介当了老娘舅,说2850,就成交了。我们答应了,不过房东还有些不情愿。在Kevin的建议下,我们先走了,让中介继续做房东的工作。Kevin说,中介被上一个房东恶心得不行,今天一定会做成这一单的,所以他们肯定比我们还热心讲价钱。
正当我们踏进另一家的中介的时候,电话来了。房东答应了2850的价格,成交。后来的签合同就再无枝节。另外确定月底交房。至此一天的租房终于尘埃落定了。