2015年6月27日 星期六

AutoIt試用心得

必須往系統設計上發展,也就是MCU及PC程式皆要會寫。
但PC上太多資源不好查,又要很深入C++,這個學習時間太長。
後來找到外掛程式AutoIt,看來這個可以解決問題。
它可以做膠合程式及PC GUI界面,所以只要使用C程式就可以了。
後來發現其實AutoIt比原預期的多,變成可以做出大部分測試及外掛程式。
且AutoIt可用範圍也比我想的大,也就是簡單應用就全包了。
使用它,也可以簡單學習windows程式設計。
先玩TCP/IP,因為這個手機也會用到。

MCU終極的應用程式Interpreter及Data Base

為何會說是終極,因為再做下去就是Shell了,用到Shell不如去用單板電腦上的Shell。
會有這一篇主要是做資源需求的記錄。

Interpreter的選擇比較多,易上手的是Lua。
Lua的ROM需求大約是300KB~400KB之間,因為還要加上User功能,所以只能給大約值。
主要的問題在RAM,因為程式是跑在RAM上,所以RAM的需求高些。這個不好估算。

要使用最小的Interpreter,就屬Forth了,ROM的容量從不到64KB到128kB。
看使用的Forth是用組合語言建造的,還是用C。

再來是Data Base,只有一套合用,就是SQLite。ROM大約要400KB,RAM需求不大。
但Data Base的速度依賴File System的速度。所以用在SDIO上是必須的。
以SD卡的高容量,Data Base應是很能發揮其功能。這點是Bee相當看好的新應用。
若是沒有用到查詢功能,理論上ROM可以更小,也許在250KB。
不使用查詢的狀況,大概是純記錄用,要解析時再將SD卡拿到PC去解析。
大部分還是機上查詢,還是算400KB,不然有擴充就完蛋了。

MCU上安裝Data Base是Bee以前從未想過的。
但在STM32F446出現,也開始考量這樣的需求。
但在MCU使用了Data Base之後,也表示MCU的軟體已經走到底了。
再複雓的應用,就是單板電腦接手了。
一項技術玩到底了,再來怎辦?
這成為Bee下一個思考的題目了!

2015年6月20日 星期六

單板電腦興起壓迫MCU應用

四年前看到Cortex-A系列開始以低於10美元供應,會有新的應用。
只是後來沒有機會用上。
現在看到單板電腦用Cortex-A系列CPU做的單板電腦以低於10美元出現。
可以確定Cortex-A系列正式進入MCU市場,因為最後一個障礙已消失了。
Cortex-A之所以無法進入MCU市場,主要在於它是CPU,必須外掛RAM,使得Layout要使用多層板。
以MCU市場來說,多層板的價格及複雜度高,使得工程師不易採用。就算價格低,仍不具足夠吸引力。
若用單板電腦,是不用煩惱Layout但價格又會變高。
不過單板電腦價格再降,變成直接使用,現在就是如此。
單板電腦已有基本作業系統及函式庫,這是MCU比較缺的。
單板電腦的程式開發,軟體函式庫拼裝能力比較重要。
這種開發方式其實就和MCU使用RTOS開發是相同的。
也就是MCU工程師會使用RTOS,要轉成單板電腦是比較沒有問題。
所以低價單板電腦的出現,將MCU工程師再次分級。

單板電腦在GUI上的函式庫很多,可以輕易完成很好的GUI,這是MCU不易做的。
好的GUI是很好的加分附加,對於商品推展有很大的幫助。
使用單板電腦也有降低庫存的壓力,因為是半成本,變成不用備太多原物料。
使用半成品做開發,也有助於加速開發時程。
找工程師及訓練也比MCU工程人員好找。

可以預見的是單板電腦進入MCU市場,只會加速工程師換代。
使用RTOS會是快速評比新舊工程師的有效方法。