注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
辛昕.九门.上 https://home.eeworld.com.cn/space-uid-115166.html [收藏] [复制] [分享] [RSS]
日志

存档:要干的事情(六月版)

热度 2已有 1295 次阅读2015-7-6 23:00 | 文章


马上就六月份了。
要干的事情,还置顶,这样的文章显然不可能永远就一篇,于是我干脆打算一个月什么的写一篇的,只置顶最新的。

没必要也不想再说什么“最近依然很忙乱”什么的,这个恐怕是常态。

      上周六考完试,突然似乎松下了一个很大的包袱,我可以有大把时间和放松的心去做很多之前 一直打算“考完试”再做的事情。结果当然不出所料的一团糟——因为啥都想掺和一脚。

      直到昨晚开始,我才开始搞房间的卫生,收拾桌上的各种乱七八糟的东西——房间的混乱实在太影响心情和观瞻了。加上这一周前几天天气一直下雨,各种衣服没干,即使早上起来我洗个澡再去上班,依然没办法改变身上的衣服没干透,贴着自己不舒服——我当然不是什么豌豆公主豌豆小王子,但所有这些,确实会加强“一切都不是很舒适”的感觉。真正的舒适轻松,其实真的是一件需要从周遭的生活环境到自己的生理感觉都舒适才能产生的心理上的轻松。

     不说了,说回正经事。首先是上个月的事情简单整理:

已做完的:

1.《且听风吟》这本书已经解决了——因为其实这类书不该着急看完,这次实在是有其他目的,昨晚了结;
2. 嵌入式Linux(Embedded Linux)
        其实当时想要做的早就搞定了;现在遇到的问题其实是当时没设想过的做的这一步,不过我想,似乎下一步进一步的计划是要理解这玩意的启动过程;对单片机这类问题我现在已经很熟悉,唯独这个Linux,我总是寄望可以不管那么多,看来,真的没这个命。
        
实际上,五月版的清单里,我真正做了的只有这两件。


 剩下的,不想重复提及,但毕竟这是新的一个月份,所以我只把它们简单一句话继续顺承下来:

橙色字体部分,表示这个月最好端了,收拾了的东西;

1.《Code Reading》
        final,这书我还是扫完了,只不过,看得很快,因为,我很快就意识到,尽管这里面确实有我想知道的东西,但如果我没真正经历过一次 阅读某个源码,我始终是无法理解那些内容,一点都不能。
       所以这件事情到此为止。接下去我会考虑的是,怎么开始阅读 Linux源码,以及目的是什么?

        这个还是提提:经过上次的清理我发觉我要放下很多期望,如果只是扫一下,我觉得我可以用每晚一点时间慢慢扫完它;
        这本书我至今没开始读,原先只是简单看了第六章。因为这几天被其他几件事,这样是不行的。anyway,最迟到周末,我一定要正儿八经开始看,既然是正儿八经,至少这周内就看完一到两章,并做简要的笔记。
        因为这些我圈定的章节,确实是我需要的东西。


2.OpenWrt
        汇报一下,昨晚和今天折腾了一下这玩意。目前的进展是:
        1.把它变成第二个路由器,通过我原来的路由器连到外网,可以直接通过它连到外网;
        2.设置了root密码,学会了简单的配置网络,当它连着电脑时,可以ssh登录(当然此时也可以连外网)
        3.但是,当我电脑连路由器的时候,无法远程ssh登录它——感觉里觉得这里头本身就有问题,什么问题呢?似乎在同一个子网里是不可以的?还是说要怎么设置一下才可以,不过这个不会,看来要好好看看openwrt官网的资料了。
       就是说,关于这个板子本身的教程和要玩的东西,至此结束。
       呼~终于把这玩意折腾开了~~

3.UI
        最新进展:
        周日下午我文艺了一把,不过也把这个事情做了开来。
        我在咖啡厅里,从试图总结原有方案,然后继续琢磨如何在原有方案上继续添加下去。最后我发现,因为UI的细节实在太多,而我重新做的时候,因为我始终没把这个UI的整体框架做到了然于心,也一直没能写出完整的文档。所以我一直是等同于第一次做那样,自下而上一点点积累,却因为回想到我原来的方案已经实现了的东西,结果是不上不下,所以一直做不开。
         最后因为考虑到最近把这个原来做的方案整理过一次,当前整理出来的结果让我个人相当满意,所以我一狠心,干脆放弃了原先自己从头搭建的半成品,直接从这个来移植,因为昨天下午我什么都没带就带了笔记本,我也不给自己其他机会做别的事,所以我憋了一口气,撑着把这个东西做下来,所以虽然我还没有完成从 tft到12864 驱动的改变以及一些其他我在重新做的过程中吸纳的一些新想法,但至少我把它脱离原来的工程环境单独通过编译了。
        并且在最后十五分钟,大致厘定了接下来要做的事情,这次十分具体,因为这次是自上而下做的。
        现在想起来,以前在对于 自上而下自下而上这类话题的时候,我一直没有把握代码的规模这些粒度问题,事实上像这种粒度的模块,而且特别还是自己早已经实现过一次的方案,实在不该玩什么 自下而上,宁可认真整理也不要真的再走一次自下而上,因为这种思路太容易让设计基线发生变动了,而且看不到完成的尽头。

        关于这一点,从一些应聘信息中我看到,大家更倾向于使用业界成熟的方案,如UCGUI之类的,我想这也将是我最后一次自己试图实现这种简单的UI方案。以后我都将考虑使用现有方案,除非我最后再次发现我有可以借鉴和改进的空间。
        最近上班,结束了那些改板的杂事我又开始修改程序,又涉及到这一部分,项目的进展让UI的需求又有了新要求,其中一部分验证了我最初的想法,也出现了一些我原先没有预料到或者我还是没法实现的目标,所以我想,我一定要在这两个事情上尽快取得一个连接点——那样我就不必重新从头构造,省去许多时间,同时,我业余的努力可以对工作的内容有所帮助。而我之前,因为对工作上已经完成的那个体系不够满意,因此迟迟没有直接移植过来用。导致我从头在12864上构建的时候花费了大量精力和时间。
        而我昨天在检查之前那个经过整理的体系后,突然发现它已经在很大程度上符合我当前的要求了,大可直接移植过来,放弃重新构建。
        另外我原先打算,先完成这个,再去借鉴现有的方案,但事实证明,我自己被需求推动产生的想法,需要相当的时间,而我如果开始去研究现有的方案,很可能可以马上获得一些启发——甚至我就直接放弃我自己构建的想法了。
        当然,眼下事情太多,我精力有限,我决定先不折腾这些,暂时只打算直接移用我现在的方案。
        这件事情我必须给它设定一个停止条件:就算判定它失败,遭受我的放弃也可以,因为实在拖了太多时间。
分散了我的精力,而他们很可能是没有太大意义的。
        但,不管是工作上花的时间,还是我业余的一些尝试,它们都是我过去一年多主要的尝试,我还是希望它们给我留下一些可以将来写在简历上的东西,所以我最好还是花时间整理整理。
       我希望从中得到什么,又大概要花多少时间,是不是我能承受的?


4.ENC28J60+LWIP/UIP

5.Ubuntu下 编译和烧写stm32单片机程序 
          (LATEST STATUS)这件事情,可以暂时了结了,因为相关的内容,已经属于新的事项了。
当前我为这个事情,牵扯到要进一步学习熟悉GCC、make的相关选项,同时还有更重要的就是熟悉codeblocks这个跨平台的开源免费ide。
          已经有点偏离这件事情了,为了防止这个事件的范围蔓延,就此收住。唯一要做的下一步就是修改makefile,把它做成一个通用的模板。
          即使只是在shell下 make又算什么呢?我又不是一天两天玩shell


        只是 编译 和 烧写,什么该死的 gdb/gdbserver,甚至更远的的 Codeblocks环境设置、DDD图形化GDB都扔一边;
        报告一下,昨晚简单弄了一下:
        首先偶用gcc编译已经编译成功了(至少看起来没错误),就是不知道为啥烧进去以后没反应
,后来回想了一下很可能是因为在windows xp下iar的时候,我是有选项设置成烧录flash,而在这里我却不知道到底这一个动作是该在gcc编译时以什么命令完成还是在stlink烧录时如何设置,看来还得看资料;
        另外一个要解决的也是最基本的事情就是,确实如我此前所想,因为我没把他的环境变量设置好,或者干脆把它的安装文件放在 /usr/local/bin下所以导致我之前非sudo无法运行挺不爽。这个倒是非常轻松的解决。

        接下来我觉得让程序烧进去能跑起来不算太大的事情,然后我就是要稍微整理一下编译make脚本和烧录命令啥的,方便以后使用,至少写个应用笔记之类的。
        好吧,洗澡,换衣服,吃饭~~ 

        刚发现还是不行,在研究各种 启动文件 一类的东西的时候,我想了想,决定试试源头那个github上下载到的stm32f3discover的板子,然后我发现它是可以的。
        如此说来,我需要在ubuntu下重新按照这个整理一个stm32f030的版本——不过我突然发现stm32者一部分的文件很乱,所以我还是决定先整理整理先,这就类似于 下面的 第10个任务,所以,我决定回到windows下,因为我要确保那些东西在iar下可用,须知道我目前大多数自己的程序都在这个基础上完成的,如果他们弄坏了,我可就很麻烦~~ 
     不知道为什么,我重新从stm32f3discover的例程逐个逐个修改过来,但始终不行,但我得板子本身却是好的,而且我也试过用其他地方编译好的bin用stlink烧下去也是对的......
     最后不得已我再次回到github想搜索个现成的,搜是搜到的,就是该死的又是stm32f051的,我当时真是非常郁闷,st脑子到底想什么,同一个f0系列出两个板子。
     想了想我不折腾了,先买一个板子吧,淘宝看了看还行不贵,50多一点,买吧。反正有一个可用的,我再改回来希望就大了。
     这事情,就暂时到这里吧。折腾了一天。我还是想想加班的事情吧,很多次很多次焊电路都这么垃圾,这次得系统性来一次,像写程序那样去做。

      最新进展,在我折腾openwrt的时间里,stm32f051的板子到了,切回到Ubuntu下,把那个在github上搞到手的gnu-arm编译的例程折腾了一下,烧下去,done!太好了。
      接下来我想靠着这个东西,把stm32f030搞定应该不是太大问题,不过暂时不想弄了就是,反正也11点了,今晚一回来就洗完了澡,接下去差不多有一个小时的时间,干点别的,该看的书啥的,理一理,还有一些别的事情,该整的都好好整~~ 

        可以了,不用多想了,大概就是相应的 makefile什么的不对的原因。
        因为无意在网上搜索到一个一个老外配置codeblocks的文章,突然发现我大致能看懂了,不妨试试,毕竟做成ide的方式还是很棒的。但没把握,试试,下午突然困想躺一下,居然睡着了,做了莫名其妙的一个梦。


6.基于Qt的开源助手(**)
7.跑各种各样的咖啡馆,解答一个开的下去开不的下去的疑惑(**)
       这个其实很需要我有时间到处跑,而这阵子,我实在是想好好呆在家里做其他事,所以估计暂时也只能不做了。 
8.陶弘景的 养性延命录 和 哈佛商学院全球案例库
       对于前者,我突然觉得我先解决 慢性咽喉炎 如何 慢性需慢治 和 脚底又生脚气,以及先把作息矫正过来(比如不要再像今晚这样12点半过后才睡,什么的再说吧。)
       至于 哈佛商学院全球案例库,我觉得,在 Code Reading这本书看完后可以开始;

9.清理一下电脑里的那些代码
       事实上,我最近把工作电脑盘里全部如数烤到我的移动硬盘里,如果要整理,试问整理谁先?而事实上,每次我整理这些东西,就像整理房间一样,总是没有特定目的然后就深陷进去最后总是重复。
       所以我想,我必须明确一份工作程序和处理方案以后,并把内容分类然后再严格按照一种方式整理,这件事情才有完。
       而这种处理方案必须做到暂时可以避免大多数时候的低效率重复。是的,这听起来就像暂时敲定一个程序接口一样。

所以这里,其实催生出一个新的事项:那就是 
10.制定那么一份 清理工作的程序和处理方案;


11.关于 Contiki / FreeRTOS
        我在想我在什么地方真正体会一下 任务机制 和 动态内存管理,我突然觉的暂时没必要瞎折腾,除非前面 3、4项我做出了眉目。

12.重新整理ST库
        关于这个,我觉得,除非 第5点做好,否则我不考虑;而同时,我在做第九项时,如果不是特别复杂,我会首先把这些部分慢慢改过来。
       总之,突然下大力气一次过把所有自己涉及过的外设(虽然也不多,大概四五个)都改过来,其付出的时间太多,而收效有效;

13.阅读Linux源码
       这个,须知道,其实它和我在搞的Embeded Linux关系不大。我觉得这个至少要在看完 Code Reading 和那些和 Embeded Linux目前我想知道的 启动过程 等内容 之后才进行。

14.M2M/IOT
      这个一看就是作孽的事情,先放下吧。
      不过值得注意的是,我最近看到消息华为推出一个 Lite OS,我对它很感兴趣,因为从描述来看我认为它脱胎于FreeRTOS,而且它的规模和大小真正适合单片机这种有可能做成物联网数量级的应用。
除此以外,这种没意义的追问,我决定闭嘴。

      当然这个月还有一些新的事情要添加进清单,但今晚就先到这里吧。
 
发表评论 评论 (2 个评论)
回复 eric_wang 2015-7-7 08:59
这个月很忙啊
回复 soso 2015-7-7 09:32
  

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章