当系统能够正常跑起来之后,接下来就是调外围的元器件了。这玩意听起来挺复杂,但实际上并非如此。因为telechips原厂已经做了大量的工作,而主板的原理图基本上又是原封不动照抄,所以调试的工作量非常少,基本上只要模块供电正常,就可以正常工作。而段伏枥最主要的工作,便是在定制系统的时候设置相应的GPIO口,让供电能够正常。因为在设计的时候,每个模块的电源脚都增加了一个三极管,需要GPIO拉高才能开始供电。
调试GPIO口也并不复杂,只要掌握好诀窍即可。当拉高的代码已经添加,可用万用表测量的气候却发现还是低的时候,那么先不要怀疑代码,而是先将GPIO和模块断开,然后再测量和CPU连接的那端是否正常。因为很可能拿到的模块是坏的,无论CPU端如何上拉,那个引脚的电压都不正确。所以这又涉及到板子设计时,在CPU的GPIO和模块的线路上一定要预留跳电阻,这样查类似的问题就可以直接将电阻去掉以隔断,否则就只能焊掉模块,费时费力,也容易损坏板子。
因为telechips做的是开发板,他们并不需要考虑功耗问题,所以用GPIO来控制模块电源的开断是曹燕的主意。只不过这也是曹燕所能做的为数不多的改动之一,因为每个模块都有参考电路,曹燕主要的工作便是按照参考电路将模块和CPU连接起来即可。也就是说,主板上的很多地方,都能在相应的资料中找到原型。当然,如果说实话,真正做产品这样是不够的。虽然每个模块都有参考电路,但这是原厂在自己的环境的参考,而客户的外围环境已经更改,很可能这参考电路已经不适应。很多经验丰富的硬件工程师在设计电路的时候,都会考虑很多问题,比如电源效率,电磁干扰以及音频隔离等等。而这些考虑点,段伏枥不是略懂原理,就是连名称都没听过,根本就帮不上忙;至于曹燕,也只是比段伏枥好一点,但毕竟经验摆在那里,好多细节也不一定考虑得周全。在这样的状况之下,这主板最后会调成怎样,其实大家心中都没有谱。
调试模块,自然是从最简单的事情入手。从目前来看,让蓝牙模块能够工作是最容易的。因为蓝牙模块是采用串口和CPU进行通信的,而串口的驱动已经很完善,并不需要做太多工作,剩下的只需要让蓝牙电源正常即可。事实正如想象那般顺利,没有什么波折,蓝牙已经能够工作,至少通过测试程序能够让蓝牙连接到手机。可接下来问题就来了,这蓝牙应用程序怎么办?
用来测试蓝牙的程序,只是一个简单的串口收发,连界面都没有,自然是不能用作真正的应用程序。而以前在AU1200上所写的蓝牙程序呢,又因为这两次的蓝牙模块不同,指令集也不同,所以需要更改相应的指令。更改指令?段伏枥一想到这事就头疼,关键在于以前程序的架构其实并不是很好,代码写得很乱,即使更改指令集后能够正常工作,那些之前存在的BUG也不会消失。重写一次蓝牙程序?只可惜之前的蓝牙程序已经给段伏枥留下了阴影,说什么自己也不打算再做一次了;何况,老是做同样的东西,多么没有成就感啊!
那怎么办呢,这蓝牙模块要想正常工作,也必须有配套的软件啊!自己不想写,那就招个人过来咯。主意打定之后,便跑去和武总沟通。
没想到武总听了之后,皱了皱眉头:“你之前不是有写过蓝牙程序吗?改一改不就好了吗?为什么还要招一个人?”
段伏枥回答到:“这次用的模块和上次的不一样,很多东西都要修改。我现在在调试底层,没有时间写这个啊!”
武总疑惑到:“没有时间?那你可以晚点回去吗!等曹燕她们走了,你再来写应用程序啊!”
马勒戈壁的!段伏枥在心中暗暗问候了武总祖宗几百遍。还晚点回去呢!现在每天下班都是晚上十点之后,你丫的居然还要让俺再晚点回去,留下来写蓝牙!你当俺是啥了?畜生?人家畜生还有休息时间呢!说什么把大伙当家人,有你这么当的吗?!
段伏枥无名怒火顿生,声调也提高了八度:“以前在利剑的时候,老柳负责底层,我负责应用。现在倒好,我两个都要搞,你到底想让我怎么做?”
段伏枥的态度估计出乎于武总意料,武总也吓了一跳,转眼一想,估计觉得段伏枥说的也有道理,或是怕段伏枥就此不干了,急忙说到:“别急嘛!有事慢慢说。不就招个人嘛,改天我找给你。”
听到武总的回答,段伏枥也不好说什么,带着半信半疑的态度回到了自己的位置。
自从搬到了22楼,吃饭的模式也和11楼有了很大的改变。因为毕竟有其它部门的同事在,所以也就,不再统一到武总的家里吃饭,而是各顾各的去吃快餐。这样更好,段伏枥这么觉得,因为在武总那也没吃上什么好吃的,而他又经常在下班后找其它部门同事开会,以致于没有几次吃饭是按时的。现在各自去吃快餐,虽然免不了地沟油,但好歹也按时了。
张文香又恢复到利剑电子那时带饭的日子,所以中午便是段伏枥、曹燕和沈俊一起去吃快餐。在等饭上来的时候,沈俊突然问到:“你今天又怎么得罪武总了?”
段伏枥对沈俊的问话觉得奇怪:“没有啊!我什么时候得罪他了?我只是让他找个做蓝牙的人而已。”
沈俊继续说到:“我上午刚要走进会议室,就听到张文香跟武总说,说你太不尊重领导,还受不了苦,就是想偷懒,加加班能做好的事情,居然还想请个人!”
听完沈俊的话,段伏枥气不打一处来,好你个张文香,居然在背后说这种小话!你拼命维护武总也就罢了,有必要这么损别的同事吗?什么叫加加班就可以搞定,那么为什么从来没见你加过班,哪次不是按时走的?你这真是饱汉不知饿汉饥!
一顿闷气之后,段伏枥觉得这饭也索然无味了。曹燕也察觉到段伏枥心态的变化,出言安慰到:“别想太多,虽然张文香是这么说,但武总也未必是这么信了。想太多没用的,安心吃饭吧。”
曹燕的话也不无道理,嘴长在别人身上,确实管不了人家说什么;再说了,武总这么殷切地盼望自己过来,未必对张文香全然听从。总不能因为张文香的小话,而对武总有意见吧?这么一想,段伏枥的心情就好多了。
段伏枥正在自我安慰的时候,突然手机铃声响起,拿起一看,是徐雅思:“大美女,怎么了?是不是想请我吃饭啊?”
电话那端传来徐雅思爽朗的笑声:“是啊,这都被你猜着了!今天是我的生日,你晚上要不要加班?能不能早点回来,大家一起吃个饭?”
今天听到张文香的话语内心实在不爽,工作起来全然没什么劲头,何不回去陪美女吃饭?段伏枥连忙回答到:“回啊!美女邀请,怎能缺席?”
“好,就这么说定了!记得啊,可不能放我鸽子!”
时钟指向六点正,正好是正常下班时间。段伏枥收拾好东西,正准备踏出门口,恰好遇到武总。对于段伏枥按时下班,武总也觉得非常惊讶:“啊?你这么早就走了啊?不继续为我们的事业奋斗了啊?”
为了我们的事业奋斗,好端端的一句话,为什么每次从武总口里吐出来总觉得那么恶心呢?段伏枥没好气地说:“家里有点事,先走了!”
这是神马世道啊,正常下班居然还要找个借口。不过这也确实是个好借口,武总也无话可说,但又不甘心,对着段伏枥的背影说到:“你今晚回那么早,明天记得早点来啊!早点将这板子调出来,客户在等着批量产呢!”
客户?哪来的客户?怎么从来没见过啊?你这不就是看到我下班不爽,就想拿客户作借口,以此让俺觉得内心愧疚,对不起公司呗!你这话说得太多了,每次都这样,懒得理你!段伏枥“哦”了一声,头也不回进了电梯。
吃饭嘛,自然还是那四个人,段伏枥、伍定轩、徐雅思和刘思敏。吃饭原因也非常简单,仅仅是徐雅思生日。虽然还是吃的川菜,但有了之前惨痛的教训,自然不会点辣子鸡这种红灯区一般的菜色。因为吃饭是在八卦岭,离泥岗村也不远,所以酒足饭饱之后,众人都是一起走路回去。
没走多远,就看到有个年纪约摸二十来岁的青年,坐在地上,前面用粉笔写了一行字:“两天没吃饭,肚子太饿了,借两元买个面包。”
看到这青年可怜兮兮的样子,刘思敏有点同情心泛滥:“这个人好可怜啊!我给他两块钱吧!”
伍定轩连忙接过话:“不要,这一看就是假的。你想啊,我们都不知道在哪里能找到粉笔,他连饭都吃不起了,哪里搞的粉笔?”
刘思敏一听,觉得也有道理,但内心不服气:“那好吧,你有没有办法证明他是假的?”
证明这青年是假的?这可真有点犯难了,又不是公安机关,还可以搜身,看看身上有没有钱什么的。伍定轩想了想,说了句:“你们先在这等一下,我等一会回来。”
说罢,伍定轩一阵小跑,没一会就回来了,只是手里多了两个窝窝头。这窝窝头个头还比较大,基本上和三个馒头差不多,还挺结实的。买这窝窝头做什么?伍定轩狡猾地笑了笑,将窝窝头递给那青年,以非常关心的口吻说到:“兄弟,你饿坏了吧,这里有两个窝窝头,你把它给吃了吧!”
青年抬起头,愣住了,双手接过窝窝头,但没有吃。伍定轩说到:“别客气,你吃吧,我看着你吃。”
多么温馨的场面啊!一个两天没吃过饭的青年,有个路人好心给了两个窝窝头,解决青年的温饱问题啊!太感人了!就连一旁的大妈大婶也为此而深深感动,哽咽地说到:“小伙子,你都饿了那么多天了,你就把这两个窝窝头给吃了吧!不能饿坏了身子啊!”
看着伍定轩热切的目光,以及大妈大婶的嘘寒问暖,青年终于拿起窝窝头,狂啃起来。段伏枥很明显地看到,青年的眼角,有晶莹的泪花,是不是他觉得太幸福了呢?这两个窝窝头可是结结实实,要是没伴有水,可真没那么容易吞下。可伍定轩只是买了窝窝头,根本没买水!好一阵,这青年终于将这两个窝窝头吃完了,站起来哽咽地说了声“谢谢”,便往泥岗村的方向走去。
刘思敏忍不住笑道:“小伍你太狠了,看他吃馒头的痛苦样子,我都快忍不住了!”
伍定轩换过一副严肃的面孔,说到:“记住,这不是馒头,是窝窝头!”
四个人一边笑,一边慢慢走。走到天桥旁边,看到一个熟悉的场景:一个年纪约摸二十来岁的青年,坐在地上,前面用粉笔写了一行字:“两天没吃饭,肚子太饿了,借两元买个面包。”
这不是那个刚刚吃过两个窝窝头的青年吗?段伏枥对伍定轩问到:“你刚刚那些窝窝头在哪里买的?”
伍定轩愣了一下,随机明白段伏枥的意思。没一会儿,段伏枥提着两个硕大的窝窝头回来了:“兄弟,你饿坏了吧?这两个窝窝头,你赶快吃了吧!”
青年抬起头,惊呆了。深圳人民咋那么实在呢?咋全部都送窝窝头呢?在天桥之下,围观的大婶大妈更多了,大家关怀的声音也更大了。这个刚刚吃了两个大大的窝窝头又还是饿了两天的青年泪光莹莹地再次接过两个窝窝头,开始慢慢地啃起来:半个……一个……再半个……最后,吐了!他吐了!剩下的半个,再也吃不下了!
这位悲催的青年一阵狂吐之后,连谢谢也没说一声,转身狂奔。估计这可怜的家伙一边跑,一边在想:回去赶紧告诉兄弟们,在深圳千万不要假装饿了几天,否则说不定哪天就会被窝窝头给撑死!
- 前言
- 《那些年啊,那些事——一个程序员的奋斗史》——01
- 《那些年啊,那些事——一个程序员的奋斗史》——02
- 《那些年啊,那些事——一个程序员的奋斗史》——03
- 《那些年啊,那些事——一个程序员的奋斗史》——04
- 《那些年啊,那些事——一个程序员的奋斗史》——05
- 《那些年啊,那些事——一个程序员的奋斗史》——06
- 《那些年啊,那些事——一个程序员的奋斗史》——07
- 《那些年啊,那些事——一个程序员的奋斗史》——08
- 《那些年啊,那些事——一个程序员的奋斗史》——09
- 《那些年啊,那些事——一个程序员的奋斗史》——10
- 《那些年啊,那些事——一个程序员的奋斗史》——11
- 《那些年啊,那些事——一个程序员的奋斗史》——12
- 《那些年啊,那些事——一个程序员的奋斗史》——13
- 《那些年啊,那些事——一个程序员的奋斗史》——14
- 《那些年啊,那些事——一个程序员的奋斗史》——15
- 《那些年啊,那些事——一个程序员的奋斗史》——16
- 《那些年啊,那些事——一个程序员的奋斗史》——17
- 《那些年啊,那些事——一个程序员的奋斗史》——18
- 《那些年啊,那些事——一个程序员的奋斗史》——19
- 《那些年啊,那些事——一个程序员的奋斗史》——20
- 《那些年啊,那些事——一个程序员的奋斗史》——21
- 《那些年啊,那些事——一个程序员的奋斗史》——22
- 《那些年啊,那些事——一个程序员的奋斗史》——23
- 《那些年啊,那些事——一个程序员的奋斗史》——24
- 《那些年啊,那些事——一个程序员的奋斗史》——25
- 《那些年啊,那些事——一个程序员的奋斗史》——26
- 《那些年啊,那些事——一个程序员的奋斗史》——27
- 《那些年啊,那些事——一个程序员的奋斗史》——28
- 《那些年啊,那些事——一个程序员的奋斗史》——29
- 《那些年啊,那些事——一个程序员的奋斗史》——30
- 《那些年啊,那些事——一个程序员的奋斗史》——31
- 《那些年啊,那些事——一个程序员的奋斗史》——32
- 《那些年啊,那些事——一个程序员的奋斗史》——33
- 《那些年啊,那些事——一个程序员的奋斗史》——34
- 《那些年啊,那些事——一个程序员的奋斗史》——35
- 《那些年啊,那些事——一个程序员的奋斗史》——36
- 《那些年啊,那些事——一个程序员的奋斗史》——37
- 《那些年啊,那些事——一个程序员的奋斗史》——38
- 《那些年啊,那些事——一个程序员的奋斗史》——39
- 《那些年啊,那些事——一个程序员的奋斗史》——40
- 《那些年啊,那些事——一个程序员的奋斗史》——41
- 《那些年啊,那些事——一个程序员的奋斗史》——42
- 《那些年啊,那些事——一个程序员的奋斗史》——43
- 《那些年啊,那些事——一个程序员的奋斗史》——44
- 《那些年啊,那些事——一个程序员的奋斗史》——45
- 《那些年啊,那些事——一个程序员的奋斗史》——46
- 《那些年啊,那些事——一个程序员的奋斗史》——47
- 《那些年啊,那些事——一个程序员的奋斗史》——48
- 《那些年啊,那些事——一个程序员的奋斗史》——49
- 《那些年啊,那些事——一个程序员的奋斗史》——50
- 《那些年啊,那些事——一个程序员的奋斗史》——51
- 《那些年啊,那些事——一个程序员的奋斗史》——52
- 《那些年啊,那些事——一个程序员的奋斗史》——53
- 《那些年啊,那些事——一个程序员的奋斗史》——54
- 《那些年啊,那些事——一个程序员的奋斗史》——55
- 《那些年啊,那些事——一个程序员的奋斗史》——56
- 《那些年啊,那些事——一个程序员的奋斗史》——57
- 《那些年啊,那些事——一个程序员的奋斗史》——58
- 《那些年啊,那些事——一个程序员的奋斗史》——59
- 《那些年啊,那些事——一个程序员的奋斗史》——60
- 《那些年啊,那些事——一个程序员的奋斗史》——61
- 《那些年啊,那些事——一个程序员的奋斗史》——62
- 《那些年啊,那些事——一个程序员的奋斗史》——63
- 《那些年啊,那些事——一个程序员的奋斗史》——64
- 《那些年啊,那些事——一个程序员的奋斗史》——65
- 《那些年啊,那些事——一个程序员的奋斗史》——66
- 《那些年啊,那些事——一个程序员的奋斗史》——67
- 《那些年啊,那些事——一个程序员的奋斗史》——68
- 《那些年啊,那些事——一个程序员的奋斗史》——69
- 《那些年啊,那些事——一个程序员的奋斗史》——70
- 《那些年啊,那些事——一个程序员的奋斗史》——71
- 《那些年啊,那些事——一个程序员的奋斗史》——72
- 《那些年啊,那些事——一个程序员的奋斗史》——73
- 《那些年啊,那些事——一个程序员的奋斗史》——74
- 《那些年啊,那些事——一个程序员的奋斗史》——75
- 《那些年啊,那些事——一个程序员的奋斗史》——76
- 《那些年啊,那些事——一个程序员的奋斗史》——77
- 《那些年啊,那些事——一个程序员的奋斗史》——78
- 《那些年啊,那些事——一个程序员的奋斗史》——79
- 《那些年啊,那些事——一个程序员的奋斗史》——80
- 《那些年啊,那些事——一个程序员的奋斗史》——81
- 《那些年啊,那些事——一个程序员的奋斗史》——82
- 《那些年啊,那些事——一个程序员的奋斗史》——83
- 《那些年啊,那些事——一个程序员的奋斗史》——84
- 《那些年啊,那些事——一个程序员的奋斗史》——85
- 《那些年啊,那些事——一个程序员的奋斗史》——86
- 《那些年啊,那些事——一个程序员的奋斗史》——87
- 《那些年啊,那些事——一个程序员的奋斗史》——88
- 《那些年啊,那些事——一个程序员的奋斗史》——89
- 《那些年啊,那些事——一个程序员的奋斗史》——90
- 《那些年啊,那些事——一个程序员的奋斗史》——91
- 《那些年啊,那些事——一个程序员的奋斗史》——92
- 《那些年啊,那些事——一个程序员的奋斗史》——93
- 《那些年啊,那些事——一个程序员的奋斗史》——94
- 《那些年啊,那些事——一个程序员的奋斗史》——95
- 《那些年啊,那些事——一个程序员的奋斗史》——96
- 《那些年啊,那些事——一个程序员的奋斗史》——97
- 《那些年啊,那些事——一个程序员的奋斗史》——98
- 《那些年啊,那些事——一个程序员的奋斗史》——99
- 《那些年啊,那些事——一个程序员的奋斗史》——100
- 《那些年啊,那些事——一个程序员的奋斗史》——101
- 《那些年啊,那些事——一个程序员的奋斗史》——102
- 《那些年啊,那些事——一个程序员的奋斗史》——103
- 《那些年啊,那些事——一个程序员的奋斗史》——104
- 《那些年啊,那些事——一个程序员的奋斗史》——105
- 《那些年啊,那些事——一个程序员的奋斗史》——106
- 《那些年啊,那些事——一个程序员的奋斗史》——107
- 《那些年啊,那些事——一个程序员的奋斗史》——108
- 《那些年啊,那些事——一个程序员的奋斗史》——109
- 《那些年啊,那些事——一个程序员的奋斗史》——110
- 《那些年啊,那些事——一个程序员的奋斗史》——111
- 《那些年啊,那些事——一个程序员的奋斗史》——112
- 《那些年啊,那些事——一个程序员的奋斗史》——113
- 《那些年啊,那些事——一个程序员的奋斗史》——114
- 《那些年啊,那些事——一个程序员的奋斗史》——115
- 《那些年啊,那些事——一个程序员的奋斗史》——116
- 《那些年啊,那些事——一个程序员的奋斗史》——117
- 《那些年啊,那些事——一个程序员的奋斗史》——118
- 《那些年啊,那些事——一个程序员的奋斗史》——119
- 《那些年啊,那些事——一个程序员的奋斗史》——120
- 《那些年啊,那些事——一个程序员的奋斗史》——121
- 《那些年啊,那些事——一个程序员的奋斗史》——122
- 《那些年啊,那些事——一个程序员的奋斗史》——123
- 《那些年啊,那些事——一个程序员的奋斗史》——124
- 《那些年啊,那些事——一个程序员的奋斗史》——125
- 《那些年啊,那些事——一个程序员的奋斗史》——126
- 《那些年啊,那些事——一个程序员的奋斗史》——127
- 《那些年啊,那些事——一个程序员的奋斗史》——128 (终章)