什么是單片機,對于開(kāi)發(fā)和應用功能 提供哪些呢?

2018-05-26 11:01:32分類(lèi):行業(yè)資訊5918

  單片微型計算機簡(jiǎn)稱(chēng)單片機,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的縮寫(xiě)MCU表示單片機,它最早是被用在工業(yè)控制領(lǐng)域。由于單片機在工業(yè)控制領(lǐng)域的廣泛應用,為使更多的業(yè)內人士、學(xué)生、愛(ài)好者,產(chǎn)品開(kāi)發(fā)人員掌握單片機這門(mén)技術(shù),于是產(chǎn)生單片機開(kāi)發(fā)板,比較有名的例如電子人DZR-01A單片機開(kāi)發(fā)板。單片機由芯片內僅有CPU的專(zhuān)用處理器發(fā)展而來(lái)。最早的設計理念是通過(guò)將大量外圍設備和CPU集成在一個(gè)芯片中,使計算機系統更小,更容易集成進(jìn)復雜的而對體積要求嚴格的控制設備當中。INTEL的Z80是最早按照這種思想設計出的處理器,從此以后,單片機和專(zhuān)用處理器的發(fā)展便分道揚鑣。

  單片機的概述:

  單片機是指一個(gè)集成在一塊芯片上的完整計算機系統。盡管他的大部分功能集成在一塊小芯片上,但是它具有一個(gè)完整計算機所需要的大部分部件:CPU、內存、內部和外部總線(xiàn)系統,目前大部分還會(huì )具有外存。同時(shí)集成諸如通訊接口、定時(shí)器,實(shí)時(shí)時(shí)鐘等外圍設備。而現在最強大的單片機系統甚至可以將聲音、圖像、網(wǎng)絡(luò )、復雜的輸入輸出系統集成在一塊芯片上。

  彈片機又稱(chēng)單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計算機系統集成到一個(gè)芯片上。概括的講:一塊芯片就成了一臺計算機。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習、應用和開(kāi)發(fā)提供了便利條件。同時(shí),學(xué)習使用單片機了解計算機原理與結構的最佳選擇。

  單片機的特點(diǎn):

  2.1.集成度高、體積小。

  單片機將CPU、存儲器、I/O接口等各種功能部件集成在一塊晶體芯片上,體積小,節省空間。能靈活,方便地應用于各種智能化的控制設備和儀器,實(shí)現機電一體化。

  2.2.可靠性高,抗干擾性強。

  單片機把各種功能部件集成在一塊芯片上,內部采用總線(xiàn)結構,減少了各芯片之間的連線(xiàn),大大提高了單片機的可靠性與抗干擾能力。另外,其體積小,對于強磁場(chǎng)環(huán)境易于采取屏蔽措施,適合在惡劣環(huán)境下工作。

  2.3.低功耗。

  許多單片機的工作電壓只有2~4伏特,電流幾百微安,功耗很低,適用于便攜式系統。

  2.4.控制功能強。

  其CPU可以對I/O端口直接進(jìn)行操作,可以進(jìn)行位操作、分支轉移操作, 還能方便地實(shí)現多機控制,使整個(gè)系統的控制效率大為提高,適用于專(zhuān)門(mén)的控制領(lǐng)域。

  2.5.可擴展性好。

  單片機具有靈活方便的外部擴展總線(xiàn)接口,使得當片內資源不夠使用時(shí)可以非常方便地進(jìn)行片外擴展。另外,現在單片機具有越來(lái)越豐富的通信接口:如異步串行口SCI、同步串行口SPI、I2C、CAN總線(xiàn)、甚至有的單片機還集成了USB接口或以太網(wǎng)接口,這些豐富的通信接口使得單片機系統與外部計算機系統的通信變得非常容易。

  2.6.性?xún)r(jià)比高。

  單片機應用廣泛,生產(chǎn)批量大,產(chǎn)品供應商的商業(yè)競爭使得單片機產(chǎn)品的性能越來(lái)越強而價(jià)格低廉,有優(yōu)異的性能價(jià)格比。

  單片機的分類(lèi):

  3.1.通用型/專(zhuān)用型 這是按單片機適用范圍來(lái)區分的。例如,80C51是通用型單片機,它不是為某種專(zhuān)用途設計的;專(zhuān)用型單片機是針對一類(lèi)產(chǎn)品甚至某一個(gè)產(chǎn)品設計生產(chǎn)的,例如為了滿(mǎn)足電子體溫計的要求,在片內集成ADC接口等功能的溫度測量控制電路。

  3.2.總線(xiàn)型/非總線(xiàn)型 這是按單片機是否提供并行總線(xiàn)來(lái)區分的??偩€(xiàn)型單片機普遍設置有并行地址總線(xiàn)、 數據總線(xiàn)、控制總線(xiàn),這些引腳用以擴展并行外圍器件都可通過(guò)串行口與單片機連接,另外,許多單片機已把所需要的外圍器件及外設接口集成一片內,因此在許多情況下可以不要并行擴展總線(xiàn),大大減省封裝成本和芯片體積,這類(lèi)單片機稱(chēng)為非總線(xiàn)型單片機。

  3.3.控制型/家電型 這是按照單片機大致應用的領(lǐng)域進(jìn)行區分的。一般而言,工控型尋址范圍大,運算 能力強;用于家電的單片機多為專(zhuān)用型,通常是小封裝、低價(jià)格,外圍器件和外設接口集成度高。 顯然,上述分類(lèi)并不是惟一的和嚴格的。例如,80C51類(lèi)單片機既是通用型又是總線(xiàn)型,還可以作工控用。

  單片機的原理:

  目前,單片機原理在當代的應用可謂是越來(lái)越廣泛,單片機原理是值得我們好好學(xué)習的,現在我們就深入了解單片機原理。

  

 

  單片機原理

  所謂單片機就是指一個(gè)集成在一塊芯片上的完整計算機系統。盡管他的大部分功能集成在一塊小芯片上 ,但是它具有一個(gè)完整計算機所需要的大部分部件。單片機又稱(chēng)單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把 一個(gè)計算機系統集成到一個(gè)芯片上。概括的講:一塊芯片就成了一臺計算機。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習、 應用和開(kāi)發(fā)提供了便利條件。同時(shí),學(xué)習使用單片機是了解計算機原理與結構的最佳選擇。

  隨著(zhù)大規模集成電路的出現及其發(fā)展,將計算機的CPU 、RAM 、 ROM 、定時(shí)/數器和多種I/O接口集成在一片芯片上,形成芯片級的計算機,因此單片機早期的含義稱(chēng)為單片微型計算機,直譯為單片機 。

  單片機的結構:

  5.1.運算器:用于實(shí)現算術(shù)和邏輯運算。計算機的運算和處理都在這里進(jìn)行;

  5.2.控制器:是計算機的控制指揮部件,使計算機各部份能自動(dòng)協(xié)調的工作;

  5.3.存儲器:用于存放程序和數據;(又分為內存儲器和外存儲器,內存儲器就如我們電腦的硬盤(pán),外存儲器就如我們的U盤(pán))

  5.4.輸入設備:用于將程序和數據輸入到計算機(例如我們電腦的鍵盤(pán)、掃描儀);

  5.5.輸出設備:輸出設備用于把計算機數據計算或加工的結果以用戶(hù)需要的形式顯示或保存(例如我們的打印機)。

  單片機的工作過(guò)程 :

  單片機自動(dòng)完成賦予它的任務(wù)的過(guò)程,也就是單片機執行程序的過(guò)程,即一條條執行的指令的過(guò)程,所謂指令就是把要求單片機執行的各種操作用的命令的形式寫(xiě)下來(lái),這是在設計人員賦予它的指令系統所決定的,一條指令對應著(zhù)一種基本操作;單片機所能執行的全部指令,就是該單片機的指令系統,不同種類(lèi)的單片機,其指令系統亦不同。為使單片機能自動(dòng)完成某一特定任務(wù),必須把要解決的問(wèn)題編成一系列指令(這些指令必須是選定單片機能識別和執行的指令),這一系列指令的集合就成為程序,程序需要預先存放在具有存儲功能的部件——存儲器中。存儲器由許多存儲單元(最小的存儲單位)組成,就像大樓房有許多房間組成一樣,指令就存放在這些單元里,單元里的指令取出并執行就像大樓房的每個(gè)房間的被分配到了唯一一個(gè)房間號一樣,每一個(gè)存儲單元也必須被分配到唯一的地址號,該地址號稱(chēng)為存儲單元的地址,這樣只要知道了存儲單元的地址,就可以找到這個(gè)存儲單元,其中存儲的指令就可以被取出,然后再被執行。

  程序通常是順序執行的,所以程序中的指令也是一條條順序存放的,單片機在執行程序時(shí)要能把這些指令一條條取出并加以執行,必須有一個(gè)部件能追蹤指令所在的地址,這一部件就是程序計數器PC(包含在CPU中),在開(kāi)始執行程序時(shí),給PC賦以程序中第一條指令所在的地址,然后取得每一條要執行的命令,PC之中的內容就會(huì )自動(dòng)增加,增加量由本條指令長(cháng)度決定,可能是1、2或3,以指向下一條指令的起始地址,保證指令順序執行。

  單片機的應用 :

  7.1.在智能儀器儀表上的應用

  單片機具有體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應用于儀器儀表中,結合不同類(lèi)型的傳感器,可實(shí)現諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長(cháng)度、硬度、元素、壓力等物理量的測量。采用單片機控制使得儀器儀表數字化、智能化、微型化,且功能比起采用電子或數字電路更加強大。例如精密的測量設備(功率計,示波器,各種分析儀)。

  7.2.在工業(yè)控制中的應用

  用單片機可以構成形式多樣的控制系統、數據采集系統。例如工廠(chǎng)流水線(xiàn)的智能化管理,電梯智能化控制、各種報警系統,與計算機聯(lián)網(wǎng)構成二級控制系統等。

  7.3.在家用電器中的應用

  可以這樣說(shuō),現在的家用電器基本上都采用了單片機控制,從電飯褒、洗衣機、電冰箱、空調機、彩電、其他音響視頻器材、再到電子秤量設備,五花八門(mén),無(wú)所不在。

  7.4.在計算機網(wǎng)絡(luò )和通信領(lǐng)域中的應用

  現代的單片機普遍具備通信接口,可以很方便地與計算機進(jìn)行數據通信,為在計算機網(wǎng)絡(luò )和通信設備間的應用提供了極好的物質(zhì)條件,現在的通信設備基本上都實(shí)現了單片機智能控制,從手機,電話(huà)機、小型程控交換機、樓宇自動(dòng)通信呼叫系統、列車(chē)無(wú)線(xiàn)通信、再到日常工作中隨處可見(jiàn)的移動(dòng)電話(huà),集群移動(dòng)通信,無(wú)線(xiàn)電對講機等。

  7.5.單片機在醫用設備領(lǐng)域中的應用

  單片機在醫用設備中的用途亦相當廣泛,例如醫用呼吸機,各種分析儀,監護儀,超聲診斷設備及病床呼叫系統等等。

  此外,單片機在工商,金融,科研、教育,國防航空航天等領(lǐng)域都有著(zhù)十分廣泛的用途。

  單片機的主要發(fā)展階段:

  早期階段SCM即單片微型計算機(Microcontrollers)階段,主要是尋求最佳的單片形態(tài)嵌入式系統的最佳體系結構。“創(chuàng )新模式”獲得成功,奠定了SCM與通用計算機完全不同的發(fā)展道路。在開(kāi)創(chuàng )嵌入式系統獨立發(fā)展道路上,Intel公司功不可沒(méi)。

  Micro Controller Unit中期發(fā)展MCU即微控制器(Micro Controller Unit)階段,主要的技術(shù)發(fā)展方向是:不斷擴展滿(mǎn)足嵌入式應用時(shí),對象系統要求的各種外圍電路與接口電路,突顯其對象的智能化控制能力。它所涉及的領(lǐng)域都與對象系統相關(guān),因此,發(fā)展MCU的重任不可避免地落在電氣、電子技術(shù)廠(chǎng)家。從這一角度來(lái)看,Intel逐漸淡出MCU的發(fā)展也有其客觀(guān)因素。在發(fā)展MCU方面,最著(zhù)名的廠(chǎng)家當數Philips公司。Philips公司以其在嵌入式應用方面的巨大優(yōu)勢,將MCS-51從單片微型計算機迅速發(fā)展到微控制器。因此,當我們回顧嵌入式系統發(fā)展道路時(shí),不要忘記Intel和Philips的歷史功績(jì)。當前趨勢SoC嵌入式系統(System on Chip)式的獨立發(fā)展之路,向MCU階段發(fā)展的重要因素,就是尋求應用系統在芯片上的最大化解決,因此,專(zhuān)用單片機的發(fā)展自然形成了SoC化趨勢。隨著(zhù)微電子技術(shù)、IC設計、EDA工具的發(fā)展,基于SoC的單片機應用系統設計會(huì )有較大的發(fā)展。因此,對單片機的理解可以從單片微型計算機、單片微控制器延伸到單片應用系統。

  單片機系統軟件抗干擾方法:

  在提高硬件系統抗干擾能力的同時(shí),軟件抗干擾以其設計靈活、節省硬件資源、可靠性好越來(lái)越受到重視。下面以mcs-51單片機系統為例,對微機系統軟件抗干擾方法進(jìn)行研究。

  單片機系統因干擾復位或掉電后復位均屬非正常復位,應進(jìn)行故障診斷并能自動(dòng)恢復非正常復位前的狀態(tài)。

  單片機的攻擊技術(shù):

  10.1.軟件攻擊。該技術(shù)通常使用處理器通信接口并利用協(xié)議、加密算法或這些算法中的安全漏洞來(lái)進(jìn)行攻擊。軟件攻擊取得成功的一個(gè)典型事例是對早期atmelat89c 系列單片機的攻擊。攻擊者利用了該系列單片機擦除操作時(shí)序設計上的漏洞,使用自編程序在擦除加密鎖定位后,停止下一步擦除片內程序存儲器數據的操作,從而使加過(guò)密的單片機變成沒(méi)加密的單片機,然后利用編程器讀出片內程序。

  10.2.電子探測攻擊。該技術(shù)通常以高時(shí)間分辨率來(lái)監控處理器在正常操作時(shí)所有電源和接口連接的模擬特性,并通過(guò)監控它的電磁輻射特性來(lái)實(shí)施攻擊。因為單片機是一個(gè)活動(dòng)的電子器件,當它執行不同的指令時(shí),對應的電源功率消耗也相應變化。這樣通過(guò)使用特殊的電子測量?jì)x器和數學(xué)統計方法分析和檢測這些變化,即可獲取單片機中的特定關(guān)鍵信息。

  10.3.探針技術(shù)。該技術(shù)是直接暴露芯片內部連線(xiàn),然后觀(guān)察、操控、干擾單片機以達到攻擊目的。

  雖然大多數普通單片機都具有熔絲燒斷保護單片機內代碼的功能,但由于通用低檔的單片機并非定位于制作安全類(lèi)產(chǎn)品,因此,它們往往沒(méi)有提供有針對性的防范措施且安全級別較低。加上單片機應用場(chǎng)合廣泛,銷(xiāo)售量大,廠(chǎng)商間委托加工與技術(shù)轉讓頻繁,大量技術(shù)資料外瀉,使得利用該類(lèi)芯片的設計漏洞和廠(chǎng)商的測試接口,并通過(guò)修改熔絲保護位等侵入型攻擊或非侵入型攻擊手段來(lái)讀取單片機的內部程序變得比較容易。

  應對單片機破解的建議:

  11.1.在選定加密芯片前,要充分調研,了解單片機破解技術(shù)的新進(jìn)展,包括哪些單片機是已經(jīng)確認可以破解的。盡量不選用已可破解或同系列、同型號的芯片。

  11.2.盡量不要選用mcs51系列單片機,因為該單片機在國內的普及程度最高,被研究得也最透。

  11.3.產(chǎn)品的原創(chuàng )者,一般具有產(chǎn)量大的特點(diǎn),所以可選用比較生僻、偏冷門(mén)的單片機來(lái)加大仿冒者采購的難度。

  11.4.選擇采用新工藝、新結構、上市時(shí)間較短的單片機,如atmelavr系列單片機等。

  11.5.在設計成本許可的條件下,應選用具有硬件自毀功能的智能卡芯片,以有效對付物理攻擊。

  11.6.如果條件許可,可采用兩片不同型號單片機互為備份,相互驗證,從而增加破解成本。

  11.7.打磨掉芯片型號等信息或者重新印上其它的型號,以假亂真。

  當然,要想從根本上防止單片機被解密,程序被盜版等侵權行為發(fā)生,只能依靠法律手段來(lái)保障。

  如果說(shuō)單片機就是一個(gè)電腦你可能不會(huì )認可,其實(shí)它和我們用的電腦的在本質(zhì)上沒(méi)有區別,只是5步和100步的區別,想當年比爾.蓋茨也給類(lèi)似的東西搞過(guò)編程,當時(shí)機器的顯示器是幾個(gè)led顯示燈。

  PLC與單片機的區別:

  看到網(wǎng)友在討論PLC與單片機的區別,我也來(lái)瞎說(shuō)幾句: PLC其實(shí)就是一套已經(jīng)做好的單片幾(單片機范圍很廣的喔)系統.

  PLC的梯形圖你可以理解成是與匯編等計算器語(yǔ)言一樣是一種編程語(yǔ)言,只是使用范圍不同!而且通常做法是由PLC軟件把你的梯形圖轉換成C或匯編語(yǔ)言(由PLC所使用的CPU決定),然后利用匯編或C編譯系統編譯成機器碼!PLC運行的只是幾器碼而已.梯形圖只是讓使用者更加容易使用而已.

  同樣MCS-51單片機當然也可以用于PLC制作,只是8位CPU在一些高級應用如: 大量運算(包括浮點(diǎn)運算),嵌入式系統(現在UCOS也能移植到MCS-51)等,有些力不從心而已.我公司在使用的一套工業(yè)系統就是使用MCS-51單片機做的,不過(guò)加上DSP而已,已經(jīng)能滿(mǎn)足我們要求(我們設備速度較慢,而且邏輯控制為主,但是點(diǎn)數不少喔,128點(diǎn)I/O呢!!),而且同樣使用梯形圖編程,我們在把我們的梯形圖轉化為C51再利用KEIL的C51進(jìn)行編譯.你沒(méi)有注意到不用型號的PLC會(huì )選用不同的CPU嗎!!

  當然也可以用單片機直接開(kāi)發(fā)控制系統,但是對開(kāi)發(fā)者要求相當高(不是一般水平可以勝任的),開(kāi)發(fā)周期長(cháng),成本高(對于一些大型一點(diǎn)的體統你需要做實(shí)驗,印刷電路板就需要一筆相當的費用,你可以說(shuō)你用仿真器,用實(shí)驗板來(lái)開(kāi)發(fā),但是我要告訴你,那樣做你只

  單片機故障的排除:

  13.1.單片機正常工作的三個(gè)條件

  單片機工作的三個(gè)條件分別是電源、時(shí)鐘晶振、復位。當單片機不能正常工作時(shí),我們首先就要檢查這三個(gè)條件,用電壓表或者萬(wàn)用表檢測他的電源和接地腳,檢測兩個(gè)引腳之間的電壓是不是5V左右;對于時(shí)鐘晶體振蕩有沒(méi)有正常工作,我們最好用示波器進(jìn)行檢測,看能否檢測到相應頻率的正弦波脈沖;復位檢測比較簡(jiǎn)單,單片機的復位電平一般是高電平復位,單片機在接通電源的時(shí)候一般復位引腳上會(huì )出現5V左右的高電平,另外在按下復位按鍵時(shí),復位引腳上也會(huì )出現高電平,用一般的電壓表或者萬(wàn)用表都可以進(jìn)行檢測。

  13.2.單片機內部是否正常工作的檢測

  單片機內部有沒(méi)有正常工作,我們主要是通過(guò)寫(xiě)入程序的方式來(lái)進(jìn)行檢測和排查。這個(gè)檢測需要有“燒入”代碼的硬件和軟件才行,檢測的原理就是通過(guò)“燒入”代碼的硬件和軟件,將一段帶有檢測功能的正常代碼“燒入”到單片機。檢查兩個(gè)方面:第一就是能不能將目標代碼正常寫(xiě)入單片機,不能正常寫(xiě)入單片機時(shí),說(shuō)明單片機已經(jīng)損壞,需要更換同型號的單片機;第二就是目標代碼可以正常寫(xiě)入單片機,寫(xiě)入后的效果是不是就是程序設定的功能,如果是說(shuō)明單片機正常。

  單片機在更換時(shí),我們最好采用同型號的單片機,然后寫(xiě)入公司給予的目標代碼,單片機的價(jià)格目前一般比較便宜,零售價(jià)格大概5元左右。

  是驗證了硬件與軟件的可行性,并不代表可以用在工業(yè)控制系統,因為工業(yè)控制系統對抗干擾的要求非常高,穩定第一,而不是性能第一,所以你的電路板設計必須不斷實(shí)驗,改進(jìn)).

 

上一篇:下一篇: