![直流電機VHDL源代碼_第1頁](http://file4.renrendoc.com/view/da6ca7e1c32ff2f1c5aabff9b785b218/da6ca7e1c32ff2f1c5aabff9b785b2181.gif)
![直流電機VHDL源代碼_第2頁](http://file4.renrendoc.com/view/da6ca7e1c32ff2f1c5aabff9b785b218/da6ca7e1c32ff2f1c5aabff9b785b2182.gif)
![直流電機VHDL源代碼_第3頁](http://file4.renrendoc.com/view/da6ca7e1c32ff2f1c5aabff9b785b218/da6ca7e1c32ff2f1c5aabff9b785b2183.gif)
![直流電機VHDL源代碼_第4頁](http://file4.renrendoc.com/view/da6ca7e1c32ff2f1c5aabff9b785b218/da6ca7e1c32ff2f1c5aabff9b785b2184.gif)
![直流電機VHDL源代碼_第5頁](http://file4.renrendoc.com/view/da6ca7e1c32ff2f1c5aabff9b785b218/da6ca7e1c32ff2f1c5aabff9b785b2185.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
直流電機VHDL源代碼
LIBRARYIEEE;
USEIEEE.Std_
logic
_1164.ALL;
USEIEEE.Std_logic_unsigned.All;
USEIEEE.Std_logic_arith.All;
EN
TI
TY
Dc
countIS
Port(
Clk:INSTD_LOGIC;
AI
:INSTD_LOGIC_VECTOR(3DOWNTO0);
CO:OutSTD_LOGIC_VECTOR(3DOWNTO0);
Pulse:INSTD_LOGIC;
DriverA,DriverB:OUTSTD_LOGIC;
S:OUTSTD_LOGIC_VECTOR(6DOWNTO0);
P:OUTSTD_LOGIC_VECTOR(5DOWNTO0);
Sp:OutSTD_LOGIC);
ENDDccount;
ARCHI
TE
CTUREAOFDccountIS
SIGNALF:STD_LOGIC_VECTOR(5Downto0);
SIGNALF_hz:STD_LOGIC;
SIGNALOSC:STD_LOGIC;
SIGNALOSC1:STD_LOGIC;
SIGNALC:STD_LOGIC_VECTOR(3DOWNTO0);
SIGNALA:STD_LOGIC_VECTOR(3DOWNTO0);
SIGNALCODE:STD_LOGIC_VECTOR(2DOWNTO0);
SIGNALBcd:STD_LOGIC_VECTOR(23Downto0);
SIGNALCOUNT:STD_LOGIC_VECTOR(23Downto0);
SIGNALSUM:STD_LOGIC_VECTOR(4DOWNTO0);
SIGNALD:STD_LOGIC_VECTOR(3DOWNTO0):=“0000”;
SIGNALInd_coil:STD_LOGIC_VECTOR(3Downto0):=“0001”;
SIGNALHz:STD_LOGIC;
SIGNALSpo:STD_LOGIC;
SIGNALSW:STD_LOGIC;
SIGNALKEY:STD_LOGIC;
SIGNALDRA,DRB:STD_LOGIC;
BEGIN
DRIVERA《=DRA;
DRIVERB《=DRB;
P(5Downto0)《=F(5Downto0);
CO(3DOWNTO0)《=C(3DOWNTO0);
A(3DOWNTO0)《=AI(3DOWNTO0);
SP《=SPO;
-----------------Div------------------------
PROCESS(OSC)
VARIABLED_ff:STD_LOGIC_VECTOR(20Downto0);
VARIABLEDELAY:STD_LOGIC_VECTOR(23DOWNTO0);
BEGIN
WAITUNTILClk=‘’1‘’;
IFD_ff(20Downto0)》=2E6THEN
D_ff(20Downto0):=“000000000000000000000”;
ELSE
D_ff(20Downto0):=D_ff+1;
ENDIF;
F_hz《=NotD_ff(6);
OSC《=NotD_ff(10);
OSC1《=NotD_ff(17);
IFDELAY》=500000THEN
DELAY:=“000000000000000000000000”;HZ《=NOTHz;
ELSEDELAY:=DELAY+1;
ENDIF;
ENDPROCESS;
----------------------------------------------
PROCESS(F_HZ,OSC,OSC1,HZ,PULSE)
VARIABLEB:STD_LOGIC;
VARIABLEINT:STD_LOGIC;
VARIABLEData:STD_LOGIC_VECTOR(3DOWNTO0);
VARIABLEUP:STD_LOGIC_VECTOR(2DOWNTO0);
VARIABLEST:STD_LOGIC_VECTOR(2DOWNTO0);
VARIABLESeq:STD_LOGIC_VECTOR(1DOWNTO0);
VARIABLESound:STD_LOGIC_VECTOR(1DOWNTO0);
VARIABLESTOP:STD_LOGIC;
VARIABLEDirection:STD_LOGIC;
BEGIN
---------------7segS
can
-------------------------------
IF(F_HZ=‘’1‘’ANDF_HZ‘’EVENT)THEN
IFST(2DOWNTO0)=“101”THEN
ST(2DOWNTO0):=“000”;
ELSEST(2DOWNTO0):=ST(2DOWNTO0)+1;
ENDIF;
ENDIF;
-----------------------------------------------
IF(OSC=‘’1‘’AndOSC‘’EVENT)THEN
IfA=“1111”Then
IFSeq=“11”ThenSeq:=“00”;
ElseSeq:=Seq+1;
EndIf;
ElseSeq:=Seq;
EndIf;
IFSeq=“00”ThenC(3DOWNTO0)《=“1110”;
ElsifSeq=“01”ThenC(3DOWNTO0)《=“1101”;
ElsifSeq=“10”ThenC(3DOWNTO0)《=“1011”;
ElsifSeq=“11”ThenC(3DOWNTO0)《=“0111”;
EndIf;
EndIf;
IFA=“1111”THENINT:=‘’0‘’;
ELSEINT:=‘’1‘’;
ENDIF;
IF(HZ‘’EVENTANDHZ=‘’1‘’)THEN
IFSTOP=‘’1‘’THENUP:=UP+1;
ELSEUP:=“000”;
ENDIF;
ENDIF;
IFKEY=‘’1‘’ANDCOUNT/=0THEN
IFDIRECTION=‘’0‘’THENDRA《=‘’1‘’;DRB《=‘’0‘’;STOP:=‘’0‘’;
ELSEDRA《=‘’0‘’;DRB《=‘’1‘’;STOP:=‘’0‘’;
ENDIF;
ELSIFKEY=‘’1‘’ANDCOUNT=0THENSTOP:=‘’1‘’;
ELSIFSTOP=‘’1‘’ANDUP《“110”THENDRA《=NOTDRA;DRB《=NOTDRB;
ELSEDRA《=‘’0‘’;DRB《=‘’0‘’;STOP:=‘’0‘’;
ENDIF;
IF(OSC1‘’EVENTANDOSC1=‘’1‘’)THENB:=(INTAnd(BAndINT));
----------------DirectionCho
ic
e-----------------------
IFSW=‘’0‘’ANDB=‘’1‘’ANDData(3DOWNTO0)=“1010”THEN
BCD(23DOWNTO0)《=BCD(23DOWNTO0);B:=‘’0‘’;Direction:=‘’1‘’;
ELSIFSW=‘’0‘’ANDB=‘’1‘’ANDData(3DOWNTO0)=“1011”THEN
BCD(23DOWNTO0)《=BCD(23DOWNTO0);B:=‘’0‘’;Direction:=‘’0‘’;
------------------KEYLOCKON/OFF------------------------------------
ELSIFB=‘’1‘’ANDData(3DOWNTO0)=“1100”THEN
BCD《=BCD;B:=‘’0‘’;SW《=NOTSW;
-------------------B
AC
K-------------------------------
ELSIFSW=‘’0‘’ANDB=‘’1‘’ANDData(3DOWNTO0)=“1101”THEN
BCD(23DOWNTO0)《=(“0000”&Bcd(23Downto4));B:=‘’0‘’;
-------------------CLEAR---------------------------------
ELSIFB=‘’1‘’ANDData(3DOWNTO0)=“1110”THEN
BCD《=“000000000000000000000000”;B:=‘’0‘’;SW《=‘’0‘’;
------------------DOWNCOUNT0------------------------------------
ELSIFBCD=0ANDKEY=‘’1‘’THENSW《=‘’0‘’;KEY《=‘’0‘’;BCD《=BCD;
------------------------------------------------------------------
ELSIFSW=‘’1‘’ANDKEY=‘’1‘’ANDDATA(3DOWNTO0)/=“1110”THENBCD《=COUNT;
ELSIFSW=‘’1‘’ANDDATA(3DOWNTO0)=“1110”THENSW《=‘’0‘’;
BCD《=“000000000000000000000000”;KEY《=‘’0‘’;
-------------------ENTER------------------------------
ELSIFSW=‘’0‘’ANDB=‘’1‘’ANDData(3DOWNTO0)=“1111”ANDBCD/=0THEN
B:=‘’0‘’;SW《=‘’1‘’;KEY《=‘’1‘’;
ELSIFSW=‘’0‘’ANDB=‘’1‘’ANDData(3DOWNTO0)=“1111”ANDBCD=0THEN
BCD《=BCD;B:=‘’0‘’;SW《=‘’0‘’;KEY《=‘’0‘’;
----------------------NUMBERSHIFT---------------------------
ELSIFSW=‘’0‘’ANDB=‘’1‘’THENBcd(23Downto0)《=Bcd(19Downto0)&DATA(3DOWNTO0);B:=‘’0‘’;
ElsifINT=‘’0‘’ThenBcd《=Bcd;
B:=‘’1‘’;
ENDIF;
ENDIF;
------------------------------------------------------
SUM(1DOWNTO0)《=Seq;
Sum(4Downto2)《=Code;
---------------------SOUND-----------------------------
If(Osc‘’EventAndOsc=‘’1‘’)Then
IfINT=‘’1‘’ANDSW=‘’0‘’ThenSound:=Sound+1;Spo《=Sound(1);
ElseSpo《=‘’0‘’;
EndIf;
EndIf;
-------------------------------------------------------
---------------------------DOWNCOUNT--------------------
IFSW=‘’0‘’THENCOUNT《=BCD;
ELSE
If(PULSE=‘’1‘’AndPULSE‘’EVENT)THEN
IFKEY=‘’1‘’ANDCOUNT/=0THEN
----------------------------1---------------------------------------------------
IFCOUNT(3DOWNTO0)=0ANDCOUNT(23DOWNTO4)》=1THEN
COUNT(3DOWNTO0)《=“1001”;
ELSECOUNT(3DOWNTO0)《=COUNT(3DOWNTO0)-1;
ENDIF;
----------------------------2---------------------------------------------------------
IFCOUNT(7DOWNTO4)=0ANDCOUNT(23DOWNTO8)》=1ANDCOUNT(3DOWNTO0)=0THEN
COUNT(7DOWNTO4)《=“1001”;
ELSIFCOUNT(3DOWNTO0)=0ANDCOUNT(23DOWNTO4)》=1THEN
COUNT(7DOWNTO4)《=COUNT(7DOWNTO4)-1;
ENDIF;
----------------------------3-------------------------------------------------------
IFCOUNT(11DOWNTO8)=0ANDCOUNT(23DOWNTO12)》=1ANDCOUNT(7DOWNTO0)=0THEN
COUNT(11DOWNTO8)《=“1001”;
ELSIFCOUNT(7DOWNTO0)=0ANDCOUNT(23DOWNTO8)》=1THEN
COUNT(11DOWNTO8)《=COUNT(11DOWNTO8)-1;
ENDIF;
---------------------------4--------------------------------------------------------------
IFCOUNT(15DOWNTO12)=0ANDCOUNT(23DOWNTO16)》=1ANDCOUNT(11DOWNTO0)=0THEN
COUNT(15DOWNTO12)《=“1001”;
ELSIFCOUNT(11DOWNTO8)=0ANDCOUNT(23DOWNTO12)》=1ANDCOUNT(7DOWNTO0)=0THEN
COUNT(15DOWNTO12)《=COUNT(15DOWNTO12)-1;
ENDIF;
-------------------------5------------------------------------------------------------
IFCOUNT(19DOWNTO16)=0ANDCOUNT(23DOWNTO20)》=1ANDCOUNT(15DOWNTO0)=0THEN
COUNT(19DOWNTO16)《=“1001”;
ELSIFCOUNT(15DOWNTO12)=0ANDCOUNT(23DOWNTO16)》=1ANDCOUNT(11DOWNTO0)=0THEN
COUNT(19DOWNTO16)《=COUNT(19DOWNTO16)-1;
ENDIF;
-------------------------6-------------------------------------------------
IFCOUNT(23DOWNTO20)=0THEN
COUNT(23DOWNTO20)《=“0000”;
ELSIFCOUNT(19DOWNTO16)=0ANDCOUNT(23DOWNTO20)》=1ANDCOUNT(15DOWNTO0)=0THEN
COUNT(23DOWNTO20)《=COUNT(23DOWNTO20)-1;
ENDIF;
ENDIF;
ENDIF;
ENDIF;
------------------7segScan---------------------------
CASESTIS--?@潮
WHEN“000”=》D(3DOWNTO0)《=Bcd(3DOWNTO0);F(5Downto0)《=“111110”;
WHEN“001”=》D(3DOWNTO0)《=Bcd(7DOWNTO4);F(5Downto0)《=“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球工業(yè)光學坐標測量機行業(yè)調研及趨勢分析報告
- 2025年全球及中國化療注藥泵行業(yè)頭部企業(yè)市場占有率及排名調研報告
- 水資源保護與管理項目合同
- 辦公室復印機租賃合同
- 工業(yè)廢棄物處理服務效果評估合同
- 防腐材料采購合同
- 2025年封底漆項目可行性研究報告
- 2025年桌巾項目可行性研究報告
- 哈爾濱污水處理設備項目可行性研究報告范文參考
- 2025年鋼衣架項目可行性研究報告
- (2024)河南省公務員考試《行測》真題及答案解析
- 湖北省十一校2024-2025學年高三上學期第一次聯(lián)考化學試題 含解析
- 醫(yī)療保險結算與審核制度
- 圍城讀書分享課件
- 2025年河北省單招語文模擬測試二(原卷版)
- 工作計劃 2025年度醫(yī)院工作計劃
- GB 21258-2024燃煤發(fā)電機組單位產品能源消耗限額
- 2024年全國各地中考試題分類匯編:古詩詞閱讀
- 農產品質量評估與分級
- 社區(qū)成人血脂管理中國專家共識(2024年)
- 信息科技重大版 七年級上冊 互聯(lián)網應用與創(chuàng)新 第1單元 單元教學設計 互聯(lián)網時代
評論
0/150
提交評論