開發板(DMA-2440L).jpg

「老師,我學嵌入式系統需要買一塊開發板嗎?」這是許多剛入門嵌入式系統的朋友,最常問的一句話。尤其從軟體業界轉行的朋友表示,他們才剛踏入嵌入式系統領域,硬體一點也不熟。一塊開發板少則 NT$4000 ~ NT$5000,多則一萬多元,實在買不下手。加上不知道哪塊開發板好?或者應該跟哪個廠商買?所以如果可以用「軟體模擬」的話,不僅省錢,也不會買了不適用而後悔。對於這樣的疑問,我都斬釘截鐵、帶著詭異的微笑、用短到對方無法接受的語句回答說:「要!」

「呃...可是...」「要!」「那...可不可以...」「不行!」滿足了自己捉弄別人的一點小小樂趣後,我會正經八百地解釋道:「學電腦不可能不上機 就學得會。就像學開車,你也不能光憑想像就考得上駕照。你可以不買車,先跟別人借車來練。但沒辦法天天對著鏡子想:『我會開車、我會開車、我會開 車...』就考上駕照。同理,你可以先跟補習班或朋友,借板子來學,但不能靠催眠來學會嵌入式系統。」


在這裡先幫某些讀者解釋一下何謂「開發板」 。某些廠商,會把目前在嵌入式業界流行的 CPU,搭配上各式各樣的周邊,做成一塊電路板,賣給嵌入式教育市場,或有志學習嵌入式系統的學生,作為實驗平台之用。這種板子,我們就稱它為「開發板」、「評估版」。英文叫做「Evaluation Board」,或簡稱「EVB」。

其實這個名詞最早來自業界。一些想推廣自家產品的晶片商,為了展現產品優點,吸引下游系統廠商使用,會自己「兜」出一塊「Demo」用的板子。雖然把產品配合其它電路,把整個系統做到好,並非晶片廠商該做之事(有點撈過界,一口氣把下游廠商該做的電路整合工作全包了)。但為了吸引買家,不得不這麼做。這就是業界口中的「評估板(EVB)」、「開發板」、或「Demo Board」。

ryan0988 發表在 痞客邦 留言(0) 人氣()

劇情簡介:描述遜咖中學老師尼爾(賽門佩格 飾演),偶然被外星人賦予心想事成的超能力,他不但擺脫了一班不受教的小屁孩,自己更是用超能力玩得不亦樂乎,就連愛犬阿丹都被他賦予說人話的能力,人生因此變得一帆風順,心儀的美女凱薩琳(凱特貝琴薩 飾演)也對他另眼相看。豈料,這一切都是外星人給人類的考驗,若是尼爾不能心存善念地使用他的超能力,地球就將被毀滅…。


absolutely_anything_ver4

absolutely_anything_ver8

absolutely_anything_ver5

absolutely_anything_ver6

absolutely_anything_ver7


elfilm_com-absolutely-anything-428586

elfilm_com-absolutely-anything-428587

elfilm_com-absolutely-anything-428588

elfilm_com-absolutely-anything-483881

ryan0988 發表在 痞客邦 留言(0) 人氣()

 

劇情簡介:移動迷宮】續集,改編自詹姆士達許納暢銷系列小說的第二部。 迷宮外的世界已經完全崩壞,成為人類無法生存的「焦土」世界,在「焦土」中有許多遭受病毒感染、令人聞之喪膽的活屍「狂客」。將他們囚禁在迷宮中的神秘組織「WCKD」啟動了第二階段的實驗,湯瑪士(狄倫歐布萊恩 飾演)一行人闖入了焦土世界,在這個充滿未知的危險地帶,他們將遇上哪些更困難的重重挑戰?又將如何揭開WCKD背後隱藏的驚人秘密?


maze_runner_the_scorch_trials

maze_runner_the_scorch_trials_ver2

maze_runner_the_scorch_trials_ver3

Scorch_trials_movie_poster


mazerunner-part2-01

mazerunner-part2-02

mazerunner-part2-03

The_Scorch_Trials_1

ryan0988 發表在 痞客邦 留言(0) 人氣()

ISP是Image Signal Processor的縮寫,ISP圖像信號處理器的主要作用是對前端圖像傳感器輸出的信號做後期的處理。不同的ISP用來匹配不同廠商的圖像傳感器。 ISP的優異在整個攝像機產品中很重要,應當說它直接影響呈現給用戶的影響畫質的優劣。圖像經過圖像經過CCD或者CMOS的採集後,需要經過後期的處理才可以較好的適應不同的環境,在不同的光學條件下都能較好的還原出現場細節。在ISP中它會完成我們常常提及的2A(AWB/AE,自動白平衡/自動曝光)或者3A(AWB/AE/AF,自動白平衡/自動曝光/自動聚焦)。傳統模式下一般採用一顆DSP或者一顆FPGA來完成對圖像的後期處理。有些攝像機產品支持的3D降噪功能、寬動態、慢快門、幀累積、強光抑制等功能也都是ISP來完成的。

ISP-Technology

目前應用在高清攝像機產品中的ISP一般有以下幾個來源:
 
1. 廠商自行研發: 高清攝像機設備廠商為了更好的配合後端壓縮、功能開發,自行研發ISP處理算法,將算法集成至FPGA或DSP芯片中,接駁前端圖像傳感器。
 
2. 第三方研發: 2010年已經逐漸誕生了一批由非高清攝像機製造廠商推出的一些ISP解決方案,他們直接出售不同的ISP芯片給攝像機廠商配合不同廠商的Sensor。
 
3. 套片模式: 由Sensor廠商將自主開發的ISP結合自家Sensor形成圖像採集處理解決方案推向客戶,其中的圖像處理算法及各種調試工作已經完成,攝像機廠商只需要做接口對接併後端壓縮或轉換成數字視頻(HD-SDI)即可。這種模式我們稱為Stand-Alone Devices或者Camera System Onchip。
 

ryan0988 發表在 痞客邦 留言(0) 人氣()

劇情簡介:延續2012年賣座電影【復仇者聯盟】劇情,一群被稱為復仇者聯盟的超級英雄團隊繼續踏上冒險之旅... 這一集將新加入的超級英雄包括快銀(亞倫泰勒強森 飾演)及猩紅女巫(伊莉莎白奧莉森 飾演)。


Avengers__Age_of_Ultron_29

avengers_age_of_ultron_ver12

avengers-age-of-ultron01


aou5

aou6

aou7

aou8

aou1

aou2

ryan0988 發表在 痞客邦 留言(0) 人氣()

劇情簡介:007龐德系列第24部作品,"丹尼爾克雷格"再度回歸飾演詹姆士龐德。一則來自過去的神秘訊息讓龐德開始追查一個國際犯罪組織。當M在倫敦奮力抵抗來自各方要終止MI6的壓力時,龐德已抽絲剝繭發現惡魔黨隱藏在層層謊言下的恐怖真相。


spectre

spectre_ver2

spectre_ver3

1423725292502



ryan0988 發表在 痞客邦 留言(0) 人氣()

劇情簡介:阿湯哥飾演的伊森韓特即將再度挑戰不可能的任務...... 伊森韓特與他的團隊必須執行史上最不可能的新任務---消滅一個神祕犯罪組織“辛迪加”,這個組織成員個個身懷絕技,而他們的目標就是:摧毀 IMF!


MissionImpossibleRogueNation

Mission__Impossible_5_Set_6

missionimpossibleset2


 




ryan0988 發表在 痞客邦 留言(0) 人氣()

今天做了一個錯誤的決定, 想說在一堆 C 程式裡呼叫另一堆 C++ 程式。邊弄邊學, 最後發現什麼都沒改的情況, 改用 g++ link 原本的 C 程式就會爆炸。想想還是撿要用的一小部份程式出來, 另寫 C 的程式比較單純。不過也藉這機會, 才讓我真的搞懂這之中發生什麼事。

先附上要用的範例, 再來慢慢廢話, 沒耐心的人直接玩範例可能就懂了。

原始碼

/* b.h */
#ifndef _B_H_
#define _B_H_

#ifdef __cplusplus
extern "C" {
#endif
int add(int a, int b);
#ifdef __cplusplus
}
#endif
#endif 

/* b.cpp */ #include "b.h" int add(int a, int b) { return a + b; }

/* a.c */ #include <stdio.h> #include "b.h" int main(void) { printf("%d\n", add(3, 5)); return 0; }

 編譯方式

$ gcc -c a.c
$ g++ -c b.cpp
$ g++ a.o b.o -o a
$ ./a                    # 輸出 8

 

說明

《How to mix C and C++  Updated! , C++ FAQ》將 C 和 C++ 互相呼叫的各式注意事項寫得相當清楚, 不愧為 FAQ 啊! 其中在 C 呼叫 C++ 的函式時, 要注意幾點 C++ 有 name mangling, 也就是不管是 class method 還是 function, 名稱 X 編出來都不會是 X, 而 C 通常沒有 name mangling。不過不管 C 是否有 name mangling, 關鍵是讓 C 能用 C 的方式認得 C++ 的 symbol。

先明白編譯、連結時發生了什麼事, 從這裡出發, 可知要讓 C 呼叫到 C++ 的函式, 要從幾個地方下手:

ryan0988 發表在 痞客邦 留言(0) 人氣()

这里说的不是类模板的偏特化,而是偏序函数模板。这个特性在C++标准中并不太明确,各家编译器对它个特性的工作细节可能会有些差异。

先来看看一个例子:

//filename:function_partial_order.cpp

//wirtten by saturnman

#include<iostream>

usingnamespace std;

//function template partial order feature

template<typename T>

void func1(T t)

{

ryan0988 發表在 痞客邦 留言(0) 人氣()

32位元環境涉及"ILP32"数据模型,是因为C数据类型为32位的int、long、指標。而64位元環境使用不同的資料模型,此时的long和指標已為64位元,故稱作"LP64"資料模型。

现今所有64位的类Unix平台均使用LP64数据模型,而64位Windows使用LLP64数据模型,除了指针是64位,其他基本类型都没有变。

 

 TYPE               LP32  ILP32  LP64  ILP64  LLP64

 

CHAR                8         8          8         8         8

SHORT             16       16        16       16       16

INT                  16       32        32        64      32

LONG               32       32        64       64       32

ryan0988 發表在 痞客邦 留言(0) 人氣()

Close

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

reload

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼