總網頁瀏覽量

顯示具有 線上課程 標籤的文章。 顯示所有文章
顯示具有 線上課程 標籤的文章。 顯示所有文章

2021年3月8日 星期一

什麼是嵌入式系統?

歡迎透過合法的方式分享此文內容,若要轉載/轉貼,請明確貼出此原始連結並標示作者基本資訊請勿抄襲及非法轉貼(例如擷取內文但並未註明出處)

許多人都聽說過嵌入式系統,包含許多學生、教師甚至是從業工程師,即便這是個在工程界常聽到的名詞,但卻常常有人對此名詞感到困惑。

但到底什麼是嵌入式系統呢?

我們可以看一下Wikipedia上面的定義說明(該內容重點也符合英國電機工程師協會的定義)

An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electrical system.

從上述內容我們可以看出,簡單來說,嵌入式系統就是一種整合了電腦處理器、記憶體、I/O周邊裝置等單元、具備特定功能的電腦系統 (常被應用於電子系統或者機械系統之中)。

嵌入式系統的整合應用隨處可見,只要是具備電腦系統在其中的產品,都是嵌入式系統的範疇。例如冷氣機、洗衣機、平板、手機、數位電視、數位機上盒、智慧穿戴手環等等。

當然現在的手機或平板電腦的功能越來越廣泛,就嵌入式系統的定義來說顯得有些模糊了,但因為仍是裝置類型的產品,且主要以通訊功能為主,所以仍可歸類為嵌入式系統(和廣泛用途的PC個人電腦系統仍有不少差異)。

而我過去最常見到的錯誤認知是:

• 有些純軟體背景的人認為,嵌入式系統就是指Embedded Linux或者做Linux kernel相關內容

事實上,Embedded Linux是執行在某些嵌入式平台上面的的作業系統軟體,而不論是SoC或者MCU或者Embedded Microprocessor平台,即便其執行的軟體不屬於OS軟體(或RTOS),而可能只有跑non-OS的韌體程式(例如做一些做硬體控制或感測器訊號的擷取),這當然也是屬於嵌入式系統。

而雖然如果是有跑Embedded Linux的嵌入式系統,其中當然有Linux kernel,但其實這就較偏向於作業系統的範疇,因為Linux kernel也可能是PC上的Linux kernel,不能以此概括嵌入式系統,因為嵌入式系統是一個系統而不是單一個部分而已(同樣的,如果一個系統只有純電子電路,而沒有任何的電腦單元在其中,那也不屬於嵌入式系統)。

一樣都是嵌入式系統領域,卻常因人們各自不同背景而有不同的解讀或理解。所以在這裡特別作個說明,也建議閱讀下列相關文章。

相關文章:

1.   現代計算機系統核心硬體常見平台的分類與簡介概述

2.   Arduino到底是什麼? MCU又是什麼?

3.  MPU/MCU/Embedded Microprocessor/Embedded Processor名詞定義探討與整理

4. 許多人對於8051 MCU常有的錯誤觀念討論與闢除 

5. 【課程介紹】本學習區已開設 & 未來即將開設之嵌入式系統軟韌體技術課程 & 課程特色!


--------------------------

孫文良 (阿良的嵌入式系統技術學習區)

【若需要嵌入式系統技術輔導課程 可來信洽談合作方式: iws6645@gmail.com,亦可先點擊參考這篇介紹文章





2021年1月29日 星期五

【課程介紹】本學習區已開設之嵌入式系統軟韌體技術課程 簡介

本區於之前已開設之課程:

(一) 嵌入式系統基礎理論與實務課程(包含業界職缺介紹)

-> 以麻雀雖小五臟俱全之8051 MCU為實驗教材(以紮實基礎理論與實務觀念為課程核心,對於初學者而言,其實不會有8051太老舊的問題,希望初學者奠定紮實基礎以利初學者學習與至相關產業就業)。

(1) 嵌入式系統基本理論觀念(包含類別、業界職缺介紹)主要將以講師本身的產業任職 與 多年來輔導朋友們的經驗,希望帶領初學者認識一般學校比較不會教的知識(到底何謂嵌入式系統?有哪些分類?在產業常見的工程師職務類別有哪些?韌體可以找哪些工作?可以去挑戰哪些公司?有何限制?),甚至有需要的話都可以也可以在此課程內做相關產業職缺的求職輔導。 

(2) 在MCU實務的方面將包含基礎架構知識、指令集(組合語言實驗,包含各式定址法、8051記憶體系統架構、中斷機制等),標準8051內部各式周邊原理與驅動實驗(以C程式語言或組合語言實驗,視學員之基礎與學習狀況而定) 

該課程之介紹網頁連結請點此

 

同時也向大家介紹一下近期小弟我這邊已開始著手準備、於未來即將開設課程:

(二) STM32 (ARM Cortex-M CPU based MCU)韌體開發基礎課程

-> 預計將會包含STM32 MCU應用基礎觀念、ST工具軟體與KEILC IDE(MDK-ARM)開發環境建置、常見周邊驅動原理與應用(如GPIO、UART、TIMER、I2C、SPI等等,以及中斷機制)





(三) Embedded Linux on 嵌入式微處理器系統開發板(預計會是beaglebone black或類似的開發板)
-> 預計將會包含系統基礎觀念、開發環境建置、系統各階段軟韌體建置(bootloader、Linux kernel、filesystem、basic application program、裝置驅動程式(Linux device driver)基礎觀念 等項目)之教學


上述這些都是以現在國內多數的大學院校普遍教得比較隨便(或太淺,或缺乏業界實戰經驗觀念)、但是對任職韌體研發工程師相關職務相當重要的課程內容。

若有一定的學員需求和市場,上述課程將會於後續再拆分出更細緻的課程項目。

另外上述內容也可依學員自身的基礎、需求與學習狀況與講師共同討論客製化個人專屬課程內容方向。


  • Q&A

相關文章: 【這個學習區開設的課程目標是什麼? 要找科技業軟體開發相關的工程師工作,不是靠名校碩士學歷或者刷Leetcode比較快嗎?】 


  • 課程特色

講師個人學經歷簡歷: https://sites.google.com/view/wenliangsun/

- 講師本身具備 產業界開發經驗(兩間知名IC設計公司之 軟韌體公版 與 系統應用工程開發),兼具軟體、韌體與硬體開發相關技術背景,亦曾於中小企業擔任產品研發顧問,了解相關產業對於人才技術基礎方面的需求

- 講師長期接觸學術界,了解國內大學校院於嵌入式系統軟韌硬體技術教學方面的不足與缺漏

- 主要以 一對一家教模式極小班制 的方式授課 

- 可按照每位學員的不同狀況與需求(如就業內容需求)針對授課內容進行 客製化安排規劃

- 上課時間可自由動態調整(與講師雙方討論確認即可)

上多少課程付多少費用,上課費用每次結清,可自由決定上課時數,不必被強制綁死整個系列課程,不須要在事前就將系列課程的所有費用付清

不好高騖遠,從具體而微之較簡易之嵌入式硬體平台開始切入,著重重要基礎觀念與技術的養成,也並非只是手把手按照範實驗例照本宣科的那種表面上讓高規格的硬體平台功能能動就好的課程

可從嵌入式軟韌體相關產業職缺與狀況之相關觀念開始輔導,並非一般補習班之制式化課程

可協助產業界企業公司進行人員之嵌入式系統相關技術培訓輔導


孫文良 (阿良的嵌入式系統技術學習區)

【若需要嵌入式系統技術輔導課程 可來信洽談合作方式: iws6645@gmail.com,亦可先點擊參考這篇介紹文章