學(xué)習(xí)嵌入式怎么入門 學(xué)好嵌入式必須要學(xué)的課程有什么?比如c?
學(xué)好嵌入式必須要學(xué)的課程有什么?比如c?感謝邀請(qǐng)。這個(gè)問(wèn)題也許是困惱所有嵌入式初學(xué)者的難題,下面課內(nèi)容是嵌入式學(xué)習(xí)必學(xué)的:C語(yǔ)言C操作系統(tǒng)計(jì)算機(jī)組成原理linux編程51單片機(jī)arm硬件編程語(yǔ)言(FP
學(xué)好嵌入式必須要學(xué)的課程有什么?比如c?
感謝邀請(qǐng)。
這個(gè)問(wèn)題也許是困惱所有嵌入式初學(xué)者的難題,下面課內(nèi)容是嵌入式學(xué)習(xí)必學(xué)的:C語(yǔ)言C操作系統(tǒng)計(jì)算機(jī)組成原理linux編程51單片機(jī)arm硬件編程語(yǔ)言(FPGA)模擬電路amp數(shù)字電路。
1、cc語(yǔ)言,這是計(jì)算機(jī)行業(yè)的必修課,可以找扎得嚴(yán)把英語(yǔ)學(xué)好,也可以按裝turboc編譯器為開發(fā)環(huán)境,交流C語(yǔ)言編程安裝好vc6.0自學(xué)C編程。
2、操作系統(tǒng),先在電腦上安裝好一個(gè)vmwareworkstation,然后再在vmwareworkstation里按裝一個(gè)linux(redhat企業(yè)版)虛擬機(jī)。怎么學(xué)習(xí)幫一下忙操作系統(tǒng)的基本原理,熟得不能再熟linux環(huán)境下的開發(fā)環(huán)境,然后你就這個(gè)可以跟著《自己動(dòng)手寫操作系統(tǒng)》寫個(gè)操作系統(tǒng)試下。
3、計(jì)算機(jī)組成原理,認(rèn)識(shí)計(jì)算機(jī)的基本原理,看看吧一個(gè)計(jì)算機(jī)的都差不多組成及軟件在里面是如何能跑的。
4、《unix/linux編程實(shí)踐教程》可以算是linux編程的必修課,很還好的一本書,初學(xué)嵌入式的朋友可以看一下。
5、單片機(jī),不過(guò)應(yīng)該是一臺(tái)電腦,像現(xiàn)在的汽車完全控制、led控制、屏幕亮光程度控制,它都這個(gè)可以實(shí)現(xiàn)方法,自己買塊開發(fā)板弄再看看,你能只學(xué)很多的別人學(xué)過(guò)了的。
6、arm,現(xiàn)在流行的微機(jī),說(shuō)白了是32位的單片機(jī),還也可以跑操作系統(tǒng)哦,自己想辦法移植一個(gè)操作系統(tǒng)上去吧
7、硬件編程語(yǔ)言(FPGA),芯片不知道是怎摸制作成的,去學(xué)習(xí)這門課,你就很清楚了
8、模擬電路amp數(shù)字電路,硬件的基礎(chǔ),要是也可以的話,去學(xué)習(xí)下protel99,自己做個(gè)硬件pcb板試一下。
計(jì)算機(jī)這行是更適合于實(shí)踐的課程,所以才要不太注重動(dòng)手能力,學(xué)習(xí)嵌入式這基本是課程的時(shí)候,你也可以遵循這樣的順序來(lái)學(xué)習(xí):
1:C語(yǔ)言、計(jì)算機(jī)組成原理、模擬電路amp數(shù)字電路
2:匯編語(yǔ)言、單片機(jī)、操作系統(tǒng)、C
3:硬件編程語(yǔ)言、arm
嵌入式開發(fā)無(wú)它分四個(gè)方向,硬件、驅(qū)動(dòng)、內(nèi)核、應(yīng)用,如果是只希望向嵌入式軟件方向發(fā)展中的話,目前最常見的是
嵌入式LinuxARM方向,關(guān)于這個(gè)方向,差不多分3個(gè)階段:
1、嵌入式linux上層應(yīng)用,以及QT的GUI開發(fā)
2、嵌入式linux系統(tǒng)開發(fā)
3、嵌入式linux驅(qū)動(dòng)開發(fā)嵌入式目前通常面向的幾個(gè)操作系統(tǒng)是,LINUX,WINCE、VxWorks等等Linux是開源能免費(fèi)的,但其源代碼是開放的,更加合適我們學(xué)嵌入式。
在家自學(xué)的話你可以不接觸以上路線:
(1)C語(yǔ)言是所有編程語(yǔ)言中的強(qiáng)者,單片機(jī)、DSP、類似于ARM的諸般芯片的編程都是可以用C語(yǔ)言一切搞定),但需要太熟練的掌握。推薦書籍:清華出版社的很還好,《The C Programming Language》這書最經(jīng)典的教材是老外寫的,也有中譯版本。
(2)操作系統(tǒng)原理,是必須的,如果你是計(jì)算機(jī)專業(yè)本科畢業(yè)那也就無(wú)所謂了,如果是非計(jì)算機(jī)專業(yè)的就要找一本比較淺顯的計(jì)算機(jī)原理書籍去看一看,把啥叫“進(jìn)程”“線程”“系統(tǒng)調(diào)度”等等基本上問(wèn)題搞清楚。
(3)Linux操作系統(tǒng)就是用C語(yǔ)言c語(yǔ)言程序的,所以我你也估計(jì)先自學(xué)下Linux方面的編程,唯有你會(huì)應(yīng)用形式了,才能近三步去了解其內(nèi)核的精髓。幫我推薦書籍:《UNIX環(huán)境高級(jí)編程》(第2版)
(4)了解ARM的架構(gòu),原理,這些其匯編指令,我們?cè)谇度胧介_發(fā)中,一般很少去寫匯編,但最少的要求是能夠看的懂a(chǎn)rm匯編。
(5)系統(tǒng)移植技術(shù)的時(shí)候,就不需要你從下層的bootloader就開始,然后內(nèi)核移植,文件系統(tǒng)移植等。而移植這部分對(duì)硬件的依賴是更加大的,其電腦配置步驟也相對(duì)于復(fù)雜,也還沒(méi)有太大詳細(xì)資料。
(6)驅(qū)動(dòng)開發(fā)完畢linux驅(qū)動(dòng)程序設(shè)計(jì)你乃個(gè)極富有挑戰(zhàn)性的領(lǐng)域,又是一個(gè)淵源流傳的內(nèi)容。linux驅(qū)動(dòng)程序設(shè)計(jì)本質(zhì)是一類linux內(nèi)核編程范疇的,致使是對(duì)linux內(nèi)核和內(nèi)核編程是有要求的。在學(xué)習(xí)前你要想了解linux內(nèi)核的組成,只不過(guò)每一部分要詳細(xì)研究的話加上也可以擴(kuò)展成一本厚書。
給大家把一個(gè)嵌入式開發(fā)怎么學(xué)習(xí)大方面的學(xué)習(xí)框架搭不出來(lái)了
。
最后呢祝大家都能夠在去學(xué)習(xí)的路上鵬程萬(wàn)里。
大一非計(jì)算機(jī)專業(yè)學(xué)生,懂得一些C語(yǔ)言,只會(huì)敲代碼,想要系統(tǒng)的學(xué)好嵌入式開發(fā),該怎么做?
相當(dāng)感激邀請(qǐng)我回答問(wèn)題。
主要是看你以后不打算從事行業(yè)也就是你以后想做什么?是做嵌入式平臺(tái)上面的軟件開發(fā),意思就是平臺(tái)早就有了,你只不過(guò)借助于平臺(tái)開發(fā)適合當(dāng)前平臺(tái)的軟件。舉個(gè)例子,你在上面開發(fā)小游戲。
還是還想從事行業(yè)嵌入式平臺(tái)本身開發(fā)。如果是應(yīng)用軟件開發(fā),現(xiàn)在主流的肯定是c的或c家家語(yǔ)言,這幾年不斷通吃技術(shù)的興起也有好多軟件,游戲是用java開發(fā)的。假如要從事的是平臺(tái)變更土地性質(zhì)的話,這樣的話建議您你不需要好好學(xué)習(xí)匯編語(yǔ)言和操作系統(tǒng)。但是操作系統(tǒng)要全方面能夠掌握。主流的windows,liunx等。畢竟要寫平臺(tái)驅(qū)程和一些大型的操作系統(tǒng)。匯編語(yǔ)言前提是要專精,精通滿,專精重要的事情說(shuō)三遍。
其他的內(nèi)容比如,數(shù)據(jù)結(jié)構(gòu)和算法,單片機(jī)原理,操作系統(tǒng),匯編,高數(shù),離散數(shù)學(xué),線數(shù)。是對(duì)驅(qū)程開發(fā),效率很有用,也就是說(shuō),學(xué)好各種數(shù)學(xué)很不重要。
而而學(xué)習(xí)難度大,畜牧獸醫(yī)相關(guān)專業(yè)這個(gè)行業(yè)的人來(lái)說(shuō)低些少,要知道入門起點(diǎn)較高,必須精通軟硬家,而企業(yè)數(shù)量也較低,學(xué)歷需求也較高。反過(guò)來(lái),錢也高,穩(wěn)定啊,開發(fā)不出來(lái)的產(chǎn)品容易被別人盜版。
其實(shí),一句話依據(jù)自己的興趣走,任何事情都不是難事。喜歡就去做,只有做了,才明白酸甜苦辣。相信自已。