【正文】
s if the 5039。當(dāng)設(shè)置好堆棧區(qū)后,并不意味著該區(qū)域成為一種專用內(nèi)存,它還是可以象普通內(nèi)存區(qū)域一樣使用,只是一般情況下編程者不會(huì)把它當(dāng)成普通內(nèi)存用了。 五、堆棧:堆棧是一個(gè)區(qū)域,是用來存放數(shù)據(jù)的,這個(gè)區(qū)域本身沒有任何特殊之處,就是內(nèi)部RAM的一部份,特殊的是它存放和取用數(shù)據(jù)的方式,即所謂的‘先進(jìn)后出,后進(jìn)先出’,并且堆棧有特殊的數(shù)據(jù)傳輸指令,即‘PUSH’和‘POP’,有一個(gè)特殊的專為其服務(wù)的單元,即堆棧指針SP,每當(dāng)執(zhí)一次PUSH指令時(shí),SP就(在原來值的基礎(chǔ)上)自動(dòng)加1,每當(dāng)執(zhí)行一次POP指令,SP就(在原來值的基礎(chǔ)上)自動(dòng)減1。、RD信號(hào),當(dāng)微片理機(jī)外接RAM或有外部I/O口時(shí),它們被用作第二功能,不能作為通用I/O口使用,只要一微處理機(jī)一執(zhí)行到MOVX指令,不需要事先用指令說明。換言之,地址、指令也都是數(shù)據(jù)。 學(xué)習(xí)應(yīng)用六大重要部分單片機(jī)學(xué)習(xí)應(yīng)用的六大重要部分 一、總線:我們知道,一個(gè)電路總是由元器件通過電線連接而成的,在模擬電路中,連線并不成為一個(gè)問題,因?yàn)楦髌骷g一般是串行關(guān)系,各器件之間的連線并不很多,但計(jì)算機(jī)電路卻不一樣,它是以微處理器為核心,各器件都要與微處理器相連,各器件之間的工作必須相互協(xié)調(diào),所以需要的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨(dú)連線,則線的數(shù)量將多得驚人,所以在微處理機(jī)中引入了總線的概念,各個(gè)器件共同享用連線,所有器件的8根數(shù)據(jù)線全部接到8根公用的線上,即相當(dāng)于各個(gè)器件并聯(lián)起來,但僅這樣還不行,如果有兩個(gè)器件同時(shí)送出數(shù)據(jù),一個(gè)為0,一個(gè)為1,那么,接收方接收到的究竟是什么呢?這種情況是不允許的,所以要通過控制線進(jìn)行控制,使器件分時(shí)工作,任何時(shí)候只能有一個(gè)器件發(fā)送數(shù)據(jù)(可以有多個(gè)器件同時(shí)接收)。如:音樂信號(hào)以數(shù)字的形式存于存儲(chǔ)器中(類似于ROM),由微控制器讀出,轉(zhuǎn)化為模擬音樂電信號(hào)(類似于聲卡)。 現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng)電話,集群移動(dòng)通信,無線電對(duì)講機(jī)等。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機(jī)、攝像機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。 嵌入式系統(tǒng)單片機(jī)是嵌入式系統(tǒng)的獨(dú)立發(fā)展之路,向MCU階段發(fā)展的重要因素,就是尋求應(yīng)用系統(tǒng)在芯片上的最大化解決;因此,專用單片機(jī)的發(fā)展自然形成了SOC化趨勢(shì)。從這一角度來看,Intel逐漸淡出MCU的發(fā)展也有其客觀因素。“創(chuàng)新模式”獲得成功,奠定了SCM與通用計(jì)算機(jī)完全不同的發(fā)展道路。現(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開發(fā)者搞出來的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡(jiǎn)單且極易被仿制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它由主機(jī)、鍵盤、顯示器等組成。 單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。 單片機(jī)芯片 單片機(jī)是靠程序運(yùn)行的,并且可以修改。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選擇。 單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。現(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。90年代后隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大提高。其中最成功的是INTEL的8031,因?yàn)楹?jiǎn)單可靠而性能不錯(cuò)獲得了很大的好評(píng)。單片機(jī)由芯片內(nèi)僅有CPU的專用處理器發(fā)展而來。最早的設(shè)計(jì)理念是通過將大量外圍設(shè)備和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對(duì)體積要求嚴(yán)格的控制設(shè)備當(dāng)中。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)。隨著INTEL i960系列特別是后來的ARM系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的高端地位,并且進(jìn)入主流市場(chǎng)。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的Windows和Linux操作系統(tǒng)。手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有12部單片機(jī)。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。 單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比如CPU,內(nèi)存,并行總線,還有和硬盤作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對(duì)我們的家用電腦弱很多,不過價(jià)錢也是低的,一般不超過10元即可......用它來做一些控制電器一類不是很復(fù)雜的工作足矣了。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一樣的道理,如果把巨型計(jì)算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用PC上來運(yùn)行,家用PC的也是承受不了的。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。它在整個(gè)裝置中,起著有如人類頭腦的作用,它出了毛病,整個(gè)裝置就癱瘓了。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。在開創(chuàng)嵌入式系統(tǒng)獨(dú)立發(fā)展道路上,Intel公司功不可沒。在發(fā)展MCU方面,最著名的廠家當(dāng)數(shù)Philips公司。隨著微電子技術(shù)、IC設(shè)計(jì)、EDA工具的發(fā)展,基于SOC的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)會(huì)有較大的發(fā)展。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。例如精密的測(cè)量設(shè)備(功率計(jì),示波器,各種分析儀)。 單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。 在大型電路中,這種模塊化應(yīng)用極大地縮小了體積,簡(jiǎn)化了電路,降低了損壞、錯(cuò)誤率,也方便于更換。器件的數(shù)據(jù)線也就被稱為數(shù)據(jù)總線,器件所有的控制線被稱為控制總線。指令:由單片機(jī)芯片的設(shè)計(jì)者規(guī)定的一種數(shù)字,它與我們常用的指令助記符有著嚴(yán)格的一一對(duì)應(yīng)關(guān)系,不可以由單片機(jī)的開發(fā)者更改。事實(shí)上‘不能作為通用I/O口使用’也并不是‘不能’而是(使用者)‘不會(huì)’將其作為通用I/O口使用。由于SP中的值可以用指令加以改變,所以只要在程序開始階段更改了SP的值,就可以把堆棧設(shè)置在規(guī)定的內(nèi)存單元中,如在程序開始時(shí),用一條MOV SP,5FH指令,就時(shí)把堆棧設(shè)置在從內(nèi)存單元60H開始的單元中。外文資料原文SinglechipSCM is also known as microcontroller (Microcontroller Unit), monly used letters of the acronym MCU that it was first used in industrial control.Only a single chip by the CPU chip developed from a dedicated processor. The first design is by a large number of peripherals and CPU on a chip in the puter system, smaller, more easily integrated into a plex and demanding on the volume control device which. INTEL39。s with the United States developed 74 series, or the 6039。s responsibility inevitably falls on electrical, electronics manufacturers. From this point of view, Intel faded MCU development has its objective factors. In the development of MCU, the most famous manufacturers as the number of Philips Corporation. Philips pany in embedded applications, its great advantage, the MCS51 singlechip microputer from the rapid development of the microcontroller. Therefore, when we look back at the path of development of embedded systems, do not forget Intel and Philips in History. Embedded SystemsEmbedded system microcontroller is an independent development path, the MCU important factor in the development stage, is seeking applications to maximize the solution on the chip。and 39。 is also not a 39。 as a generalpurpose I / O port to use. You can arrange the order of a SETB 39。 units started, that is: the system must exist in ROM 0000 39。, and the stack has a special data transmission instructions that39。, has a special expertise in its services unit, that is, the stack pointer SP, whenever a PUSH instruction execution, SP on (in the Based on the original value) automatically add 1, whenever the implementation of a POP instruction, SP will (on the basis of the original value) automatically by 1. As the SP values can be changed with the instructions, so long as the beginning of the process to change the value of the SP, you can set the stack memory unit required, such as the program begins, with an MOV SP, 5FH instructions When set on the stack starting from the memory unit 60H unit. There is alwa