??集成開發(fā)環(huán)境概述 ????80年代單片機(jī)進(jìn)入我國,當(dāng)時(shí)較有影響的是INTEL的NCS-48系列和Zilog公司的Z80系列,20多年來單片機(jī)獲得了飛速的發(fā)展,現(xiàn)在單片機(jī)已經(jīng)滲入到工農(nóng)業(yè)生產(chǎn),國防軍事,教育科研等諸多領(lǐng)域,已經(jīng)形成了計(jì)算機(jī)領(lǐng)域的一個(gè)重要分支。 ????單片機(jī)的應(yīng)用首先要考慮的是它的開發(fā)平臺(tái),也即我們常說的開發(fā)環(huán)境。由于INTEL公司的MCS-51系列較早進(jìn)入我國,事實(shí)上已形成了工業(yè)標(biāo)準(zhǔn),MCS-51的單片機(jī)應(yīng)用場(chǎng)合隨處可見,它的軟件資源相當(dāng)豐富,硬件的支持也很完善,價(jià)廉物美的開發(fā)器材隨處可取?,F(xiàn)階段,國內(nèi)的大部分單片機(jī)開發(fā)工程技術(shù)人員還是普遍使用匯編語言編寫程序。匯編語言有其缺陷性,但它編寫的代碼最小,最直接,效率也最高,所以還深得用戶接受。但是,它有著固有的缺陷,必須十分了解所用單片機(jī)的硬件結(jié)構(gòu),程序編寫困難,代碼難以理解,不易于識(shí)讀,難于移植,排錯(cuò)困難,編寫程序花的時(shí)間相當(dāng)多,調(diào)試不便等等。隨著國內(nèi)單片機(jī)開發(fā)環(huán)境的完善,開發(fā)技術(shù)水平不斷提高,現(xiàn)在已有相當(dāng)?shù)拈_發(fā)器材支持高級(jí)語言的使用和調(diào)試,為單片機(jī)的開發(fā)應(yīng)用提供了更好的物質(zhì)條件。高級(jí)語言(如C語言)具有開發(fā)周期短,易于識(shí)讀,容易移植,也便于初學(xué)著掌握。誠然,高級(jí)語言也有它不足之處,就是高級(jí)語言產(chǎn)生的代碼過長(也即研制人員常稱的“廢話太多”),對(duì)于早期單片機(jī)不大的ROM來說,可是非常突出的矛盾,另外它的運(yùn)行速度太慢,對(duì)于本來主頻不高的單片機(jī)是致命的弱點(diǎn)。但現(xiàn)在這方面的研制工作也取得了較大的進(jìn)展,高級(jí)語言的弱點(diǎn)也已被較大的克服,象MCS-51上的C語言的代碼長度,如果未加上人工優(yōu)化條件,也可做到最優(yōu)匯編程序水平的120%—150%,這也相當(dāng)可觀了??梢哉f相當(dāng)于中等匯編程序員的水平。 ????C語言是可以在高級(jí)計(jì)算機(jī)、個(gè)人電腦(PC)和單片機(jī)使用的唯一一種高級(jí)語言,現(xiàn)在很多類型的單片機(jī)已經(jīng)具備了C語言編譯軟件和實(shí)時(shí)多任務(wù)操作系統(tǒng)。C語言功能十分強(qiáng)大,可以塑造一種良好的開發(fā)環(huán)境,在一種單片上編制的程序比較容易移植到另一種單片機(jī)上。 ????目前的C語言編譯器有很多,常見的有MICRO-C51、American automation、Franklin、Archimedes、BSO/TASKING、Micro computer controls等等。C51 C語言編譯器早在80年代就已經(jīng)出現(xiàn),但并非所有的C語言編譯器都產(chǎn)生相應(yīng)單片機(jī)的有效源代碼,它們各有所長,下面我們略作簡(jiǎn)介。 ????American automation 編譯器通過#asm和endasm預(yù)處理選擇支持匯編語言,匯編速度慢,要求匯編的中間環(huán)節(jié)。 ????Franklin它的前身是Keil,它以代碼緊湊領(lǐng)先,可產(chǎn)生最少的代碼。它支持浮點(diǎn)和長整數(shù),重入和遞歸。它不提供庫的源代碼,不能生成能匯編的匯編代碼,僅產(chǎn)生混合代碼,只能修改后匯編。若使用匯編語言,必須分開匯編程序,然后手工連接。keil/Franklin專業(yè)級(jí)開發(fā)工具PK51,支持DOS話Windows環(huán)境。 ????Archimedes 它的鼻祖是瑞典的IAR,是支持分組開關(guān)(Bank)的編譯器,集成環(huán)境類似于Borland和Turbo,C編譯器可產(chǎn)生一個(gè)匯編語言文件,然后再用匯編器。 ????BSO/TASKING 它是一家專業(yè)開發(fā)和銷售嵌入式系統(tǒng)軟件工具的公司。它生產(chǎn)基于Windows的集成開發(fā)環(huán)境、調(diào)試器和交叉模擬器,支持鼠標(biāo),介面友好。軟件格式符合IntelOMF-51和Intel Hex標(biāo)準(zhǔn),它的匯編器和Intel匯編器兼容。 ????Micro computer controls 它不支持浮點(diǎn)數(shù),長整數(shù),結(jié)構(gòu)和多維數(shù)組,定義不允許有參數(shù),生成的源文件需由Intel或MCC的8051匯編器匯編。 ?????單片機(jī)應(yīng)用系統(tǒng)的開發(fā) ????單片機(jī)的應(yīng)用系統(tǒng)隨著其用途不同,其硬件和軟件均不相同,也即單片機(jī)的最初的選型都很重要,原則上是選擇高性價(jià)比的單片機(jī),硬件軟件化是提供系統(tǒng)性價(jià)比的有效方法,盡量減少硬件成本,多用軟件來實(shí)現(xiàn)相同的功能,這樣也可大大提高系統(tǒng)的可靠性。 ????雖然單片機(jī)的硬件選型不盡相同,軟件編寫也千差萬別,但系統(tǒng)的研制步驟和方法是基本一致的,一般都分為總體設(shè)計(jì)、硬件電路的構(gòu)思設(shè)計(jì)、軟件的編制和仿真調(diào)試幾個(gè)階段,下面我們作簡(jiǎn)要介紹。 ????[1].總體設(shè)計(jì) ????·確立功能特性指標(biāo) ????不管是工程控制系統(tǒng)還是智能儀器儀表,都必須先分析和了解項(xiàng)目的總體要求,輸入信號(hào)的類型和數(shù)量,輸出控制的對(duì)象及數(shù)量,輔助外設(shè)(如傳感器)的種類及要求,使用的環(huán)境及工作的電源要求,產(chǎn)品的成本,可靠性要求和可維護(hù)性及經(jīng)濟(jì)效益等等因素,必要時(shí)可參考同類產(chǎn)品的技術(shù)資料,制定出可行的性能指標(biāo)。 ????·單片機(jī)的選型 ????現(xiàn)在的單片機(jī)數(shù)量品種繁多,各種專用功能的單片機(jī)基本上都有,這給用戶者帶來的好處很多,至少可節(jié)約很多外接擴(kuò)展器件。單片機(jī)的選型很重要,選擇時(shí)需考慮其能全部滿足規(guī)定的要求,例如控制速度、精度、控制端口的數(shù)量、驅(qū)動(dòng)外設(shè)的能力、存儲(chǔ)器的大小,軟件編寫的難易程度、開發(fā)工具的支持程度等等。再如要驅(qū)動(dòng)LED顯示器,可選用多端口的單片機(jī)直接驅(qū)動(dòng),還可利用少端口加擴(kuò)展電路構(gòu)成,這就具體的分析選用何種器件有利于降低成本、電路易于制作、軟件便于編寫等等因素。再有,如果要求驅(qū)動(dòng)LCD顯示器,也可選用具有直接驅(qū)動(dòng)LCD的單片機(jī),也可加外接驅(qū)動(dòng)芯片的辦法。這些要求在應(yīng)用時(shí)具體問題具體分析。 ????此外,選擇某種單片機(jī)還需考慮貨源是否充足,是否便于批量生產(chǎn),在考慮性價(jià)比的時(shí)候同樣需研究易實(shí)現(xiàn)產(chǎn)品技術(shù)指標(biāo)的因素。 ????·軟件的編寫和支持工具 ????單片機(jī)的應(yīng)用軟件的設(shè)計(jì)與硬件的設(shè)計(jì)一樣重要,沒有控制軟件的單片機(jī)是毫無用處的,它們緊密聯(lián)系,相輔相成。并且硬件和軟件具有一定的互換性,在應(yīng)用系統(tǒng)中,有些功能既可用硬件來實(shí)現(xiàn),也可以軟件來完成,多利用硬件,可以提高研制速度,減少編制軟件的工作量,爭(zhēng)取時(shí)間,爭(zhēng)取商機(jī)。誠然這樣會(huì)增加產(chǎn)品的單位成本,對(duì)于以價(jià)格為競(jìng)爭(zhēng)手段的產(chǎn)品就不宜采用。相反,以軟件代替硬件來完成一些功能,最直觀的是降低成本,提高可靠性,增加技術(shù)難度而給仿制者增加仿制難度,這是好的一面,不利的一面是同時(shí)也增加了系統(tǒng)軟件的復(fù)雜性,軟件的編制工作量大,研制周期可能會(huì)加長,同時(shí)系統(tǒng)運(yùn)行的速度可能也會(huì)降低等。因此在總體考慮時(shí),必須綜合分析以上因素,合理地制定某些功能硬件和軟件的比例。 ????不同的單片機(jī)甚至同一公司的單片機(jī)它們的開發(fā)工具不一定相同或不完全相同,這就要求在選擇單片機(jī)時(shí),需考慮開發(fā)工具的因素,原則上是以最少的開發(fā)投資滿足某一項(xiàng)目的研制過程,最好是使用現(xiàn)有的開發(fā)工具或增加少量的輔助器材就可達(dá)到目的的。當(dāng)然,開發(fā)工具是一次性投資,而形成產(chǎn)品卻是長遠(yuǎn)的效益,這就需平衡產(chǎn)品和開發(fā)工具的經(jīng)濟(jì)性和效益性。 |
????[2].硬件電路設(shè)計(jì) ????總體設(shè)計(jì)中確立的功能特性要求,確定單片機(jī)的型號(hào),所需外圍擴(kuò)展芯片、存儲(chǔ)器、I/O電路、驅(qū)動(dòng)電路、可能還有A/D和D/A轉(zhuǎn)換電路以及其它模擬電路,設(shè)計(jì)出應(yīng)用系統(tǒng)的電路原理圖。 ????·程序存儲(chǔ)器 ????隨著微電子技術(shù)的發(fā)展,現(xiàn)在可用作程序存儲(chǔ)器的類型相當(dāng)多,各大半導(dǎo)體公司都推出了一系列程序存儲(chǔ)器,象EPROM、EEPROM、FLASH存儲(chǔ)器以及OTP存儲(chǔ)器等等。這些存儲(chǔ)器各有特點(diǎn),互有所長。EEPROM和FLASH適合于多次擦寫的場(chǎng)合,最適于開發(fā)調(diào)試階段,當(dāng)然它們的價(jià)格也稍比其他的高些。對(duì)于批量生產(chǎn)已成熟的應(yīng)用系統(tǒng)最好選用EPROM和OTP的存儲(chǔ)器,最主要的原因是它們的價(jià)格稍低,對(duì)降低產(chǎn)品的成本是相對(duì)有利的。 ????值得一提的是,現(xiàn)在的單片機(jī)普遍都帶有程序存儲(chǔ)器,容量也分有不同的等級(jí),從幾百字節(jié)到幾百kB都有,這為它們的應(yīng)用提供了更為廣闊的前景。而且這些單片機(jī)價(jià)格也貴不了多少,同時(shí),這些內(nèi)置ROM的單片機(jī)基本上均可實(shí)現(xiàn)軟硬件的程序加密,為保護(hù)自己的知識(shí)產(chǎn)權(quán)提供了強(qiáng)有力的措施,所以這些單片機(jī)深得用戶喜愛,可以說這類單片機(jī)逐漸成為市場(chǎng)的主流產(chǎn)品。 ????·數(shù)據(jù)存儲(chǔ)器 ????現(xiàn)在的單片機(jī)基本上都帶內(nèi)部數(shù)據(jù)存儲(chǔ)器(RAM)的,從幾十字節(jié)到幾KB字節(jié)都有,對(duì)于數(shù)據(jù)存儲(chǔ)器容量的要求,各個(gè)系統(tǒng)之間差別很大,要求也不盡相同,象8051/52系列的單片機(jī)片內(nèi)置有128和256字節(jié)的RAM,這對(duì)于一般中小型應(yīng)用系統(tǒng)(如實(shí)時(shí)控制系統(tǒng)和智能儀器儀表)已能滿足要求。對(duì)于RAM的容量要求稍大一點(diǎn),可采用外擴(kuò)芯片8155這樣的芯片,8155可同時(shí)擴(kuò)充數(shù)量更多的I/O口線。如果是數(shù)據(jù)采集對(duì)RAM容量要求較大的系統(tǒng)則需要采用更大容量的數(shù)據(jù)存儲(chǔ)器,當(dāng)然,外擴(kuò)的RAM也以盡可能少的芯片為原則。 ????·單片機(jī)的系統(tǒng)總線 ????8051總共有32個(gè)I/O口,如果使用內(nèi)置程序存儲(chǔ)器的芯片,可用于作I/O口線的就較多,一般均可滿足要求。但如需外接ROM和RAM,P0口為標(biāo)準(zhǔn)的雙向數(shù)據(jù)/地址總線口,P2為高8位地址總線口,即使高8位的地址總線口沒有完全使用,余下的I/O口也不能當(dāng)作它用,否則編程將相當(dāng)麻煩。這樣8051能作I/O的端口只有16個(gè)。此外,P3口它的中斷功能更為重要,一般在使用中都用作中斷處理,剩下的也只有P1口,這8個(gè)I/O口就顯得相當(dāng)寶貴。 ????P0和P2口作數(shù)據(jù)和地址總線,一般可驅(qū)動(dòng)數(shù)個(gè)外接芯片(視外接芯片要求的驅(qū)動(dòng)電流而異),也即P0和P2口的驅(qū)動(dòng)能力還是有限的,P0口為LSTTL電路,P2口為4個(gè)LSTTL電路,如果外接的芯片過多,負(fù)載過重,系統(tǒng)將可能不能正常工作,此時(shí)必須加接緩沖驅(qū)動(dòng)器予以解決。圖2為使用74LS244和74LS245三態(tài)緩沖驅(qū)動(dòng)器的應(yīng)用電路。供使用時(shí)參考。 ????·I/O接口 ????現(xiàn)在的單片機(jī)系列中普遍都有多I/O口的型號(hào),對(duì)I/O口的使用應(yīng)從其功能和驅(qū)動(dòng)能力上加以考慮,對(duì)于僅需增加少量的I/O口,最好是選用價(jià)格低廉的TTL或CMOS電路擴(kuò)展即可,這樣也可提高單片機(jī)口線的利用率。對(duì)于需擴(kuò)展更多的I/O口,則可選用標(biāo)準(zhǔn)的I/O口擴(kuò)展芯片8155、8255和8279等芯片,這些芯片接口電路簡(jiǎn)單,編程方便,使用靈活,價(jià)格適中。 ????·A/D和D/A轉(zhuǎn)換器 ????現(xiàn)在可使用的A/D轉(zhuǎn)換器數(shù)量繁多,品種齊全,各種分辨率、精度及速度的芯片應(yīng)有盡有。最著名的是美國的模擬數(shù)字器件公司(Analog)的一系列轉(zhuǎn)換器,此外還有MOTOROLA和MAXIM公司等,這給使用提供了很多便利的條件。還有一種趨勢(shì)大家都已看到,即現(xiàn)在的各大單片機(jī)生產(chǎn)廠商都推出了內(nèi)帶A/D轉(zhuǎn)換器的單片機(jī),這樣的芯片性價(jià)比一般都較高。由于A/D或D/A轉(zhuǎn)換器與單片機(jī)沒有外部連線,工作也更可靠,體積更小。對(duì)轉(zhuǎn)換器的控制均可使用軟件的方法實(shí)現(xiàn),使用十分方便,如果能滿足要求,建議首選這樣的機(jī)型,而不要外掛轉(zhuǎn)換器件。當(dāng)然內(nèi)置轉(zhuǎn)換器的單片機(jī),轉(zhuǎn)換器一般都在12位以下,對(duì)那些有更高要求的應(yīng)用系統(tǒng),也只能外接轉(zhuǎn)換器芯片。 |
[3].軟件設(shè)計(jì) ?????系統(tǒng)資源 ????在單片機(jī)應(yīng)用系統(tǒng)的開發(fā)中,軟件的設(shè)計(jì)是最復(fù)雜和困難的,大部分情況下工作量都較大,特別是對(duì)那些控制系統(tǒng)比較復(fù)雜的情況。如果是機(jī)電一體化的設(shè)計(jì)人員,往往需要同時(shí)考慮單片機(jī)的軟硬件資源分配。軟件設(shè)計(jì)一般可按如下步驟進(jìn)行,設(shè)計(jì)流程圖可口參見圖2。 ????在考慮一個(gè)應(yīng)用工程項(xiàng)目時(shí)就需先分析該系統(tǒng)完成的任務(wù),明確軟硬件個(gè)承擔(dān)哪些工作,有時(shí),實(shí)際上這種情況很多,就是一些任務(wù)可用軟件完成,也可以用硬件構(gòu)成,還需考慮采用軟件或硬件它們優(yōu)勢(shì),一般均以最優(yōu)的方案為首選。象虛定義各輸入/輸出(I/O)的功能、數(shù)據(jù)的傳輸交換形式、與外部設(shè)備接口及它們的地址分配、程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的使用區(qū)域、主程序子程序使用的空間、顯示(如有的話)等數(shù)據(jù)暫存區(qū)的選擇、堆棧區(qū)的開辟等等因素。 |
?????程序結(jié)構(gòu) ????一個(gè)優(yōu)秀的單片機(jī)程序設(shè)計(jì)人員,設(shè)計(jì)的軟件程序結(jié)構(gòu)是合理、緊湊和高效的。同一種任務(wù),有時(shí)用主程序完成是合理的,但有時(shí)需子程序執(zhí)行效率最高,占用CPU資源最少。一些要求不高的中斷任務(wù)或單片機(jī)的速度足夠高,可以使用程序掃描查詢也可以用中斷申請(qǐng)執(zhí)行,這也要具體的問題具體分析。對(duì)于多中斷系統(tǒng),但它們存在矛盾時(shí),需區(qū)分輕重緩急,主要和次要的區(qū)別對(duì)待。并適當(dāng)?shù)厥跈?quán)予不同的中斷優(yōu)先級(jí)別。 ????在單片機(jī)的軟件設(shè)計(jì)中,任務(wù)可能也很多,程序量很大,是否意味著程序也按部就班從頭到尾編寫下去呢?答案是否定的,在這種情況下一般都需把程序分成若干個(gè)功能獨(dú)立的模塊,這也是軟件設(shè)計(jì)中常用的方法,這也即俗稱的“化整為零”的方法。理論和實(shí)踐都證明,這種方法是行之有效的。這樣可以分階段地對(duì)單個(gè)模塊進(jìn)行設(shè)計(jì)和調(diào)試,一般情況下單個(gè)模塊利用仿真工具即可將它們調(diào)試好,最后再將它們有機(jī)的聯(lián)系起來,構(gòu)成一個(gè)完整的控制程序,并對(duì)它們進(jìn)行聯(lián)合調(diào)試即可。 ????對(duì)于復(fù)雜的多任務(wù)實(shí)時(shí)控制系統(tǒng),要處理的數(shù)據(jù)就非常龐大,同時(shí)又要求對(duì)多個(gè)控制對(duì)象進(jìn)行實(shí)時(shí)控制,要求對(duì)各控制對(duì)象的實(shí)時(shí)數(shù)據(jù)進(jìn)行快速的處理和響應(yīng),這對(duì)系統(tǒng)的實(shí)時(shí)性、“并行性”提出了更高的要求。這種情況下一般要求采用實(shí)在時(shí)地任務(wù)操作系統(tǒng),并要求這個(gè)系統(tǒng)具備優(yōu)良的實(shí)時(shí)控制能力。 ?????數(shù)學(xué)模型 ????一個(gè)控制系統(tǒng)的研制,明確了它們需完成的任務(wù),那么擺在設(shè)計(jì)人員面前的就是一堆需要協(xié)調(diào)解決的問題了,這是設(shè)計(jì)人員必須進(jìn)一步分析各輸入輸出變量的數(shù)學(xué)關(guān)系,也即建立數(shù)學(xué)模型,這個(gè)步驟對(duì)一般較復(fù)雜的控制系統(tǒng)是必不可少的,而且不同的控制系統(tǒng),它們的數(shù)學(xué)模型也不盡相同。 ????在很多控制系統(tǒng)中都需要對(duì)外部的數(shù)據(jù)進(jìn)行采集取樣、處理加工、補(bǔ)償校正和控制輸出。外部數(shù)據(jù)可能是數(shù)字量也可能是模擬量,對(duì)于模擬量的輸入,則通過傳感器件進(jìn)行采樣,由單片機(jī)進(jìn)行分析處理后輸出,輸出的方式很多,可以顯示、打印或終端控制,從模擬量的采樣到輸出的諸多環(huán)節(jié),這些信號(hào)都可能會(huì)“失真”——即產(chǎn)生非線性誤差,這些都需要單片機(jī)進(jìn)行補(bǔ)償、校正和預(yù)加重,才能保證輸出量達(dá)到我們所要求的誤差范圍。 ????現(xiàn)階段8位單片機(jī)仍是主流,對(duì)于復(fù)雜參數(shù)的計(jì)算,例如非線性數(shù)據(jù)、對(duì)數(shù)、指數(shù)、三角函數(shù)、微積分運(yùn)算,如使用PC機(jī)(32位)的軟件編程相對(duì)簡(jiǎn)單,并且具有大量的應(yīng)用軟件可利用。但單片機(jī)要用匯編語言完成這樣的運(yùn)算,程序結(jié)構(gòu)是很復(fù)雜的,程序編寫也較困難,甚至難以建立數(shù)學(xué)模型,解決這個(gè)問題,常用的方法多半采用查表法實(shí)現(xiàn)之。查表法即事先將測(cè)試和計(jì)算的數(shù)據(jù)按一定規(guī)律編制成表格,并存于存儲(chǔ)器中,CPU根據(jù)被測(cè)參數(shù)值和近似值查出最終所需的結(jié)果。查表法是一種行之有效的方法,它可對(duì)輸入?yún)?shù)進(jìn)行補(bǔ)償校正,計(jì)算和轉(zhuǎn)換。程序編制簡(jiǎn)單,將復(fù)雜的數(shù)值運(yùn)算簡(jiǎn)化為簡(jiǎn)單的數(shù)據(jù)輸出的好辦法,常被設(shè)計(jì)人員采用。 ????值得一提的是,現(xiàn)行的單片機(jī),大多數(shù)的單片機(jī)都具有查表指令,這給軟件設(shè)計(jì)提供了技術(shù)條件。 ?????程序流程 ????較復(fù)雜的控制系統(tǒng)一般都需要繪制一份程序流程圖,可以這樣說它是程序編制的綱領(lǐng)性文件,可以有效地知道程序的編寫。當(dāng)然,程序設(shè)計(jì)伊始,流程圖不可能盡善盡美,在編制過程中仍需進(jìn)行修改和完善,認(rèn)真地繪制程序流程圖,可以起到事倍功半的效果。 |
????流程圖就是根據(jù)系統(tǒng)功能的要求及操作過程,列出主要的各功能模塊,復(fù)雜程序程序流向多變,需要在初始化時(shí)設(shè)置各種標(biāo)志,程序根據(jù)重些標(biāo)志控制程序的流向。當(dāng)系統(tǒng)中各功能模塊的狀態(tài)改變時(shí),只須修改相應(yīng)的標(biāo)志即可,無須具體地管理狀態(tài)變化對(duì)其他模塊的影響,這些需要在繪制流程圖時(shí),清晰地標(biāo)識(shí)出程序流程中各標(biāo)志的功能。 ?????編制程序 ????上述的工作做好了,就可以開始編制程序了,程序編寫時(shí),首先需對(duì)用到的參數(shù)進(jìn)行定義,和標(biāo)號(hào)的定義一樣,使用的字符必須易于理解,可以使用英文單詞和漢語拼音的縮寫形式,這對(duì)今后自己的辨讀和排錯(cuò)都是有好處的。然后初始化各特殊功能寄存器的狀態(tài),中斷口的地址區(qū)定義,數(shù)據(jù)存儲(chǔ)區(qū)的安排,根據(jù)系統(tǒng)的具體情況,估算中斷、子程序的使用情況,預(yù)留出堆棧區(qū),和需要的數(shù)據(jù)緩存區(qū),接下來就開始編寫程序了。 ????現(xiàn)在的單片機(jī)程序還是以匯編語言為主,因?yàn)樗院?jiǎn)潔、直觀、緊湊仍被設(shè)計(jì)人員樂于接受。高級(jí)語言(如C語言)也在單片機(jī)設(shè)計(jì)中發(fā)揮越來越重要的角色,性能也越來越好,但不管是使用何種語言,最終還是需要匯編成機(jī)器語言,調(diào)試正常后,通過燒錄器固化到單片機(jī)或ROM中。至此,程序編寫即告完成。 ?????CodeCruiser for EasyPack51集成開發(fā)環(huán)境 |
評(píng)論
查看更多