2023年全國(guó)碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩18頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  《DSP技術(shù)與應(yīng)用》課程設(shè)計(jì)報(bào)告</p><p>  題目: 步進(jìn)電機(jī) </p><p>  系 (院): 計(jì)算機(jī)工程系 </p><p>  專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù)(嵌入式軟件方向)</p><p>  班 級(jí):

2、 計(jì)算機(jī)1073班 </p><p>  學(xué) 號(hào): </p><p>  姓 名: </p><p>  指導(dǎo)教師: </p><p&

3、gt;  學(xué)年學(xué)期: 2009 ~ 2010 學(xué)年 第 2 學(xué)期</p><p>  2010年6月18日</p><p><b>  設(shè)計(jì)任務(wù)書</b></p><p><b>  摘要:</b></p><p>  步進(jìn)電機(jī)作為一種電脈沖—角位移的轉(zhuǎn)換元件,由于具有價(jià)格低廉、易于控制、

4、無積累誤差和計(jì)算機(jī)接口方便等優(yōu)點(diǎn),在機(jī)械、儀表、工業(yè)控制等領(lǐng)域中獲得了廣泛的應(yīng)用。通過DSP對(duì)步進(jìn)電機(jī)的控制可以實(shí)現(xiàn)系統(tǒng)實(shí)時(shí)、精確、高效、安全的設(shè)計(jì)要求,從而實(shí)現(xiàn)了自動(dòng)化生產(chǎn)過程。作為重要部件的DSP是否實(shí)現(xiàn)控制要求是應(yīng)用系統(tǒng)能否可靠工作的關(guān)鍵。許多研究機(jī)構(gòu)和電機(jī)生產(chǎn)廠家對(duì)于用單片機(jī)和用功率器件來設(shè)計(jì)步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)作了大量的研究,如把MCS-51系列的8031單片機(jī)、美國(guó)Microchip公司的PIC系列的PIC16C5X、各類PL

5、C和VMOS管等功率器件作為控制系統(tǒng)都是比較成熟的。這些方面的資料和經(jīng)驗(yàn)對(duì)于將更高速的DSP器件用在驅(qū)動(dòng)系統(tǒng)上都是很有幫助的。現(xiàn)在流行的方法是將一系列外圍設(shè)備如數(shù)模轉(zhuǎn)換器(A/D)、脈寬調(diào)制發(fā)生器(PWM)和數(shù)字信號(hào)處理器(DSP)內(nèi)核集成在一起,就獲得一個(gè)強(qiáng)大又非常經(jīng)濟(jì)的電機(jī)控制專用的的DSP。許多廠家開發(fā)出了電機(jī)專用的DSP器件和支持各種通用算法的模擬軟件。不僅芯片的運(yùn)算速度越來越快,且軟件中集成和固化在硬件中的算法模塊越來越多,使

6、得實(shí)現(xiàn)各種功能和進(jìn)行電機(jī)性能研究變得現(xiàn)實(shí)和容易,能</p><p>  關(guān)鍵字:DSP;步進(jìn)電機(jī);控制</p><p><b>  目 錄</b></p><p><b>  一 實(shí)驗(yàn)?zāi)康模?</b></p><p><b>  二 實(shí)驗(yàn)原理:1</b></p>

7、;<p>  2.1 步進(jìn)電機(jī) :1</p><p>  2.2 步進(jìn)電機(jī)種類及區(qū)別:2</p><p>  2.3控制系統(tǒng)的硬件組成2</p><p>  2.4 步進(jìn)電機(jī)的工作原理2</p><p>  三 步進(jìn)電機(jī)的驅(qū)動(dòng)和控制電路:3</p><p>  3.1 步進(jìn)電機(jī)的功率驅(qū)動(dòng)電路3

8、</p><p>  3.2 步進(jìn)電機(jī)控制電路:4</p><p>  四 步進(jìn)電機(jī)的DSP控制方法:5</p><p>  五 程序設(shè)計(jì)及其流程圖:6</p><p><b>  六 實(shí)驗(yàn)現(xiàn)象:6</b></p><p><b>  總 結(jié)7</b><

9、/p><p><b>  參考文獻(xiàn)8</b></p><p>  附件 程序源代碼9</p><p>  1.主程序 main.c9</p><p>  2. 頭文件 IO.h11</p><p>  3. 中斷向量表文件vectors.asm12</p><p> 

10、 4. 命令文件 mycmd.cmd12</p><p><b>  一 實(shí)驗(yàn)?zāi)康模?lt;/b></p><p>  1.1 熟悉步進(jìn)電機(jī)的工作原理; </p><p>  1.2 掌握DSP控制方法;</p><p>  1.3 了解步進(jìn)電機(jī)的控制方法。</p><p><b&g

11、t;  二 實(shí)驗(yàn)原理:</b></p><p>  2.1 步進(jìn)電機(jī) : </p><p>  步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。通俗一點(diǎn)講:當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(及步進(jìn)角)??捎脕砜刂茩C(jī)器人手臂以及車輪等部件,工作可靠,控制容易。 可以通過控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)您可以通過控

12、制脈沖頻率來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)調(diào)速的目的。因此在需要準(zhǔn)確定位或調(diào)速控制時(shí)均可考慮使用步進(jìn)電機(jī)。 電機(jī)鐵芯扭槽疊扣沖壓控制系統(tǒng)是為實(shí)現(xiàn)模具加工智能化控制要求,為企業(yè)設(shè)計(jì)的實(shí)用性產(chǎn)品,其要求是對(duì)高速?zèng)_床附加一智能模具控制器,該控制器在不影響沖床原有的運(yùn)行及控制的基礎(chǔ)上,采集相關(guān)的輸入信號(hào),并實(shí)現(xiàn)對(duì)所沖模具的有效控制。本文設(shè)計(jì)的控制器要求扭槽模具每沖一片后移動(dòng)一個(gè)步距到達(dá)另一個(gè)特定位置,再?zèng)_另一片,連續(xù)沖出的鐵芯片,經(jīng)疊壓后,

13、形成所要求的扭槽形狀。控制系統(tǒng)強(qiáng)調(diào)鐵芯加工過程中的角度位移控制,希望具有足夠高精度的步距角,并且運(yùn)行穩(wěn)定性好??刂葡到y(tǒng)選用了兩相混合型步進(jìn)電機(jī)作為位置控制機(jī)構(gòu),通過DSP的控制,將輸入的脈沖信號(hào)線性地轉(zhuǎn)換為位移量,從而控制電機(jī)鐵芯的扭槽。 傳統(tǒng)步進(jìn)電機(jī)控制電路的實(shí)現(xiàn)多</p><p>  2.2 步進(jìn)電機(jī)種類及區(qū)別: </p><p>  步進(jìn)電機(jī)分三種:永磁式(PM),反應(yīng)式(V

14、R)和混合式(HB) 永磁式步進(jìn)一般為兩相,轉(zhuǎn)矩和體積較小,步進(jìn)角一般為7.5度或15度;反應(yīng)式步進(jìn)一般為三相,可實(shí)現(xiàn)大轉(zhuǎn)矩輸出,步進(jìn)角一般為1.5度,但噪聲和振動(dòng)都很大。在歐美等發(fā)達(dá)國(guó)家80年代已被淘汰?;旌鲜讲竭M(jìn)是指混合了永磁式和反應(yīng)式的優(yōu)點(diǎn)。它又分為兩相四相和五相:兩相步進(jìn)09.12.20一般為1.8度而五相步進(jìn)角一般為0.72度。這種步進(jìn)電機(jī)的應(yīng)用最為廣泛。</p><p>  2.3控制系統(tǒng)的硬件組成&

15、lt;/p><p>  步進(jìn)電機(jī)控制的最大特點(diǎn)是開環(huán)控制,不需要反饋信號(hào)。因?yàn)椴竭M(jìn)電機(jī)的運(yùn)動(dòng)不產(chǎn)生旋轉(zhuǎn)量的誤差累積。由DSP實(shí)現(xiàn)的步進(jìn)電機(jī)控制系統(tǒng)結(jié)構(gòu)如圖1所示??刂葡到y(tǒng)中的核心芯片是DSP,如虛線所示。它由兩大功能模塊組成:a.速度控制模塊,核心是鎖相環(huán)PLL宏模塊電路,它在不同速度控制信號(hào)作用下,可將經(jīng)時(shí)鐘分頻器分頻后的系統(tǒng)時(shí)鐘改變?yōu)椴煌腜WM信號(hào),將此信號(hào)作為速度控制模塊的變頻時(shí)鐘,可達(dá)到改變步進(jìn)電機(jī)速度的目

16、的;b.方向控制模塊,核心是脈沖分配電路,在每一個(gè)變頻時(shí)鐘周期內(nèi),脈沖分配器可在不同的方向控制信號(hào)下產(chǎn)生不同方向的步進(jìn)時(shí)序脈沖,從而控制步進(jìn)電機(jī)順2步進(jìn)電機(jī)及其驅(qū)動(dòng)器的選用步進(jìn)電機(jī)可以用數(shù)字信號(hào)直接控制,隨著數(shù)字控制系統(tǒng)的發(fā)展,步進(jìn)電機(jī)的應(yīng)用也越來越廣泛。</p><p>  步進(jìn)電機(jī)需配置一個(gè)專用的電源供電,電源的作用是讓電動(dòng)機(jī)的控制繞組按照特定的順序通電,即受輸入的電脈沖控制而動(dòng)作,這個(gè)專用電源稱為驅(qū)動(dòng)電源(

17、或驅(qū)動(dòng)電路)。步進(jìn)電機(jī)及其驅(qū)動(dòng)電源是一個(gè)互相聯(lián)系的整體,步進(jìn)電機(jī)的運(yùn)行性能是由電動(dòng)機(jī)和驅(qū)動(dòng)電源兩者配合所形成的綜合效果。</p><p>  2.4 步進(jìn)電機(jī)的工作原理</p><p>  2.4.1 換相順序</p><p>  步進(jìn)電機(jī)的通電換相順序是嚴(yán)格按照步進(jìn)電機(jī)的工作方式進(jìn)行的。通常把通電換相這一過程稱為“脈沖分配”。例如,四相步進(jìn)電機(jī)的單四拍工作方式,其

18、各相通電的順序?yàn)锳-B-C-D,通電控制脈沖必須嚴(yán)格地按照這一順序分別控制A、B、C、D相的通電和斷電。</p><p>  2.4.2步進(jìn)電機(jī)的速度</p><p>  如果給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一個(gè)步距角,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一個(gè)步距角。兩個(gè)脈沖的間隔時(shí)間越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。因此,脈沖的頻率?決定了步進(jìn)電機(jī)的轉(zhuǎn)速,在可控制的速度范圍內(nèi),步進(jìn)電機(jī)的轉(zhuǎn)速和脈沖的頻率成正比

19、。</p><p>  步進(jìn)電機(jī)的每分轉(zhuǎn)速可由下式計(jì)算:</p><p>  其中是脈沖頻率,是轉(zhuǎn)子齒數(shù),是拍數(shù)。</p><p>  當(dāng)步進(jìn)電機(jī)的工作方式確定之后,調(diào)整脈沖的頻率,就可以對(duì)步進(jìn)電機(jī)進(jìn)行調(diào)整。</p><p>  2.4.3步進(jìn)電機(jī)的轉(zhuǎn)向</p><p>  根據(jù)步進(jìn)電機(jī)的工作原理,如果按給定的工作方式

20、正序通電換相,則步進(jìn)電機(jī)正轉(zhuǎn);如果按方序通電換相,則步進(jìn)電機(jī)反轉(zhuǎn)。例如四相步進(jìn)電機(jī)工作在單四拍方式,通電換相的正序是A-B-C-D,電機(jī)就正轉(zhuǎn);如果按反序A-D-C-B,電機(jī)就反轉(zhuǎn)。如果四相步進(jìn)電機(jī)工作在雙四拍方式,通電換相的正序是AB-BC-CD-DA,電機(jī)就正轉(zhuǎn);如果按反序DA-CD-BC-BA,電機(jī)就反轉(zhuǎn)。</p><p>  三 步進(jìn)電機(jī)的驅(qū)動(dòng)和控制電路:</p><p>  3.

21、1 步進(jìn)電機(jī)的功率驅(qū)動(dòng)電路</p><p>  步進(jìn)電機(jī)是一種數(shù)字元件, 易于與數(shù)字電路接口, 但一般數(shù)字電路的信號(hào)能量遠(yuǎn)遠(yuǎn)不足以驅(qū)動(dòng)步進(jìn)電機(jī)。因此, 必須有一個(gè)與之匹配的驅(qū)動(dòng)電路來驅(qū)動(dòng)步進(jìn)電機(jī)。</p><p>  CI-53002步進(jìn)電機(jī)模塊包含四相步進(jìn)電機(jī)與功率驅(qū)動(dòng)電路。功率驅(qū)動(dòng)電路(FT5754)內(nèi)含四組達(dá)林頓晶體管當(dāng)作電子開關(guān),分別來控制步進(jìn)電機(jī)四組線圈A、B、/A、/B的通電與

22、否,這樣就構(gòu)成了步進(jìn)電機(jī)的功率驅(qū)動(dòng)電路。</p><p>  圖2 步進(jìn)電機(jī)的功率驅(qū)動(dòng)電路</p><p>  3.2 步進(jìn)電機(jī)控制電路:</p><p>  實(shí)現(xiàn)步進(jìn)電機(jī)通電換相控制也就是脈沖分配的方法有兩種:軟件法和硬件法,這里只介紹設(shè)計(jì)中采用的軟件法。軟件法是完全用軟件的方式,按照給定的通電換相順序,通過DSP的PWM輸出口向驅(qū)動(dòng)電路發(fā)出控制脈沖。實(shí)驗(yàn)電路圖2

23、所示就是用軟件法控制四相步進(jìn)電機(jī)的硬件接口圖。分別用DSP的PWM1~PWM4,向四相步進(jìn)電機(jī)各相傳送控制信號(hào)。</p><p>  圖3 步進(jìn)電機(jī)的控制電路</p><p>  四 步進(jìn)電機(jī)的DSP控制方法:</p><p>  TDS2407EA是一塊以TMS320LF2407ADSP為核心的DSP評(píng)估板,通過擴(kuò)展口的PWM波,可以很方便的對(duì)步進(jìn)電機(jī)進(jìn)行控制。&

24、lt;/p><p>  步進(jìn)電機(jī)的驅(qū)動(dòng)電路是根據(jù)控制信號(hào)工作的。在步進(jìn)電機(jī)的DSP控制中,控制信號(hào)是由DSP產(chǎn)生的。以最簡(jiǎn)單的四相單四拍為例,四相單四拍工作方式通電換相的正序?yàn)锳-B-C-D,共有4個(gè)通電狀態(tài)。</p><p>  利用TMS320LF2407A DSP的EVA事件管理器,設(shè)計(jì)定時(shí)器T1的周期值為步進(jìn)脈沖的周期,即T1PR=1/?。當(dāng)周期中斷時(shí),在中斷處理子程序中,通過修改比較

25、方式控制寄存器ACTRA中的相應(yīng)位為“強(qiáng)制高”或“強(qiáng)制低”的方法,來控制某相通斷電,實(shí)現(xiàn)換相。修改ACTRA的具體方法是:“強(qiáng)制高”代表通電;“強(qiáng)制低”代表斷電,則可用4個(gè)控制字來對(duì)應(yīng)這4個(gè)通電狀態(tài)。這4個(gè)控制字見表1。</p><p>  表1 四相四拍工作方式的控制字</p><p>  在T1周期中斷處理子程序中,通過查表的方法根據(jù)當(dāng)前狀態(tài)和轉(zhuǎn)向查得控制字,將這個(gè)控制字送入比較方式

26、控制寄存器,就可以實(shí)現(xiàn)換相。每送一個(gè)控制字,就完成一“拍”,步進(jìn)電機(jī)就轉(zhuǎn)過一個(gè)步距角。依次完成4次換相,步進(jìn)電機(jī)就會(huì)正向轉(zhuǎn)動(dòng)一個(gè)齒距角。如果按照控制字的反序查表,就會(huì)實(shí)現(xiàn)步進(jìn)電機(jī)的反轉(zhuǎn)。</p><p>  五 程序設(shè)計(jì)及其流程圖:</p><p><b>  六 實(shí)驗(yàn)現(xiàn)象:</b></p><p>  圖6 運(yùn)轉(zhuǎn)模式功能仿真圖7 正反轉(zhuǎn)控

27、制功能仿真</p><p><b>  總 結(jié)</b></p><p>  此次的課程設(shè)計(jì),我學(xué)到了很多知識(shí)。首先很感謝這次辛勤輔導(dǎo)我們的zz老師,在一周的時(shí)間中對(duì)我們進(jìn)行了具體而深刻的教育。對(duì)于我不懂的問題及程序中的不足給出了正確的指導(dǎo)和良好的建議。同時(shí)感謝學(xué)校為我們提供了這么一個(gè)學(xué)習(xí)機(jī)會(huì)和良好的實(shí)習(xí)環(huán)境。另外本次課程設(shè)計(jì)過程中查閱了大量的圖書資料,感謝我們學(xué)

28、校圖書館管理人員的熱情服務(wù)。總之很感謝本次的指導(dǎo)老師,正由于他們無私的幫助和指導(dǎo)才讓我的設(shè)計(jì)任務(wù)完成得很順利,在此,對(duì)學(xué)校,老師們表示由衷的感謝!</p><p>  步進(jìn)電機(jī)實(shí)驗(yàn)對(duì)于我計(jì)算機(jī)專業(yè)的學(xué)生電子電路基礎(chǔ)比較差,在設(shè)計(jì)中表現(xiàn)出來了,但是也表明了我要加倍的努力去學(xué)習(xí)電子電路方面的基礎(chǔ)知識(shí)。光靠這次的設(shè)計(jì)對(duì)能力提高不了多少,而是要記住這次設(shè)計(jì)經(jīng)驗(yàn),來更好地做好下次的設(shè)計(jì),也就是說積累經(jīng)驗(yàn),這對(duì)將來走上社會(huì)有

29、很重要的作用。</p><p><b>  參考文獻(xiàn)</b></p><p>  1 劉和平. DSP原理及電機(jī)控制應(yīng)用 .北京: 北京航空航天大學(xué)出版社, 2006.10</p><p>  2 唐介 .電機(jī)與拖動(dòng).高等教育出版社, 2003.7</p><p>  3 王海生. 微型計(jì)算機(jī)控制技術(shù). 北京: 清華大學(xué)

30、出版社, 2007.4</p><p>  4 鄭紅.DSP應(yīng)用系統(tǒng)設(shè)計(jì)實(shí)踐.北京航空航天大學(xué)出版社,2006.5</p><p>  5 扈宏杰.DSP控制系統(tǒng)的實(shí)現(xiàn)與設(shè)計(jì).機(jī)械工業(yè)出版社,2004.7</p><p><b>  附件 程序源代碼</b></p><p>  1.主程序 main.c</p>

31、;<p>  #include "LF2407REGS.h"</p><p>  #include "IO.h"</p><p>  #define period 0x8000</p><p>  unsigned char table[4]={0x0003,0x000c,0x0030,0x00c0};</

32、p><p>  volatile unsigned int key=0;</p><p>  volatile unsigned int count=0;</p><p>  volatile unsigned int i=0;</p><p>  volatile unsigned int speed=1;</p><

33、;p>  volatile unsigned int nLed=0;</p><p>  void initsys() //系統(tǒng)初始化</p><p><b>  {</b></p><p>  asm(" setc INTM");

34、 // 禁止所有中斷</p><p>  asm(" setc SXM"); // 抑制符號(hào)位擴(kuò)展</p><p>  asm(" clrc OVM"); // 累加器結(jié)果正常溢出</p><p>  asm(" clrc CNF");

35、 // B0被配置為數(shù)據(jù)存儲(chǔ)空間</p><p>  *SCSR1 = 0x83fe ; // 2倍頻,30MHz</p><p>  *EVAIMRA = *EVAIMRA|0x0080;</p><p>  *EVAIFRA = 0xffff;</p><p>  *W

36、DCR = 0x0e8 ; // 不能使用看門狗</p><p>  *IMR = 0x0002 ; // 打開中斷2</p><p>  *IFR = 0xFFFF ; // 清除所有的中斷標(biāo)志,寫1清0</p><p>  *WSGR = 0x0000 ;

37、 // 禁止所有等待狀態(tài)</p><p><b>  }</b></p><p>  void PWMinit()</p><p><b>  {</b></p><p>  *MCRA = 0;</p><p>  *MCRA = *MCRA|0x

38、03c0; //IOPA6(PWM1),IOPA7(PWM2),IOPB0(PWM3),</p><p>  //IOPB1(PWM4)配置為基本功能方式</p><p>  *ACTRA = 0xAAAA;</p><p>  *PBDATDIR = 0xfff8; </p><p>  *DBTCONA= 0x0000

39、; //不使能死區(qū)控制</p><p>  *CMPR1 = period/2; </p><p>  *CMPR2 = period/2;</p><p>  *T1PER = period; //設(shè)置定時(shí)器1的周期寄存器</p><p>  *COMCONA= 0x8200;

40、 //使能比較操作</p><p>  *GPTCONA = 0x0001;</p><p>  *T1CON = 0x0E00; // 定時(shí)器1為連續(xù)增計(jì)數(shù)模式</p><p>  *T1CNT = 0; // 定時(shí)器1計(jì)數(shù)清零</p><p><b> 

41、 }</b></p><p>  void main(void)</p><p><b>  {</b></p><p>  initsys(); //系統(tǒng)初始化</p><p>  OUTMAC( _LED, nLed); //

42、I/O輸出端口初始化</p><p>  PWMinit(); // PWM 初始化</p><p>  asm(" clrc INTM"); //打開中斷</p><p>  *T1CON = *T1CON|0x40; //啟動(dòng)定時(shí)器1

43、</p><p><b>  while(1);</b></p><p><b>  }</b></p><p>  void interrupt nothing(void)</p><p><b>  {</b></p><p><b>  

44、return;</b></p><p><b>  }</b></p><p>  void interrupt T1PER_ISR(void)</p><p><b>  {</b></p><p>  if(*PIVR==0x0027)</p><p><

45、;b>  {</b></p><p>  INMAC( _DIP, key); //讀入開關(guān)數(shù)值</p><p>  speed=(key & 7)+1;</p><p>  if(key>7) //正轉(zhuǎn)</p><p><

46、b>  {</b></p><p><b>  i++;</b></p><p>  if(i>(4*speed-1)) i=0;</p><p><b>  }</b></p><p>  ese //反轉(zhuǎn)<

47、/p><p><b>  {</b></p><p><b>  i--;</b></p><p>  if(i>250) i=4*speed-1;</p><p><b>  }</b></p><p>  count=i/speed;

48、 //確定轉(zhuǎn)速</p><p>  *ACTRA = table[count]; //輸出脈沖</p><p>  nLed = 15/speed; //15為定時(shí)器T1在1s中的中斷次數(shù)</p><p>  nLed &= 0x000f;

49、 //LED顯示脈沖頻率</p><p>  OUTMAC( _LED, count);</p><p><b>  }</b></p><p>  *EVAIFRA = *EVAIFRA|0x0080; //清中斷標(biāo)志并返回</p><p><b>  }</b></p&g

50、t;<p>  2. 頭文件 IO.h</p><p>  #define _DIP 0008h</p><p>  #define _LED 000ch</p><p>  #define STR(x) #x</p><p>  #define OUTMAC(address,data) </

51、p><p>  asm(" LDPK _"STR(data)); </p><p>  asm(" OUT _"STR(data) "," STR(address))</p><p>  #define INMAC(address,data) </p>

52、<p>  asm(" LDPK _"STR(data)); </p><p>  asm(" IN _"STR(data) "," STR(address))</p><p>  3. 中斷向量表文件vectors.asm </p><p&

53、gt;  .title "vectors.asm"</p><p>  .ref _c_int0</p><p>  .ref _nothing </p><p>  .ref _T1PER_ISR</p><p>  .sect ".vectors"</p><p>

54、;  reset: B _c_int0 ; 00</p><p>  int1: B _nothing ; 02</p><p>  int2: B _T1PER_ISR ; 04</p><p>  int3:B _nothing ; 06</p><p>

55、;  int4:B _nothing ; 08</p><p>  int5:B _nothing ; 0A</p><p>  int6:B _nothing ; 0C</p><p><b>  .end</b></p><p>  4. 命令文件 mycm

56、d.cmd</p><p>  -c /* ROM自動(dòng)初始化模型 */</p><p>  -m main.map /* 創(chuàng)建映射文件 */</p><p>  /* 即主程序的 文件名.map */</p><p>  -o main.out /* 輸出文件

57、名 */</p><p>  -l rts2xx.lib /* 運(yùn)行支持庫(kù) */</p><p>  - stack 40</p><p>  /* 特殊內(nèi)存Memory的配置 */</p><p><b>  MEMORY</b></p><

58、p><b>  {</b></p><p>  /* 規(guī)定程序存儲(chǔ)器 */</p><p>  PAGE 0: VECTS: origin = 0000h, length = 0040h /* 程序復(fù)位 */</p><p>  PVECS: origin = 0040h, length = 0080h

59、 /* 外圍模塊中斷向量 */</p><p>  PROG : origin = 2000h, length = 7F40h /* 在片 Flash */</p><p>  /* 規(guī)定數(shù)據(jù)存儲(chǔ)器 */</p><p>  PAGE 1: BAREA: origin = 0200h, length = 0200h /* B

60、0 和 B1 塊 */</p><p>  B2: origin = 0060h, length = 0020h /* B2 塊 */</p><p>  SARAM: origin = 0800h, length = 0800h /* SARAM 塊 */</p><p>  EXT: origin

61、 = 8000h, length = 8000h /* 外部存儲(chǔ)器 */</p><p><b>  }</b></p><p><b>  SECTIONS</b></p><p><b>  {</b></p><p>  .vectors : {

62、} > VECTS PAGE 0 /* 中斷向量表 */</p><p>  .pvecs : { } > PVECS PAGE 0 /* 外圍中斷向量表 */</p><p>  .text : { } > PROGPAGE 0 /* 可執(zhí)行 代碼 和 浮點(diǎn) 變量

63、 */</p><p>  .cinit : { } > PROGPAGE 0 /* 已初始化的全局變量和靜態(tài)變量*/</p><p>  .switch : { } > PROGPAGE 0 /* 大型的 switch 語句的跳轉(zhuǎn)表 */</p><p>  .const : { } > BARE

64、APAGE 1 /* 已初始化的字符串常量、 */</p><p>  /*全局變量和靜態(tài)變量 */</p><p>  .bss : { } > SARAMPAGE 1 /* 未初始化的全局變量和靜態(tài)變量 */</p><p>  .stack : { } > SARAM PAGE 1 /* 定義軟件堆

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論