發表文章

目前顯示的是 11月, 2013的文章

文章總列表

Cortex-M3 vol.2 架起最小環境

上一篇 提到我最後選了KEIL當作開發環境, 這一篇想講怎麼建構最小開發環境. 玩開發版, 我的習慣是讓LED一閃一閃亮晶晶, 看到一閃一閃, 好像我的未來也跟著點亮了 (嘴砲). 要讓LED亮暗很容易, 塞個boot-up code, 再塞個main function, 不過就是控制幾根pin腳的high-low, 翻一下data sheet以及schematics, 這件事可以輕鬆達成.  以前小時候, 我喜歡什麼都自己來, 比如說自己寫一個LPC17xx.h, 照著register address刻一個出來; 或著看了Cortex-M3的手冊, 自己去編一個對應的header file, 以及操作的函數. 這樣做的學習曲線陡峭, 可以學到超多東西, 但是對於生產力實在沒什麼gain.  所以我這次想仔細研究, 世界最好用的MCU開發環境, 他們是怎麼幫助user做這些事. 如果KEIL幫我搞定很多東西, 那我要怎麼使用, 不要硬是自己來. 底下列出一些note Keil/ARM/CMSIS/Include/core_cm3.h ARM編寫了所謂CMSIS library, 裡面有Cortex M3共同register一些structure definition. 這種東西有高手幫忙寫了, 一定比自己跛腳的版本好. 這個檔案有時候會需要去參考, 所以需要知道它放在哪裏. Keil/ARM/INC/NXP/LPC17xx/LPC17xx.h 這個檔案會去include CMSIS的header file (也就是core_cm3.h), 所以平常使用, 其實我們都只是include LPC17xx.h. 另外這個檔案也包括LPC17xx系列專用的registers定義. 這邊就顯示KEIL開發環境的價值了, 一堆MCU都有現成的定義在裡面, 拿來就可以用, 不需要像我小時候一樣辛苦.  另外在KEIL環境裡, 這個檔案Compiler會自動幫忙找到, 我猜是IDE幫忙設定include search path. 以前我會很堅持要把這個檔案拷貝出來, 放在自己的project底下. 現在我是覺得, 反正KEIL都有一套完整的方法維護這一切, 那就放開心胸的使用吧~ ...

關於提案被打槍

我上班的公司, 新人滿一個月處長會約談聊聊工作狀況, 性質主要是閒聊. 當時處長提到, 有想法就要提, 要勇敢的提, 不要怕被打槍. 當時我不大懂他的意思, 隨著我提proposal的次數便多, 終於瞭解處長的意思... 提案人召集會議報告想法, 然後接受 無情的 review. 有時候就是沒有想完整, 無法回答同事的問題, 回去再仔細想過, 經常可以發現更漂亮的解法. 所以提出想法被打槍, 不等於自己被否定, 畢竟人很難一開始就想得面面俱到. 關鍵是透過這個過程, 精煉自己的想法. 在這個過程裡, 不夠成熟的想法也會逐漸收斂, 漸漸變得全面. 所以處長的話我現在懂了, 有時候就算知道會被打槍, 會覺得不舒服, 還是要提出來. 有時候真的沒有人知道答案, 如果不在黑暗中開槍(某個人提案被打槍), 就沒有亮光去搜尋答案. 這個過程真的不舒服, 感覺很像自己變成火柴棒燒起來, 也難怪處長說不要怕被打槍. 這件事另外一個關鍵是, 同事之間有對事不對人的默契, 這樣才能進行健康的討論, 逐漸找到答案. 但是提案被打槍這件事, 始終還是不舒服就是了...

小米2s, 刷機note

[我想做的] 小米手機一直都沒有升級Android package, 停在4.1.1 這件事其實可以理解, 因為他算是深度訂製, 換版會有大量的修改要做 所以在4.1.1堪用的前提下, 當然是能用多久就用多久 But, 我想在小米手機使用藍牙4.0, BLE, 的心跳帶, 需要Android 4.3才能用 好在小米手機的開發者眾多, 我隨手就找得到三個版本的ROM可以用     - AOSP     - CM10.2     - MoKee 目標是在手機上的雙系統, 一個跑MIUI, 另外一個跑上面的ROM (ps. 這些開發者好像也快要切到Android 4.4繼續開發了) [先備份] 不得不推薦小米手機助手的備份功能, 在MIUI底下連線後點備份 所有東西都會備份到PC底下, 包括電話簿, APP, 簡訊, ... 在做任何操作之前先備份, 可以永保安康 [雙系統] 小米手機允許安裝2個ROM-package, 比如是我這次玩的Android 4.3 + MIUI 不過小米原本的系統比較像是備援, 在升級系統時, 會先把目前系統備份到另外一個系統在升級, 這樣就算壞掉了, 還有一個可以用 所以如果目前是用sys1開機, 就會先備份到sys2, 反之亦然 要安裝雙系統, 就要打斷上述的連結, 手段是CMW-recovery Google keyword: "CMW recovery 小米2s", 找一些文章安裝他 安裝好之後關機 進入recovery的方法, 按住電源鍵以及音量向上, 等到mi的icon出現後放掉電源鍵(音量還是按著), 這樣就會進入recovery mode了 Recovery裡有很多功能, 建議每個選單都大概看一下, 刷機之前都要做三清, 也在選單裡 目標是高級功能/ 開啓雙系統共存, 打開這個吧 !! [確定MIUI還可以開機] 確定要用雙系統之後, 要切換系統都要進Recovery mode 我是把Android 4.3裝在sys-1, MIUI裝在sys-2, 先進入sys-2看看 如果因為任何原因, MIUI進入以後空...