2012年1月12日 星期四

[Embedded] OSD 表單設計


OSD 設計

第一個任務是在Cortex M3上,實作一個程式,使其能夠控制攝影機,並且讓攝影機輸出對應的控制表單。

預期工作:
1.      設計 OSD 表單
2.      定義 OSD 表單對應的資料結構
3.      實作 OSD 控制邏輯


2012年1月10日 星期二

[Embedded] Cortex M3 上的第一個程式


以下介紹如何在Cortex M3上,開發一個簡單程式

軟體:
Ø  使用Keli Evaluation Kit

硬體:(若沒有硬體,可先用simulator模擬執行)
Ø  開發產品時所使用的是Luminary Micro公司生產,型號為LM3S3748的微控制器,此晶片規格如下:
² Cortex-M3 based Microcontroller:
u  50MHz, 128KB Flash ROM, 64KB SRAM, MPU
u  4 Timers
u  8 Motion Control PWM
u  8 Capture Compare Pins
u  USB HOST
u  2 * UART
u  2 * I2C
u  2 * SSI
u  1 * QEI
u  8 * 10-bit ADC
u  Temperature Sensor
u  2 * Analog Comparator
u  61 GPIO Pins
u  Battery-backed Hibernation Module
u  Watchdog Timer, Power saving modes,
u  JTAG and Serial Wire debug

[Embedded] ARM ToolChain 建立 (OpenSource)


原本想採用 ARM官方的開發工具Keli進行開發,但因為成本考量因素,所以改成採用open source的方式。

以下介紹開發環境安裝步驟

1      安裝 Minimalist GNU for Windows
此工具會在Windows系統下建立一個 GNU的開發環境,而且可以直接與Windows的檔案系統溝通。預設便已經有gcc 可以編譯程式。安裝時記得要勾選 MSYS。

2012年1月9日 星期一

[Embedded] ARM Coretex M3 程式寫作注意事項


最近需要在 ARM Cortex M3 上開發一個安全監控系統,茲將程式寫作時需要注意的事項整理如下:

l  區域變數(Local Variable)
Ø   若使用較大的變數定義(long),會使用運算較慢的指令集,造成整體效能較慢,但不會增加çode size
Ø   但使用較小的變數定義(),則需要多餘的指令作變數轉換,會增加code size
Ø   編譯器有個最佳化選項 ”all-in-register locals”,會將local變數放在register(Cortex M3共有13 32-bit general-purpose registers),當暫存器用完的時候,local變數才會放入到stack中。如此可以加速存取local 變數的時間。
建議:使用 int, unsigned int, long,而不要使用 short

2012年1月2日 星期一

[Study] 攝影機常用名詞及其解釋


由於工作需要,開始研究監控系統的攝影機架構以及其運作原理,以下摘錄學習過程中所遇到的常用名詞及其解釋。

基本

Ø   可見光
人眼可見光的波長從 400nm 700nm,頻率為 750TeraHZ 430THZ。這段光譜色彩表現,正好呈現了由紅到紫的七色彩虹。小於430THZ就是紅外線。大於750THZ就是紫外線。
n   螢光:
利用特殊的墨水或藥劑將太陽光中或其他光源中之紫外線反射出來,並轉變為可見色光,增加物體的明亮度。
n   磷光:
磷光和螢光不同,螢光是藉由反射、轉變光線達到顯色的效果,磷光則將光能存儲起來,然後以一種有色方式釋放出來。

[Study] Exposure (曝光)


Exposure (曝光)

Ø   定義:當影樣成像時,在感光元件上收集到的所有光。

Ø   Wiki說明:Total amount of light allowed to fall on the photographic medium (photographic film or image sensor) during the process of taking a photograph.

Ø   光量的大小,通常會使用單位 Photometric or luminous exposure,例如:photometric units。進光量的計算則是光與曝光時間的乘積,可以經由光圈(aperture),快門(shutter speed),和底片的感光度來控制。