




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目1認(rèn)識(shí)單片機(jī)單片機(jī)原理與應(yīng)用主編張瑞玲楊麗西北工業(yè)大學(xué)出版社
任務(wù)1.1
單片機(jī)的發(fā)展概況任務(wù)1.3
計(jì)算機(jī)語言項(xiàng)目1
認(rèn)識(shí)單片機(jī)任務(wù)1.2
計(jì)算機(jī)中數(shù)的表示方法
項(xiàng)目實(shí)操1
使用單片機(jī)開發(fā)軟件
KeilC項(xiàng)目實(shí)操2
使用單片機(jī)仿真軟件Proteus任務(wù)1.1單片機(jī)的發(fā)展概況
1.1.1單片機(jī)的概念
隨著大規(guī)模、超大規(guī)模集成電路技術(shù)的發(fā)展和計(jì)算機(jī)微型化的需要,把微型計(jì)算機(jī)的基本功能部件如中央處理器(CPU)、存儲(chǔ)器、輸入/輸出接口、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)等多種資源集成在一個(gè)半導(dǎo)體芯片上,使得一塊集成電路芯片就能構(gòu)成一個(gè)完整的微型計(jì)算機(jī)。這種集成電路芯片被稱為單片微型計(jì)算機(jī)(SingleChipMicrocomputer),簡(jiǎn)稱單片機(jī)。由于它的結(jié)構(gòu)及功能均是按照工業(yè)控制要求設(shè)計(jì)的,所以其確切的名稱應(yīng)是“單片微控制器”(SingleChipMicrocontroller)。單片機(jī)的概念微型計(jì)算機(jī)系統(tǒng)的硬件部分通常由五部分組成:輸入設(shè)備運(yùn)算器輸出設(shè)備控制器存儲(chǔ)器這種計(jì)算機(jī)系統(tǒng)通常由多塊印刷電路板制成
主板顯卡聲卡存儲(chǔ)器接口網(wǎng)卡輸入輸出接口內(nèi)存條CPUCPUCPU芯片內(nèi)存條存儲(chǔ)器接口存儲(chǔ)器芯片輸入輸出接口輸入輸出接口芯片定時(shí)計(jì)數(shù)器芯片A/D、D/A芯片單板機(jī)
印刷電路板
單硅晶片CPU存儲(chǔ)器控制電路定時(shí)器時(shí)鐘電路I/O口單片機(jī)
1.1.2單片機(jī)發(fā)展概況
自從1975年美國(guó)德克薩斯儀器公司(TI公司)的第一個(gè)單片機(jī)TMS-1000問世以來,迄今為止,已有30年的歷史,單片機(jī)技術(shù)也已成為計(jì)算機(jī)技術(shù)的一個(gè)獨(dú)特分支,在眾多領(lǐng)域尤其是在智能化儀器儀表、檢測(cè)和控制系統(tǒng)中有著廣泛的應(yīng)用。
單片機(jī)作為微型計(jì)算機(jī)的一個(gè)分支,它的產(chǎn)生與發(fā)展和微處理器的產(chǎn)生與發(fā)展大體同步,主要分為三個(gè)階段。
第一階段(1974—1978年):初級(jí)單片機(jī)階段。這一階段以Intel公司的MCS-48為代表。這個(gè)系列的單片機(jī)在片內(nèi)集成了8位CPU、并行I/O口、8位定時(shí)/計(jì)數(shù)器、RAM等,無串行I/O口,尋址范圍不大于4K。
第二階段(1978—1983年):高性能單片機(jī)階段。這一階段以MCS-51系列為代表,這個(gè)階段的單片機(jī)內(nèi)均帶有串行I/O口,具有多級(jí)中斷處理系統(tǒng),定時(shí)/計(jì)數(shù)器為16位,片內(nèi)RAM和ROM容量相對(duì)增大,且尋址范圍可達(dá)64K。這類單片機(jī)應(yīng)用領(lǐng)域極為廣泛。由于其優(yōu)良的性價(jià)比,特別適合我國(guó)的國(guó)情,因此在我國(guó)得到廣泛應(yīng)用。
第三階段(1983至今):8位單片機(jī)鞏固完善及16位單片機(jī)推出階段。這一階段以MCS-96系列為16位單片機(jī)的代表,其內(nèi)部除了CPU為16位以外,還采用了新穎的寄存器堆/邏輯部件(RALU),片內(nèi)RAM和ROM的容量進(jìn)一步增大,片內(nèi)ROM為8KB甚至更大且可以加密,片內(nèi)還帶有高速輸入輸出部件、多通道10位A/D轉(zhuǎn)換器,具有8級(jí)中斷等。近年來,32位單片機(jī)也已進(jìn)入實(shí)用階段。
目前,單片機(jī)正朝著高性能和多品種的方向發(fā)展,但由于MCS-51系列的8位單片機(jī)仍能滿足絕大多數(shù)應(yīng)用領(lǐng)域的需要,所以以MCS-51系列為主的8位單片機(jī),在現(xiàn)在及以后相當(dāng)長(zhǎng)的一段時(shí)期內(nèi)仍將占據(jù)單片機(jī)應(yīng)用的主導(dǎo)地位。
1.1.3單片機(jī)的應(yīng)用及發(fā)展
1.單片機(jī)的應(yīng)用領(lǐng)域
單片機(jī)的應(yīng)用極為廣泛,已深入到國(guó)民經(jīng)濟(jì)的各個(gè)領(lǐng)域,對(duì)各行業(yè)的技術(shù)改造和產(chǎn)品的更新?lián)Q代起著積極的推動(dòng)作用。單片機(jī)的應(yīng)用領(lǐng)域主要有以下幾個(gè)方面:
(1)生產(chǎn)自動(dòng)化
自動(dòng)化生產(chǎn)不但能夠降低勞動(dòng)強(qiáng)度,而且可以提高經(jīng)濟(jì)效益、改善產(chǎn)品質(zhì)量,廣泛應(yīng)用于機(jī)械、汽車、電子、石油、化工、食品等工農(nóng)業(yè)生產(chǎn)領(lǐng)域。自動(dòng)化生產(chǎn)線、機(jī)器手、數(shù)控機(jī)床等自動(dòng)化生產(chǎn)設(shè)備都能由單片機(jī)實(shí)現(xiàn)其智能化的自動(dòng)控制功能。
(2)實(shí)時(shí)測(cè)控
測(cè)控系統(tǒng)的工作環(huán)境往往比較惡劣,干擾繁雜,并且要求實(shí)時(shí)測(cè)量控制,如工業(yè)窯爐的溫度、酸度、化學(xué)成分的測(cè)量和控制等。單片機(jī)工作穩(wěn)定、可靠,抗干擾能力強(qiáng),體積小使用靈活,適用于各種惡劣環(huán)境,最宜承擔(dān)測(cè)控工作。
(3)智能化產(chǎn)品
現(xiàn)代工業(yè)產(chǎn)品的一個(gè)重要發(fā)展趨勢(shì)是不斷提高其智能化程度,而智能化的提高離不開單片機(jī)的參與。傳統(tǒng)的機(jī)電產(chǎn)品與單片機(jī)結(jié)合后,可簡(jiǎn)化產(chǎn)品結(jié)構(gòu)、升級(jí)產(chǎn)品功能,并實(shí)現(xiàn)控制智能化。單片機(jī)與機(jī)械技術(shù)相結(jié)合,稱為機(jī)電一體化,是機(jī)械工業(yè)的發(fā)展方向。單片機(jī)在家電產(chǎn)品上得到更為普遍的應(yīng)用,出現(xiàn)了程控洗衣機(jī)、電腦空調(diào)機(jī)等。為提高汽車的動(dòng)力性、經(jīng)濟(jì)性以及舒適性、穩(wěn)定性,減少污染排放,在現(xiàn)代汽車上都大量使用了單片機(jī)。
(4)智能化儀表
用單片機(jī)改造、設(shè)計(jì)制造儀器儀表,大大促進(jìn)了儀表向數(shù)字化、智能化、多功能化、綜合化和柔性化方向發(fā)展,并能同時(shí)提高儀器儀表的精度和準(zhǔn)確度,簡(jiǎn)化結(jié)構(gòu),減小體積。
(5)信息通信技術(shù)
多機(jī)系統(tǒng)(各種網(wǎng)絡(luò))中的各計(jì)算機(jī)之間的通信聯(lián)系,以及計(jì)算機(jī)與其外圍設(shè)備(鍵盤、打印機(jī)、傳真機(jī)、復(fù)印機(jī)等)之間的協(xié)作都有單片機(jī)的參與。
(6)科學(xué)研究
小到實(shí)驗(yàn)測(cè)控臺(tái),大到衛(wèi)星、運(yùn)載火箭,單片機(jī)都發(fā)揮著極其重要的作用。
(7)國(guó)防現(xiàn)代化
各種軍事裝備、管理通信系統(tǒng)都有單片機(jī)深入其中。例如,數(shù)字化部隊(duì)的武器、通信等裝備都大量應(yīng)用了單片機(jī)。
2.單片機(jī)的應(yīng)用特點(diǎn)
(1)面向控制的應(yīng)用
由于單片機(jī)內(nèi)部采用了微控制技術(shù),其結(jié)構(gòu)及功能均按自動(dòng)控制的要求設(shè)計(jì),因而主要應(yīng)用于控制領(lǐng)域。微控制技術(shù)從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計(jì)思想,它通過對(duì)單片機(jī)編程的方法代替由模擬電路或數(shù)字電路實(shí)現(xiàn)的大部分控制功能,是對(duì)傳統(tǒng)控制方式的一次革命。
傳統(tǒng)控制系統(tǒng)的控制功能是通過電器元件和線路連接等硬件手段實(shí)現(xiàn)的,一經(jīng)完成,功能很難更改。若要改變功能,必須重新連接電路,十分不便。而微控制技術(shù)的控制是由硬件和軟件共同實(shí)現(xiàn)的。只要改變程序的內(nèi)容就可在硬件線路基本功能的基礎(chǔ)上實(shí)現(xiàn)多種功能。例如,彩燈的控制,若由傳統(tǒng)控制系統(tǒng)實(shí)現(xiàn),則線路完成之后,彩燈的閃爍變換方式也就確定了;而若由單片機(jī)系統(tǒng)控制,不改變線路連接,只簡(jiǎn)單地改變程序即可實(shí)現(xiàn)多種不同的彩燈閃爍方式。
(2)在線應(yīng)用
在線應(yīng)用就是以單片機(jī)代替常規(guī)模擬或數(shù)字控制電路,使其成為測(cè)控系統(tǒng)的一部分,在被控對(duì)象工作過程中實(shí)行實(shí)時(shí)檢測(cè),并實(shí)時(shí)控制。在線應(yīng)用為實(shí)時(shí)測(cè)控提供了可能和方便。
(3)嵌入式應(yīng)用
單片機(jī)在應(yīng)用時(shí)通常裝入到各種智能化產(chǎn)品之中,所以又稱“嵌入式微控制器”(EmbeddedMicroControllerUnit,EMCU)。單片機(jī)應(yīng)用系統(tǒng)就是典型的嵌入式系統(tǒng)。嵌入式計(jì)算機(jī)系統(tǒng),是作為其他系統(tǒng)的組成部分使用的。由于通用計(jì)算機(jī)系統(tǒng)有限的可靠性、較高的價(jià)位及龐大的身軀,限制了其在嵌入式系統(tǒng)的廣泛應(yīng)用,尤其限制了以嵌入式計(jì)算機(jī)系統(tǒng)作為核心控制產(chǎn)品的發(fā)展。單片機(jī)以較小的體積、現(xiàn)場(chǎng)運(yùn)行環(huán)境的高可靠性滿足了許多對(duì)象的嵌入式應(yīng)用要求。在嵌入式系統(tǒng)中,單片機(jī)是最重要也是應(yīng)用最多的智能核心器件。
將單片機(jī)系統(tǒng)嵌入到對(duì)象體系中后,單片機(jī)就成為對(duì)象體系的專用指揮中心。嵌入式系統(tǒng)的廣泛應(yīng)用和不斷發(fā)展的美好前景,極大地影響著每個(gè)人的學(xué)習(xí)、工作和生活。
3.單片機(jī)應(yīng)用系統(tǒng)
單片機(jī)應(yīng)用系統(tǒng),如果按其系統(tǒng)擴(kuò)展及配置狀況,可分為最小系統(tǒng)、最小功耗系統(tǒng)、典型系統(tǒng)等。
單片機(jī)最小系統(tǒng)是指單片機(jī)嵌入一些簡(jiǎn)單的控制對(duì)象(如開關(guān)狀態(tài)的輸入/輸出控制等),并能維護(hù)單片機(jī)運(yùn)行的控制系統(tǒng)。這種系統(tǒng)成本低、結(jié)構(gòu)簡(jiǎn)單,其功能完全取決于單片機(jī)芯片技術(shù)的發(fā)展水平。
單片機(jī)最小功耗系統(tǒng)是指系統(tǒng)功耗最小。設(shè)計(jì)該系統(tǒng)時(shí),必須使系統(tǒng)內(nèi)所有器件及外設(shè)都有最小的功耗,最小功耗應(yīng)用系統(tǒng)常用在一些袖珍式智能儀表及便攜式儀表中。
單片機(jī)典型系統(tǒng)也是單片機(jī)控制系統(tǒng)的一般模式,它是單片機(jī)要完成工業(yè)測(cè)控功能必須具備的硬件結(jié)構(gòu)系統(tǒng)。其系統(tǒng)框圖如圖1.1所示,下面簡(jiǎn)要說明圖中主要部分的作用。
通過傳感器把被控對(duì)象的物理量轉(zhuǎn)換成標(biāo)準(zhǔn)的模擬電量,如把0~500℃溫度轉(zhuǎn)換成4~20mA標(biāo)準(zhǔn)直流電流輸出,該輸出經(jīng)濾波器濾除掉輸入通道的干擾信號(hào),然后送入多路采樣器;多路采樣開關(guān)分時(shí)地對(duì)多個(gè)模擬量進(jìn)行采樣、保持,使A/D轉(zhuǎn)換器能將某時(shí)刻的模擬量轉(zhuǎn)換成相應(yīng)的數(shù)字量,然后該數(shù)字量輸入單片機(jī);單片機(jī)對(duì)輸入的數(shù)據(jù)進(jìn)行運(yùn)算處理后,輸出相應(yīng)的數(shù)字量,經(jīng)D/A轉(zhuǎn)換器轉(zhuǎn)換為模擬量,該模擬量經(jīng)保持器控制相應(yīng)的執(zhí)行機(jī)構(gòu),對(duì)被控對(duì)象的相關(guān)參數(shù)進(jìn)行調(diào)節(jié),從而控制被調(diào)參數(shù)的物理量,使之按給定規(guī)律變化。圖1.1
單片機(jī)典型應(yīng)用系統(tǒng)
4.單片機(jī)的發(fā)展趨勢(shì)
(1)微型化
芯片集成度的提高為單片機(jī)的微型化提供了可能。早期單片機(jī)大量使用雙列直插式封裝,隨著貼片工藝的出現(xiàn),單片機(jī)也大量采用了各種符合貼片工藝的封裝,大大減小了芯片的體積,為嵌入式系統(tǒng)提供了可能。
(2)低功耗
現(xiàn)在新的單片機(jī)的功耗越來越小,特別是很多單片機(jī)都設(shè)置了多種工作方式,包括等待、暫停、睡眠、空閑、節(jié)電等工作方式。擴(kuò)大電源電壓范圍以及在較低電壓下仍然能工作是當(dāng)今單片機(jī)發(fā)展的目標(biāo)之一。目前,一般單片機(jī)都可在3.3~5.5V的條件下工作,一些廠家甚至生產(chǎn)出可以在2.2~6V條件下工作的單片機(jī)。
(3)高速化
早期MCS-51單片機(jī)的典型時(shí)鐘為12MHz,目前西門子公司的C500系列單片機(jī)的(與MCS-51兼容)時(shí)鐘頻率為36MHz;EMC公司的EM78系列單片機(jī)的時(shí)鐘頻率高達(dá)40MHz;現(xiàn)在已有更快的32位100MHz的單片機(jī)產(chǎn)品出現(xiàn)。
(4)集成更多資源
單片機(jī)在內(nèi)部已集成了越來越多的部件,這些部件包括一些常用的電路。例如,定時(shí)器、比較器、A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器、串行通信接口、“看門狗”Watchdog電路、LCD控制器等。有的單片機(jī)為了構(gòu)成控制網(wǎng)絡(luò)或形成局部網(wǎng),內(nèi)部含有局部網(wǎng)絡(luò)控制模塊,甚至將網(wǎng)絡(luò)協(xié)議固化在其內(nèi)部。
(5)通信及網(wǎng)絡(luò)功能加強(qiáng)
在某些單片機(jī)內(nèi)部由于封裝了局部網(wǎng)絡(luò)控制模塊,因此這類單片機(jī)十分容易構(gòu)成網(wǎng)絡(luò)。特別是在控制系統(tǒng)較為復(fù)雜時(shí),構(gòu)成一個(gè)控制網(wǎng)絡(luò)十分有用。目前,將單片機(jī)嵌入式系統(tǒng)和Internet連接起來已是一種趨勢(shì)。
(6)專用型單片機(jī)發(fā)展加快
專用型單片機(jī)具有最大程度簡(jiǎn)化的系統(tǒng)結(jié)構(gòu),資源利用率最高,大批量使用有著可觀的經(jīng)濟(jì)效益。
1.1.4單片機(jī)的主要生產(chǎn)廠商及產(chǎn)品
1.單片機(jī)的主要生產(chǎn)廠商及產(chǎn)品
自單片機(jī)誕生以來,其產(chǎn)品在近30年里得到了迅猛的發(fā)展,形成了多公司、多系列、多型號(hào)的局面。
2.單片機(jī)主要產(chǎn)品
除上述公司及其產(chǎn)品外,還有一些其他公司也生產(chǎn)各種類型的單片機(jī),如Siemens、OKI、Fairchild、Mostek公司等。
(1)Intel公司系列單片機(jī)
Intel公司的系列單片機(jī)可分為MCS-48、MCS-51、MCS-96三個(gè)系列。Intel的單片機(jī)每一類芯片的ROM根據(jù)型號(hào)一般有片內(nèi)掩膜ROM、片內(nèi)EPROM和外接EPROM三種方式,這是Intel公司的首創(chuàng),現(xiàn)已成為單片機(jī)的統(tǒng)一規(guī)范。片內(nèi)掩膜ROM型單片機(jī)適合于已定型的產(chǎn)品,可以大批量生產(chǎn);片內(nèi)帶EPROM型、外接EPROM型及片內(nèi)帶E2PROM型單片機(jī)適合于研制新產(chǎn)品和生產(chǎn)產(chǎn)品樣機(jī)。
(2)Philips公司單片機(jī)
Philips公司生產(chǎn)與MCS-51兼容的80C51系列單片機(jī),片內(nèi)具有I2C總線、A/D轉(zhuǎn)換器、定時(shí)監(jiān)視器、CRT控制器(OSD)、“看門狗”(WTD)電路、電源監(jiān)測(cè)和時(shí)鐘監(jiān)測(cè)等豐富的外圍部件。其某些產(chǎn)品工作電壓甚至可低至1.8V,并且擴(kuò)大了接口功能,如設(shè)置高速口,擴(kuò)展I/O數(shù)量,增加外部中斷源以及將ADC、PWM做入片內(nèi)。為提高運(yùn)行速度,時(shí)鐘頻率已達(dá)16~24MHz。主要產(chǎn)品有80C51、80C52、80C31、80C32、80C528、80C552、80C562、80C751等。
Philips單片機(jī)獨(dú)特的創(chuàng)造是具有I2C總線,這是一種集成電路和集成電路之間的串行通信總線。可以通過總線對(duì)系統(tǒng)進(jìn)行擴(kuò)展,使單片機(jī)的系統(tǒng)結(jié)構(gòu)更簡(jiǎn)單,體積更小。
(3)Motorola公司單片機(jī)
Motorola公司的單片機(jī)從應(yīng)用角度可以分成兩類:高性能的通用型單片機(jī)和面向家用消費(fèi)領(lǐng)域的專用型單片機(jī)。
通用型單片機(jī)具有代表性的是MC68HCll系列,有幾十種型號(hào)。其典型產(chǎn)品為MC68HCllA8,具有準(zhǔn)16位的CPU、8KBROM、256BRAM、512BE2PROM、16位9功能定時(shí)器、38位I/O口線、2個(gè)串行口、8位脈沖累加器、8路8位A/D轉(zhuǎn)換器、WTD電路、17個(gè)中斷向量等功能,可單片工作,也可以擴(kuò)展方式工作。
(4)ATMEL51系列單片機(jī)
ATMEL公司生產(chǎn)的CMOS型51系列單片機(jī),具有MCS-51內(nèi)核,用FlashROM代替ROM作為程序存儲(chǔ)器,具有價(jià)格低、編程方便等優(yōu)點(diǎn)。例如,89C51就是擁有4KBFlashROM的單片機(jī)。ATMEL公司生產(chǎn)的單片機(jī)主要有89C51、89F51、89C52、89LV52、89C55等。
(5)Microchip公司的單片機(jī)
Microchip公司推出了PICl6C5X系列的單片機(jī)。它的典型產(chǎn)品PICl6C57具有8位CPU、2KB×12位E2PROM程序存儲(chǔ)器、80BRAM、1個(gè)8位定時(shí)器/計(jì)數(shù)器、21根I/O口線等硬件資源。指令系統(tǒng)采用RISC指令,擁有33條基本指令,指令長(zhǎng)度為12位,工作速度較高。主要產(chǎn)品有PICl6C54、PICl6C55、PICl6C56等。
(6)Zilog公司的單片機(jī)
Zilog公司推出的Z8系列單片機(jī)是一種中檔的8位單片機(jī)。它的典型產(chǎn)品為Z8601,具有8位CPU、2KBROM、124BRAM、2個(gè)8位定時(shí)器/計(jì)數(shù)器、32位I/O口線、1個(gè)異步串行通信口、6個(gè)中斷向量。主要產(chǎn)品型號(hào)有Z8600/10、Z8601/11、Z86C06、Z86C21、Z86C40、Z86C93等。
1.1.5
MCS-51系列單片機(jī)的分類
MCS-51系列單片機(jī)是Intel公司開發(fā)的非常成功的產(chǎn)品,具有性能價(jià)格比高、穩(wěn)定、可靠、高效等特點(diǎn)。自從開放技術(shù)以來,不斷有其他公司生產(chǎn)各種與MCS-51兼容或者具有MCS-51內(nèi)核的單片機(jī)。MCS-51已成為當(dāng)今8位單片機(jī)中具有事實(shí)“標(biāo)準(zhǔn)”意義的單片機(jī),應(yīng)用非常廣泛。本書以8051為核心,講述MCS-51系列單片機(jī)。MCS-51系列單片機(jī)采用模塊化設(shè)計(jì),各種型號(hào)的單片機(jī)都是在8051(基本型)的基礎(chǔ)上通過增、減部件的方式獲得的。
1.按照系列分類
(1)8031/8051/8751
這3種芯片常稱為8051子系列,它們之間的區(qū)別僅在于片內(nèi)程序存儲(chǔ)器不同。8031片內(nèi)無程序存儲(chǔ)器,8051片內(nèi)有4KB的ROM,8751片內(nèi)有4KB的EPROM,其他結(jié)構(gòu)性能相同。其中8031易于開發(fā),價(jià)格低廉,應(yīng)用廣泛。
(2)8032/8052/8752
這是8031/8051/8751的改進(jìn)型,常稱為8052子系列。其片內(nèi)ROM和RAM比8051各增加1倍,ROM為8KB,RAM為256B;另外增加了一個(gè)定時(shí)器/計(jì)數(shù)器和一個(gè)中斷源。
(3)80C31/80C51/87C51
這3個(gè)型號(hào)是8051子系列的CHMOS型芯片,可稱為80C51子系列,兩者功能兼容。CHMOS型芯片的基本特點(diǎn)是高集成度和低功耗。
(4)其他系列產(chǎn)品
其他系列產(chǎn)品有80C52、80C54、80C58等。
2.按照功能分類
(1)基本型
基本型主要有8031、8051、8751、8031AH、8051AH、8751AH、8751BH、80C31BH、80C51BH、87C51BH等。后綴有AH或BH型單片機(jī)采用HMOS工藝制造,中間有一個(gè)“C”字母的單片機(jī)采用CMOS工藝制造,具有低功耗的特點(diǎn),支持節(jié)能模式。
(2)增強(qiáng)型
1)增大內(nèi)部存儲(chǔ)器型。該型產(chǎn)品將內(nèi)部的程序存儲(chǔ)器ROM和數(shù)據(jù)存儲(chǔ)器RAM增加1倍,如8032AH、8052AH、8752BH等,內(nèi)部擁有8KBROM和256BRAM,屬于52子系列。
2)可編程計(jì)數(shù)陣列(PCA)型。型號(hào)中含有字母“F”的系列產(chǎn)品,如80C51FA、83C51FA、87C51FA、83C51FB、87C51FB、83C51FC、87C51FC等,均是采用CHMOS工藝制造,具有比較撲捉模塊及增強(qiáng)的多機(jī)通信接口。
3)A/D型。該型產(chǎn)品,如80C51GB、83C51GB、87C51GB等具有下列新功能:8路8位A/D轉(zhuǎn)換模塊,256B內(nèi)部RAM、2個(gè)PCA監(jiān)視定時(shí)器,增加了A/D和串行口中斷,中斷源達(dá)7個(gè),具有振蕩器失效檢測(cè)功能。1-2數(shù)制及數(shù)碼計(jì)算機(jī)只識(shí)別和處理數(shù)字信息,數(shù)字是以二進(jìn)制數(shù)的形式表示的。它易于物理實(shí)現(xiàn),同時(shí),資料存儲(chǔ)、傳送和處理簡(jiǎn)單可靠;運(yùn)算規(guī)則簡(jiǎn)單,使邏輯電路的設(shè)計(jì)、分析、綜合方便,使計(jì)算器具有邏輯性。一、數(shù)制1、常用數(shù)制(1.)十進(jìn)制數(shù):1985=1000+900+80+5=1×103+9×102+8×101+5×100
特點(diǎn):有0~9十個(gè)不同的符號(hào)。逢十進(jìn)一。一般用下腳標(biāo)D表示,如1985D,或無下腳標(biāo)。
(2.)二進(jìn)制數(shù):特點(diǎn):有0,1兩個(gè)不同的符號(hào)。逢二進(jìn)一。二進(jìn)制數(shù)的下腳標(biāo)為B
例如:對(duì)于整數(shù),
1001B=1×23+0×22+0×21+1×20=9D
對(duì)于小數(shù),0.101B=1×2-1+0×2-2+1×2-3=0.625D
二進(jìn)制數(shù)每一位的權(quán)是:以小數(shù)點(diǎn)分界,…..24,23,22,21,20.2-1,2-2,2-3,……
(3.)十六進(jìn)制數(shù):有0~9,A,B,C,D,E,F共十六個(gè)不同的符號(hào)。逢十六進(jìn)位。用下腳標(biāo)“H”表示十六進(jìn)制數(shù)。例:327H=3×162+2×161+7×160=807D3AB.11H
=3×162+A×161+B×160+1×161+1×16-2
=939.0664D
2、數(shù)制的轉(zhuǎn)換(1.)二進(jìn)制轉(zhuǎn)換為十進(jìn)制數(shù)
方法:按權(quán)展開。111.101B=1×22+1×21+1×20+1×2-1+0×2-2
+1×2–3=4+2+1+0.5+0.125=7.625D(2.)十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)
方法:整數(shù)部分除二取余,小數(shù)部分乘二取整45余數(shù)22111051211001222222即45=(101101)2例1、將十進(jìn)制數(shù)45轉(zhuǎn)換成二進(jìn)制數(shù)。例2:十進(jìn)制小數(shù)部分的轉(zhuǎn)換:乘二取整0.6875×2最高位取11.37500.375×2取00.750×2取11.500.5×2最低位取11.0從上至下寫成從左至右10110.6875D=0.B二進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù)與上述類似。(3.)十六進(jìn)制數(shù)與二進(jìn)制數(shù)之間的轉(zhuǎn)換:十六進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制:9AB.7C5H100110101011.011111000101B
二進(jìn)制數(shù)轉(zhuǎn)換十六進(jìn)制數(shù):
0001101111100011.100101111000B1BE3.978H二、數(shù)碼1、機(jī)器數(shù)與真值機(jī)器只認(rèn)識(shí)二進(jìn)制數(shù):0、1。這是因?yàn)椋娐窢顟B(tài)常常有兩種情況,如:電路的通、斷;高電平、低電平;可用0、1表示。在機(jī)器中,這種0、1、0、1的表現(xiàn)形式稱為機(jī)器數(shù)。機(jī)器數(shù)分為無符號(hào)數(shù)、帶符號(hào)數(shù)。無符號(hào)數(shù)如:00000001、10010011、01010010、……等等,范圍:00H~ FFH。有符號(hào)數(shù)如:+1010110B、-1101001B、等等01010110B、11101001B2、機(jī)器數(shù)的編碼及運(yùn)算對(duì)帶符號(hào)數(shù)而言,有原碼、反碼、補(bǔ)碼之分,計(jì)算機(jī)內(nèi)一般使用補(bǔ)碼。(1)原碼將數(shù)“數(shù)碼化”,原數(shù)前“+”用0表示,原數(shù)前“-”用1表示,數(shù)值部分為該數(shù)本身,這樣的機(jī)器數(shù)叫原碼。設(shè)X——原數(shù);則[X]原=X(X0)[X]原=2n-1–X(X0),n為字長(zhǎng)的位數(shù)。如,[+3]原=00000011B
[-3]原=27-(-3)=10000011B0有兩種表示方法:00000000——+010000000——-0原碼最大、最小的表示:+127、-128(2)反碼規(guī)定正數(shù)的反碼等于原碼;負(fù)數(shù)的反碼是將原碼的數(shù)值位各位取反。[X]反=X(X0)[X]反=(2n–1)+X(X0)如,[+4]反=[+4]原=00000100B[-4]反=(28–1)+(-5)=11111111-00000101=11111010B
反碼范圍:-128~+127兩個(gè)0:+0——00000000B-0——11111111B運(yùn)用補(bǔ)碼可使減法變成加法。規(guī)定:正數(shù)的補(bǔ)碼等于原碼。負(fù)數(shù)的補(bǔ)碼求法:1)反碼+12)公式:[X]補(bǔ)=2n+X(X<0)如,設(shè)X=-0101110B,則[X]原=10101110B則[X]補(bǔ)=[X]反+1=11010001+00000001=11010010B如,[+6]補(bǔ)=[+6]原=00000110B[-6]補(bǔ)=28+(-6)=10000000–00000110=11111010B8位補(bǔ)碼的范圍–128~+127。0的個(gè)數(shù):只一個(gè),即00000000而10000000B是-128的補(bǔ)碼。原碼、反碼、補(bǔ)碼對(duì)照表:見下表123(3)補(bǔ)碼補(bǔ)碼的概念:現(xiàn)在是下午3點(diǎn),手表停在12點(diǎn),可正撥3點(diǎn),也可倒撥9點(diǎn)。即是說-9的操作可用+3來實(shí)現(xiàn),在12點(diǎn)里:3、-9互為補(bǔ)碼。
八位二進(jìn)制數(shù)所能表示的數(shù)據(jù)范圍機(jī)器數(shù)無符號(hào)數(shù)原碼反碼補(bǔ)碼000000000+0+0+0000000011+1+1+1.....01111111127+127+127+12710000000128-0-127-12810000001129-1-126-127..........11111110254-126-1-211111111255-127-0-1(4)補(bǔ)碼的運(yùn)算當(dāng)X≥0時(shí),[X]補(bǔ)=[X]反=[X]原[[X]補(bǔ)]補(bǔ)=[X]原[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)[X-Y]補(bǔ)=[X+(-Y)]補(bǔ)例:已知
X=52Y=38求X-Y
方法1:減法:
X-Y=52-38=14
00110100
-)0010011000001110方法2:加法
X-Y=[[X-Y]補(bǔ)]補(bǔ)=[[X]補(bǔ)+[-Y]補(bǔ)]補(bǔ)=[[52]補(bǔ)+[-38]補(bǔ)]補(bǔ)=[14]補(bǔ)=14
[52]補(bǔ):00110100
[-38]補(bǔ):+)11011010100001110
自然丟失計(jì)算機(jī)在做算術(shù)運(yùn)算時(shí),必需檢查溢出,以防止發(fā)生錯(cuò)誤
(5)運(yùn)算的溢出問題由于計(jì)算機(jī)中表示數(shù)據(jù)的字長(zhǎng)(位數(shù))有一定限制,所以數(shù)據(jù)的表示應(yīng)有一個(gè)范圍。如字長(zhǎng)8位時(shí);補(bǔ)碼范圍-128~+127若運(yùn)算結(jié)果超出這個(gè)范圍,便溢出。例:[98]補(bǔ):01100010[25]補(bǔ):+)00011001
[123]補(bǔ)001111011未溢出00
Cs+1Cs(未溢出)
[85]補(bǔ):01010101
[47]補(bǔ):+)00101111[132]補(bǔ):10000100溢出01
Cs+1Cs(溢出)錯(cuò):兩個(gè)正數(shù)相加和為負(fù)數(shù)。
[-85]補(bǔ):10101011[-47]補(bǔ):+)11010001
[-132]補(bǔ):101111100溢出10
Cs+1Cs
錯(cuò):兩個(gè)負(fù)數(shù)相加和為正數(shù)。[-19]補(bǔ):01010101
[-79]補(bǔ):+)10110001[-98]補(bǔ):11001111未溢出11
Cs+1Cs錯(cuò):兩個(gè)負(fù)數(shù)相加和為正數(shù)。總之:結(jié)果正確(無溢出)時(shí),Cs+1=Cs
結(jié)果錯(cuò)誤(溢出)時(shí),Cs+1≠Cs溢出判斷:溢出=Cs+1Cs(即結(jié)果是0為無溢出;1為有溢出)1、
(6)
十進(jìn)制數(shù)的編碼對(duì)機(jī)器:二進(jìn)制數(shù)方便,對(duì)人:二進(jìn)制數(shù)不直觀,習(xí)慣于十進(jìn)制數(shù)。在編程過程中,有時(shí)需要采用十進(jìn)制運(yùn)算,但機(jī)器不認(rèn)識(shí)十進(jìn)制數(shù)。怎么辦?可以將十進(jìn)制的字符用二進(jìn)制數(shù)進(jìn)行編碼:
0
00005010110101111100016011010112
00107011111003001181000110140100910011110
這叫做二進(jìn)制數(shù)對(duì)十進(jìn)制編碼——BCD碼。上述每4位二進(jìn)制數(shù)表示一個(gè)十進(jìn)制字符,這4位中各位的權(quán)依次是:8、4、2、1——8421BCD碼。BCD碼的運(yùn)算:例、18+)321
00011000+)00000011
00011011
B是非BCD碼(錯(cuò))需進(jìn)行十進(jìn)制調(diào)整:
00011000
+)0000001100011011(個(gè)位大于9,應(yīng)進(jìn)1)
+)0110(加6使進(jìn)1)00100001(結(jié)果形如21)BCD碼加法規(guī)則:兩個(gè)BCD數(shù)相加時(shí),“某位”的和小于10則保持不變;兩個(gè)BCD數(shù)相加時(shí),“某位”的和大于9,則和數(shù)應(yīng)加6修正。BCD碼減法規(guī)則:兩個(gè)BCD數(shù)相減時(shí),“某位”的差未發(fā)生借位,則差數(shù)保持不變;兩個(gè)BCD數(shù)相減時(shí),“某位”發(fā)生了借位,其差應(yīng)減6修正。這里“某位”指BCD數(shù)中的“個(gè)位”、“十位”、“百位”、……
加法舉例:01100101(65)
+)10010111(97)11111100
+)01100110(加66調(diào)整)101100010(162)減法舉例:00110100(34)
-)00010101(15)00011111
-)0110(減6調(diào)整)00011001(29)補(bǔ)碼數(shù)的表示范圍
一個(gè)n位二進(jìn)制補(bǔ)碼數(shù)的表示范圍:
-2n-1≤N≤2n-1-1
當(dāng)n=8時(shí)數(shù)的表示范圍:-128≤N≤+127
當(dāng)n=16時(shí)數(shù)的表示范圍:-32768≤N≤+32767
如果兩個(gè)8位二進(jìn)制補(bǔ)碼數(shù)的運(yùn)算結(jié)果超過-128≤N≤+127,或者兩個(gè)16位二制補(bǔ)碼數(shù)的運(yùn)算結(jié)果超過-32768≤N≤+32767,則稱為運(yùn)算結(jié)果溢出(7)字符信息的表示計(jì)算機(jī)能識(shí)別0、1、0、1、……;這些0、1、0、1、……有的代表數(shù)值,有的僅代表要處理的信息(如字母、標(biāo)點(diǎn)符號(hào)、數(shù)字符號(hào)等文字符號(hào)),所以,計(jì)算機(jī)不僅要認(rèn)識(shí)各種數(shù)字,還要能識(shí)別各種文字符號(hào)。人們事先已對(duì)各種文字符號(hào)進(jìn)行二進(jìn)制數(shù)編碼。如,美國(guó)信息交換標(biāo)準(zhǔn)碼——ASCII碼,用一個(gè)字節(jié)表示一個(gè)字符。低7位是字符的ASCII碼值;最高位是通信時(shí)的校驗(yàn)位。
綜上所述,計(jì)算機(jī)中的數(shù)可以有各種不同的表示方法,計(jì)算機(jī)中以一個(gè)字節(jié)為一個(gè)單元保存數(shù)據(jù),一個(gè)字節(jié)為8位二進(jìn)制數(shù),可以有256種組合,也就是可以表示256個(gè)數(shù)據(jù),我們稱它為機(jī)器數(shù),每一個(gè)機(jī)器數(shù)實(shí)際表示的是什么,要看采用的是那種表示方法。任務(wù)1.3
計(jì)算機(jī)語言
計(jì)算機(jī)是一種能夠按照人們預(yù)先存放在存儲(chǔ)器中的一系列命令連續(xù)高速地進(jìn)行數(shù)據(jù)處理的電子機(jī)器。能夠把人的命令告訴計(jì)算機(jī)的一套符號(hào)系統(tǒng)及其使用規(guī)則被稱為“計(jì)算機(jī)語言”。到目前為止,計(jì)算機(jī)語言已經(jīng)由低級(jí)到高級(jí)經(jīng)歷了機(jī)器語言、匯編語言、高級(jí)語言、應(yīng)用語言的發(fā)展過程。
1.3.1機(jī)器語言
我們知道,微機(jī)內(nèi)部所有的信息都是采用二進(jìn)制0和1的位串表示的,機(jī)器指令就是計(jì)算機(jī)能夠直接識(shí)別和執(zhí)行的一組二進(jìn)制代碼。它指明計(jì)算機(jī)執(zhí)行時(shí)必須完成的一種操作及其操作的對(duì)象。一條機(jī)器指令通常由操作碼和操作數(shù)兩部分構(gòu)成,操作碼在前,操作數(shù)在后。其格式如下:操作碼操作數(shù)
操作碼指出計(jì)算機(jī)所執(zhí)行的為何種操作,即該指令的功能;而操作數(shù)則指出在指令操作過程中所需的操作數(shù)據(jù),即操作對(duì)象。在指令中可以直接給出操作數(shù)本身或者操作數(shù)存放的地址,以及操作結(jié)果送往何處等信息。
下面的二進(jìn)制代碼序列就是一條MCS-51單片機(jī)的機(jī)器指令:
0111010000000101(74H、05H)
這條指令的前8位是操作碼部分,含義是要求計(jì)算機(jī)完成把指令后面的8位數(shù)傳送到名為A的寄存器的操作。
不同的計(jì)算機(jī)系統(tǒng)具有各自不同的指令,對(duì)于同樣的二進(jìn)制序列,不同型號(hào)的計(jì)算機(jī)系統(tǒng)對(duì)它的“理解”是不一樣的。對(duì)某種特定的計(jì)算機(jī)而言,其所有機(jī)器指令的集合,稱為該計(jì)算機(jī)的機(jī)器指令系統(tǒng)。它既是提供給用戶編制程序的基本依據(jù),也是進(jìn)行計(jì)算機(jī)邏輯設(shè)計(jì)的基本依據(jù)。指令系統(tǒng)的性能如何,決定了計(jì)算機(jī)系統(tǒng)的基本功能。機(jī)器指令系統(tǒng)及其使用規(guī)則構(gòu)成這種計(jì)算機(jī)的機(jī)器語言。完成特定功能的一系列機(jī)器指令的有序集合,稱為機(jī)器語言程序。
依上所述,機(jī)器語言有以下特征:
1)是唯一的能夠被計(jì)算機(jī)直接識(shí)別并執(zhí)行的語言。
2)是由0、1代碼構(gòu)成的語言,和自然語言相差甚遠(yuǎn),不便于閱讀和理解。
3)是面向機(jī)器的語言(低級(jí)語言)。
1.3.2匯編語言
機(jī)器語言雖然是計(jì)算機(jī)的“母語”,但對(duì)使用計(jì)算機(jī)的絕大多數(shù)人來說,機(jī)器語言難以掌握與編程。為了克服機(jī)器指令的上述缺點(diǎn),采用容易記憶的英文符號(hào)名(稱為助記符)來表示指令和數(shù)據(jù)及其的地址,如用ADD、SUB、JMP等英文文字或其縮寫形式取代原來的二進(jìn)制操作碼,來表示加、減、轉(zhuǎn)移等操作。這種用助記符來表示的機(jī)器指令,稱為匯編指令。在計(jì)算機(jī)中每一條機(jī)器指令都對(duì)應(yīng)一條匯編指令,所有匯編指令的集合構(gòu)成了計(jì)算機(jī)的匯編指令系統(tǒng)。我們重點(diǎn)強(qiáng)調(diào)以下幾點(diǎn):
1)匯編指令:又稱為“符號(hào)指令”,是機(jī)器指令符號(hào)化的表示。前面所列舉的數(shù)據(jù)傳送指令,若用匯編指令書寫應(yīng)為MOVA,#05H。其中MOV為傳送指令操作碼的助記符;A是目的操作數(shù);#05H是源操作數(shù),指令的功能是將數(shù)05H傳送到A寄存器中。
2)匯編語言:是由匯編指令、匯編偽指令及匯編語言的語法規(guī)則組成。
3)匯編語言源程序:按照嚴(yán)格的語法規(guī)則用匯編語言編寫的程序,稱為匯編語言源程序或源程序。
4)匯編程序:由于計(jì)算機(jī)不能直接識(shí)別和執(zhí)行匯編語言源程序,因此需要把匯編語言源程序要翻譯成機(jī)器語言程序才可以由計(jì)算機(jī)執(zhí)行。這個(gè)翻譯的過程稱為“匯編”,這種把匯編語言源程序翻譯成目標(biāo)程序的語言加工程序稱為匯編程序。匯編程序進(jìn)行翻譯的過程叫做匯編。匯編程序?qū)⑵浞g為機(jī)器語言后,才能交付計(jì)算機(jī)硬件系統(tǒng)加以識(shí)別和執(zhí)行。匯編程序是為計(jì)算機(jī)配置的實(shí)現(xiàn)把匯編語言源程序翻譯成目標(biāo)程序的一種系統(tǒng)軟件。
1.3.3高級(jí)語言
匯編語言雖然較機(jī)器語言直觀,但仍然煩瑣難懂。于是人們研制出了高級(jí)程序設(shè)計(jì)語言。高級(jí)程序設(shè)計(jì)語言接近人類自然語言的語法習(xí)慣,與計(jì)算機(jī)硬件無關(guān),用戶易于掌握和使用。目前廣泛應(yīng)用的高級(jí)語言有多種,如BASIC、FORTRAN、PASCAL、C、C++等。同樣道理,用高級(jí)語言書寫的源程序也必須翻譯成機(jī)器指令目標(biāo)程序。完成此翻譯任務(wù)的程序稱為編譯程序。這樣一來,編譯程序和匯編程序好像差別不大,但匯編程序是一對(duì)一的轉(zhuǎn)換,而編譯程序則是一對(duì)多的轉(zhuǎn)換。
1.3.4匯編語言的特點(diǎn)和應(yīng)用場(chǎng)合
(1)匯編語言的特點(diǎn)
1)匯編語言與處理器密切相關(guān)。與機(jī)器語言相比,匯編語言易于理解和記憶,編寫的源程序可讀性強(qiáng)。源程序翻譯成機(jī)器語言后的執(zhí)行文件在存儲(chǔ)空間、執(zhí)行速度方面與機(jī)器語言編寫的程序大致相當(dāng)。
2)匯編語言程序效率高。用匯編語言編寫的源程序匯編后的目標(biāo)程序效率高,其反映是:第一,運(yùn)行速度快;第二,目標(biāo)程序短。在采用相同算法的前提下,任何高級(jí)語言程序在時(shí)間和空間的效率都不如匯編語言程序。
3)編寫匯編語言源程序比編寫高級(jí)語言源程序煩瑣。匯編語言是面向機(jī)器的語言,程序員在用匯編語言編寫程序時(shí),必須考慮包括寄存器、存儲(chǔ)單元和尋址方式在內(nèi)的幾乎所有問題。而在使用高級(jí)語言編寫程序時(shí),程序員不用考慮這些細(xì)節(jié)問題。
4)調(diào)試匯編語言程序比調(diào)試高級(jí)語言程序困難。匯編語句指令的有限功能和程序員要注意太多的細(xì)節(jié)問題是造成調(diào)試?yán)щy的兩個(gè)主要原因。
(2)匯編語言的主要應(yīng)用場(chǎng)合
1)程序執(zhí)行占用較短的時(shí)間,或者占用較小存儲(chǔ)容量的場(chǎng)合,如操作系統(tǒng)的核心程序段,實(shí)時(shí)控制系統(tǒng)的軟件,智能化儀器儀表的控制程序等。
2)程序與計(jì)算機(jī)硬件密切相關(guān),程序直接控制硬件的場(chǎng)合,如I/O接口電路的初始化程序段,外部設(shè)備的底層驅(qū)動(dòng)程序等。
3)須提高大型軟件性能的場(chǎng)合,如計(jì)算機(jī)系統(tǒng)頻繁調(diào)用的子程序等。
4)沒有合適的高級(jí)語言的場(chǎng)合,如開發(fā)最新的處理器程序時(shí),暫時(shí)沒有支持新指令的編譯程序。
單片機(jī)開發(fā)系統(tǒng)開發(fā)必須借助計(jì)算機(jī)、仿真器和編程器等開發(fā)工具,而使用仿真器和編程器就需要學(xué)習(xí)相關(guān)軟件,因此,熟悉開發(fā)軟件是整個(gè)單片機(jī)學(xué)習(xí)的必需條件。要能有效地進(jìn)行單片機(jī)軟件的開發(fā)必須熟練掌握KeilC仿真調(diào)試軟件、Proteus仿真運(yùn)行軟件和RF1800芯片燒錄軟件。
1.啟動(dòng)KeilμVision3
(1)進(jìn)入集成開發(fā)環(huán)境
雙擊KeilμVision3,即可進(jìn)入如圖1.2所示的KeilC軟件的集成開發(fā)環(huán)境。項(xiàng)目實(shí)操1
使用單片機(jī)開發(fā)軟件KeilC圖1.2
KeilC軟件的集成開發(fā)環(huán)境
(2)新建一個(gè)項(xiàng)目文件
1)選擇Project→New→μVisionProject選項(xiàng),如圖1.3所示。圖1.3
新建一個(gè)項(xiàng)目文件
2)在彈出的對(duì)話框中選擇要保存文件的路徑。例如,要保存到項(xiàng)目2的文件夾里,在“文件名”文本框中輸入任務(wù)名為“點(diǎn)亮單燈”然后單擊“保存”按鈕,如圖1.4所示。圖1.4
保存項(xiàng)目文件
3)這時(shí)候會(huì)彈出一個(gè)對(duì)話框,要求選擇單片機(jī)的型號(hào),可以根據(jù)使用的單片機(jī)型號(hào)來選擇,如圖1.5所示。圖1.5
選擇單片機(jī)型號(hào)2.建立一個(gè)匯編程序文件(1)新建文件選擇File→New選項(xiàng),如圖1.6所示。圖1.6
匯編程序文件建立
(2)保存文件
選擇File→Save選項(xiàng),或者單擊工具欄中的按鈕,保存文件。在彈出的對(duì)話框中選擇要保存的路徑并在“文件名”文本框中輸入文件名,注意此時(shí)一定要輸入后綴名“.asm”,單擊“保存”按鈕,如圖1.7所示。如果單片機(jī)的程序是采用匯編語言則后綴名為“.asm”,但如果是采用C語言進(jìn)行編程,則后綴名為“C”,然后單擊“保存”按鈕。圖1.7
匯編程序文件保存格式
(3)添加文件到當(dāng)前項(xiàng)目
1)單擊Target1前面的“+”號(hào),展開里面的內(nèi)容SourceGroup1,如圖1.8所示。圖1.8
項(xiàng)目文件展開
2)用右鍵單擊SourceGroup1,在彈出的快捷菜單中選擇AddFilestoGroup“SourceGroup1”選項(xiàng),如圖1.9所示。圖1.9
匯編文件添加到項(xiàng)目文件下
3)選擇文件light.asm,文件類型選擇AsmSourcefile,最后單擊Add按鈕,如果要添加多個(gè)文件,可以不斷添加,添加完后單擊Close按鈕,關(guān)閉對(duì)話框,如圖1.10所示。這時(shí)在SourceGroup1根目錄下就能看到light.asm文件了,如圖1.11所示。圖1.10
匯編文件添加到項(xiàng)目文件下選擇的文件格式圖1.11
匯編文件添加到項(xiàng)目文件下效果圖
4)匯編文件
在light.asm文件中輸入要調(diào)試的程序,如圖1.12所示為匯編文件樣例。圖1.12
匯編文件樣例
3.編譯文件
(1)編譯程序
選擇project→Buildtarget選項(xiàng),如圖1.13所示,或者單擊工具欄中的按鈕或按功能鍵F7,編譯修改過的文件,并生成目標(biāo)文件,如果編譯成功,會(huì)顯示編譯成功的信息。圖1.13
編譯文件
(2)程序的調(diào)試
如果編譯的程序有錯(cuò)誤,需要繼續(xù)修改直至編譯通過并成功。另外,若采用Proteus進(jìn)行軟硬件綜合仿真調(diào)試,則必須生成*.hex文件,在程序編譯前單擊如圖1.14所示工具欄中的“目標(biāo)選項(xiàng)”圖標(biāo),出現(xiàn)如圖1.15所示的對(duì)話框,切換到Output選項(xiàng)卡,再選中CreateHEXFile復(fù)選框。圖1.14
目標(biāo)選項(xiàng)工具欄
單擊“確定”按鈕后再進(jìn)行程序編譯。圖1.15
“目標(biāo)選項(xiàng)”對(duì)話框
4.仿真調(diào)試
編譯完成后,可以選擇下列三者
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電視直銷協(xié)議書
- 董事內(nèi)部協(xié)議書
- 電桿質(zhì)保協(xié)議書
- 繼父建房協(xié)議書
- 糞肥還田協(xié)議書
- 線路租用協(xié)議書
- 簽訂戀愛協(xié)議書
- 松江區(qū)婚姻糾紛協(xié)議書
- 暑假生勤工儉學(xué)協(xié)議書
- 父親和兒女簽字協(xié)議書
- 10篇說明文閱讀題及答案
- 二手車鑒定及評(píng)估教案
- 【培養(yǎng)】(完整版)師帶徒培養(yǎng)方案
- 一文讀懂-特魯索綜合征病例、影像、診斷、治療
- 體育旅游課件第二章體育旅游資源
- 2023年科技特長(zhǎng)生招生考試試卷
- 無刷雙饋電機(jī)的功率因數(shù)控制
- 公司員工借款合同
- 國(guó)家開放大學(xué)《財(cái)務(wù)管理#》章節(jié)測(cè)試參考答案
- 記賬憑證的填制方法和要求教案
- DL-T 2226-2021 電力用閥控式鉛酸蓄電池組在線監(jiān)測(cè)系統(tǒng)技術(shù)條件
評(píng)論
0/150
提交評(píng)論