【正文】
總之,畢業(yè)設計是一個理論聯(lián)系實際、理論應用于實踐的過程,在這個過程中,需要自己獨立搜索、整理、分析資料,認真研究,攻克難題,并按規(guī)范完成幾萬字的文檔寫作。 回顧 畢業(yè)設計中這幾個月的學習 過程 , 我 覺得受益匪 淺。 在此用 CPLD 構(gòu)成數(shù)字單穩(wěn),如圖 13 所示,實現(xiàn)了“雙電壓”驅(qū)動電路。 5. 在 Programmer 視窗里點擊 Program 或 Configure 的按紐,如此 MaxPlus II 就會將配置文件通過 Download Cable 對 FPGA芯片進行配置。 基于 CPLD 的步進電機控制系統(tǒng) 18 配置 步 驟如下: 1. 先將我們的 VHDL code 用 MaxPlus II pile , Compiler 會自動產(chǎn)生生出一個 .sof 的文件 (要配置到 FLEX 系列的芯片的文件格式 )或 .pof 文件 (MAX 系列的芯片的文件格式 )。 when t64000 else 39。 end if。139。 end。 use 。 由仿真圖形中可以發(fā)現(xiàn) , 由外部輸入按鍵的K EY 1 信號前后噪聲都被消除掉 , 如DLY OUT所示 。 同理若是D 0 為 1, 且D 1 為 0, 結(jié)果S =0, R =0, DLY OUT將維持先前的輸出不變 。 當 D 0 為 1, 且D 1 也為 1 時 , 結(jié)果S =1, R =0, DLY OUT才會輸出 0。 彈跳消除模塊的設計塊采用原理圖設計輸入形式 , 其原理圖如圖 10 所示 。 因 系統(tǒng) 采用按鍵構(gòu)成觸點輸入回路 , 通過鍵 的閉合或斷開 , 以電平的形式反映 工作狀態(tài) 。 End if。 when 2=w=11111011。 then case twei is 只顯示三 位數(shù) when 0=w=11111110。 End process。 then if twei=8 then twei=0。 End process。clk2=39。 then if tt=100001 then tt=0。 End process。 When 8=q=10000000。 When 4=q=10011001。 Process (DISP) 共陽數(shù)碼管顯示 Begin Case DISP is When 0=q=11000000。 else hh=hh+1。 elsif clktt39。 基于 CPLD 的步進電機控制系統(tǒng) 15 end process。 clktt=39。 then if sh=9 then sh=0。 then sh=0。 end if。 else sl=sl+1。139。039。 signal clkts:std_logic。 signal hh:integer range 0 to 15。 q:out std_logic_vector(7 downto 0))。 Use 。 End。 then data=200。039。 20step elsif key3=39。 end process。039。139。139。 end if。039。139。 end if。 t 控制步進電機的轉(zhuǎn)速 else t=0。 elsif clk16m39。039。 signal data:integer range 0 to 255。 End。 Entity square1 is port (clk16m:in std_logic。 波形信號發(fā)生 模塊 SQUARE 模塊 輸出脈沖信號 至電機控制模塊 作步進脈沖 , 決定步進電機的轉(zhuǎn)步, KEY2, KEY3,KEY4, KEY5 分別為 20 步, 40 步, 70 步, 100 步 。139。 end if。 then y=a。event and clk1=39。 end case。b=0011。a=0011。 then case state is when st0=state=st1。 then state=st0。 type mystate is (st0,st1,st2,st3)。 End。 Use 。采用了電路行為描述手段,分層設計的方法。 整個電路由 波形信號發(fā)生器 ( SQUARE) ,步進電機控制器( MYBJDJ) ,數(shù)碼 動態(tài)顯示 ( XIANSHI) ,步進電機方向控制器 ( MYBJDJDIR) 及鍵盤去抖動電路( JPQDD) 五 個模塊 組成。 5 設計仿真 仿真包括邏輯仿真和時序仿真 。 1 設計準備 設計準備是為了選擇合適的CPLD器件 。 5 設計庫 存放編譯過的設計單元 (包括實體說明、結(jié)構(gòu)體、配置說明、程序包等 ), 庫中的內(nèi)容可用作VHDL描述的資源 , 接受其設計單元的訪問 。 2 結(jié)構(gòu)體 描述實體內(nèi)部的具體細節(jié) , 包括實體的硬件結(jié)構(gòu)、元件之間的互連關系、實體所完成的邏輯功能以及數(shù)據(jù)的傳輸變換等方面 。 VHDL的基本結(jié)構(gòu) VHDL語言的描述對象稱為實體 (ENTI TY ), 實體可以代表任意簡單或復雜的系統(tǒng) , 比如簡單如一個門電路 , 復雜如一塊電路板或設計模塊 ——— 頂層的系統(tǒng)模塊是頂級實體 , 低層次的設計模塊是低級實體 。 在細化的過程中 , 對電路結(jié)構(gòu)清楚的模塊可采用結(jié)構(gòu)描述 : 對采用什么電路結(jié)構(gòu)不確定的模塊可采用行為描述 。VHDL語言成為十分流行的硬件描述工具 。它是美國國防部在 80年代初研究VHSIC計劃時組織開發(fā)的并成功用于軍方的設計項目 。 通過鍵盤預置了轉(zhuǎn)動的步數(shù) ,CPLD完成一定的邏輯轉(zhuǎn)換功能 ,并將邏輯信號饋送給功率放大器 ,最后由功率放大器輸出達到一定功率的邏輯信號來驅(qū)動步進電動機 轉(zhuǎn)動指定的步數(shù) 。 3)細分驅(qū)動 ,又叫微步驅(qū)動,它是將繞組中的電流細分,用階梯波供電代替常規(guī)的矩形波供電??梢姡瑢︱?qū)動電路的基本要求是:能改善電流波形,有續(xù)流功能,電路簡單,可靠,功耗低,效率高,有時 還要求有細分功能,即將常規(guī)的矩形波供電方式改為階梯波供電方式。 (6)步進電機的結(jié)構(gòu)簡單,可靠性高,幾乎不需要太多的保養(yǎng),使用壽命長。 (2)可以數(shù)字脈沖控制信號做開路方式控制,避免使用復雜的反饋控制電路,降低系統(tǒng)制作成本。 步進 電機是一種以數(shù)字脈沖信號 控制的電機裝置,將相對的信號轉(zhuǎn)變?yōu)檩敵龅男D(zhuǎn)角度,每一個基本旋轉(zhuǎn)角度稱為 一個步進 角度,此為步進電機名稱的由來,因此它可以做精確的定位。 基于 CPLD 的步進電機控制系統(tǒng) 4 ( 6)開發(fā)周期短。 ( 5)易學易用,開發(fā)便捷。由于是并行工作,它的任一初始輸入腳都可用做類似于 MCU的中斷監(jiān)測引腳,且反應 上 速度僅為納秒級。這族器件盡管在功能開發(fā)上是通過 EDA軟件實現(xiàn)的。 ( 2) 高速。它無須編程高壓,在 TTL電平下隨時可進行在線編程,并可進行所謂菊花鏈式 多片串行編程。 CPLD及其應用特點 與傳統(tǒng)的電路設計方法相比, CPLD的 優(yōu)勢 是多方面的,可歸納如下: ( 1)編程方式簡便先進。 EDA技術的出現(xiàn)改變了傳統(tǒng)設計時多采用原理圖輸入的設計模式 ,而是采用 HDL(Hardware Description Language)作為設計輸入。 CPLD 器件由于開發(fā)方式靈 活、功能擴展方便、集成度較高 , 在各類設計中占據(jù)了越來越重要的地位。 關鍵詞: CPLD/FPGA 步進電機 VHDL 基于 CPLD 的步進電機控制系統(tǒng) 2 The control system of stepper motor based on CPLD Abstract This paper introduces a kind of control system of stepper motor based upon CPLD. As the core of the device, CPLD implements the most logic functions and minimizes the number of using discret