計(jì)算機(jī)系統(tǒng)的運(yùn)轉(zhuǎn)是系統(tǒng)中軟硬件共同努力的結(jié)果,沒有硬件的軟件是空中樓閣,而沒有軟件的硬件則只是一堆廢鐵。
硬件是底層基礎(chǔ),是所有軟件得以運(yùn)行的平臺(tái);軟件則實(shí)現(xiàn)了具體應(yīng)用,它按照各種不同的業(yè)務(wù)需求而設(shè)計(jì),并完成用戶的最終訴 求。硬件較固定,軟件則很靈活,可以適應(yīng)各種復(fù)雜多變的應(yīng)用。因此,計(jì)算機(jī)系統(tǒng)的軟硬件相互成就了對(duì)方。
驅(qū)動(dòng)程序負(fù)責(zé)硬件和應(yīng)用軟件之間的溝通,而驅(qū)動(dòng)工程師則負(fù)責(zé)硬件工程師和應(yīng)用軟件工程師之間的溝通,從字面意思來看,設(shè)備驅(qū)動(dòng)最通俗的解釋就是“驅(qū)使硬件設(shè)備行動(dòng)”。
1、裸機(jī)編程或單片機(jī)開發(fā)
裸機(jī)編程,就是直接編寫在硬件上運(yùn)行的程序,沒有操作系統(tǒng)的支持。一般我們把沒有操作系統(tǒng)的編程環(huán)境,稱為裸機(jī)編程環(huán)境,比如在單片機(jī)上編程。通過串口直接將程序下載到單片機(jī)芯片內(nèi)部的 Flash 中,單片機(jī)運(yùn)行時(shí),直接調(diào)用我們編程的程序。
這時(shí),我們編寫的程序一般都有一個(gè) while(1)的死循環(huán)存在,這樣程序才能一直保持運(yùn)行。裸機(jī)編程現(xiàn)在主要是正對(duì)低端的嵌入式系統(tǒng),如 SCM(single chip machine)、各式 MCU、DSP 等。當(dāng)然,編寫 PC 的 bootloader 肯定也屬 于裸機(jī)編程。
單片機(jī)一般有中央處理器 CPU、隨機(jī)存儲(chǔ)器 RAM、只讀存儲(chǔ)器 ROM、多種 I/O 口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能,這其中還包括顯示驅(qū)動(dòng)電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D 轉(zhuǎn)換器等功能等集成到一塊小芯片上。
單片機(jī)開發(fā)包括:程序設(shè)計(jì)(PC 端軟件編程),燒寫(將編程好的軟件下載到單片機(jī)),單片機(jī)系統(tǒng)的設(shè)計(jì)(硬件電路設(shè)計(jì))。
-
嵌入式
+關(guān)注
關(guān)注
5088文章
19159瀏覽量
306518 -
編程
+關(guān)注
關(guān)注
88文章
3634瀏覽量
93869 -
單片機(jī)
+關(guān)注
關(guān)注
0文章
217瀏覽量
16658
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論