2013年10月28日

OpenRocket 火箭設計模擬軟體

OpenRocket  是GNU GPL許可下的一個 Open Source 的 火箭設計模擬軟體



可以經由設定火箭各項參數(整流罩、彈體、尾翼或發動機…等參數)
模擬出發射後的狀態,如:加速度/速度變化、高度變化…



2013年10月9日

進階版 Debug Message

寫程式往往會 print 一堆變數或是訊息用來 Debug
而 Release Code 時,又不希望這些 Debug Message 鋪天蓋地的出現

或是, 印了一堆訊息,卻不知道某個訊息是
哪個檔案的哪個 function 的哪一行所印出來印出來的訊息?


由於上述問題,於是長久以來
我都會用 define 寫一個專門印 debug message  之用的巨集
並利用 #define _DEBUG_ 開啟
當 Release Code 時 , 將這行註解掉,所有的 message 就會統統消失

印出訊息包含程式檔案名稱、message 所在的行號及 function name 資訊

除了可以直接印一行字串之外
也可以印出多個變數並可以定自訂 format

#ifdef _DEBUG_
 #define Dbg(f,m...)     printf( "%s(line:%d)|%s()| "#m": "f"\n" \
     ,__FILE__,  __LINE__, __FUNCTION__ ,##m)
#else
 #define Dbg(m)
#endif


2013年10月3日

Serial Port Teminal




嵌入式系統不見得都有螢幕可以顯示資訊,
更常見是透過 UART 將資料傳輸到 PC 上顯示
不同的作業系統,往往需要找對應平台的終端機軟體跟板子連接

是否有各平台皆可執行的終端機呢?

藉由 JAVA 可跨平台特性開發了這個終端機程式,
即使在不同作業系統上只要裝好 JAVA 的 JRE
即可執行這個終端機程式

最終,打算整進一個完整開發工具中
如同瑞士刀中的一個刀片…


OS: Linux / Windows

JRE: http://www.java.com/zh_TW/download/

Serial Port Teminal :  Download