【文章內(nèi)容簡介】
謝 經(jīng)過三周的奮戰(zhàn)我的課程設計終于完成了。在沒有做課程設計以前覺得課程設計只是對這半年來所學知識的單純總結,但是通過這次做課程設計發(fā)現(xiàn)自己的看法有點太片面。課程設計不僅是對前面所學知識的一種檢驗,而且也是對自己能力的一種提高。在這次課程設計中也使我們的同學關系更進一步了,同學之間互相幫助,有什么不懂的大家在一起商量,聽聽不同的看法對我們更好的理解知識,所以在這里非常感謝幫助我的同學。在此要感謝我們的指導老師陳老師對我們悉心的指導,感謝老師們給我們的幫助。在設計過程中,我通過查閱大量有關資料,與同學交流經(jīng)驗和自學,并向老師請教等方式,使自己學到了不少知識,也經(jīng)歷了不少艱辛,收獲頗豐。參考文獻[1] 曹昕燕,周鳳臣,【M】.清華大學出版社[2] 劉欲曉,方強,【M】.電子工業(yè)出版社[3] 潘松,(第三版)【M】.科學出版社[4] 趙巖嶺,+:希典出版社,2005[5] :高等教育出版社,2006[6] :高等教育出版社,2003 附錄1:模塊MS清單// 程序名稱:MS// 程序功能:模塊MS,輸入端口CK0、CK1為兩個不同的時鐘信號,來模擬汽車的加速和勻速,JS加速按鍵。// 程序作者:金人佼// 最后修改日期:LIBRARY IEEE。USE 。ENTITY MS IS PORT(CK0:IN STD_LOGIC。 //慢速檔的時鐘信號 CK1:IN STD_LOGIC。 //快速檔的時鐘信號 JS:IN STD_LOGIC。 //換擋按鍵信號 CLK_OUT:OUT STD_LOGIC)。END MS。ARCHITECTURE ONE OF MS ISBEGIN PROCESS(JS, CK0,CK1) BEGIN IF JS=39。039。 THEN CLK_OUT=CK0。 //JS低電平,則為慢速檔 ELSE CLK_OUT=CK1。 //JS高電平,快速檔 END IF。 END PROCESS。END ONE。附錄2:模塊SOUT清單// 程序名稱:SOUT// 程序功能:該模塊實現(xiàn)車行狀態(tài)輸出功能,其中clk為時鐘信號,enable 為啟動使能信號,sto暫停信號, clr為清零信號,st為狀態(tài)信號。// 程序作者:金人佼// 最后修改日期:LIBRARY IEEE。USE 。USE 。ENTITY SOUT IS PORT(CLK:IN STD_LOGIC。 ENABLE:IN STD_LOGIC。 STO :IN STD_LOGIC。 CLR:IN STD_LOGIC。 ST:OUT STD_LOGIC_VECTOR(1 DOWNTO 0))。END SOUT。ARCHITECTURE ONE OF SOUT ISBEGIN PROCESS(CLK,ENABLE ,STO,CLR) VARIABLE CQI:STD_LOGIC_VECTOR(7 DOWNTO 0)。 VARIABLE STATE:STD_LOGIC_VECTOR(1 DOWNTO 0)。 BEGIN IF CLR=39。039。 THEN CQI:=(OTHERS=39。039。)。 //CLR低電平,CQI清零 ELSIF CLK39。EVENT AND CLK=39。139。 THEN //CLK上升沿觸發(fā) IF STO=39。139。 THEN STATE:=00。CQI:=CQI。 //STO高電平時,state賦00態(tài) ELSIF ENABLE =39。139。 THEN //ENABLE高電平,CQI計數(shù)加1 CQI:=CQI+1。 IF CQI=30 THEN STATE:=01。 //CQI=30時,state賦01態(tài)ELSIF CQI30 AND CQI=80 THEN STATE:=10。 //30CQI=80時,state賦10態(tài) ELSE STATE:=11。 //CQI80時,state賦11態(tài) END IF。 END IF。 END IF。ST=STATE。END PROCESS。END ONE。附錄3:模塊PULSE// 程序名稱:PULSE// 程序功能:該模塊實現(xiàn)將時鐘信號5分頻功能。// 程序作者:金人佼// 最后修改日期:LIBRARY IEEE。USE 。USE 。ENTITY PULSE IS PORT(CLK0:IN STD_LOGIC。 FOUT:OUT STD_LOGIC)。END PULSE。ARCHITECTURE ONE OF PULSE ISBEGIN PROCESS(CLK0) VARIABLE CNT:STD_LOGIC_VECTOR(2 DOWNTO 0)。 VARIABLE FULL :STD_LOGIC。 BEGIN IF CLK039。EVENT AND CLK0=39。139。 THEN IF CNT=100 THEN //CNT計數(shù)到5(“100”) CNT:=000 。 //CNT清零 FULL:=39。139。 //FULL高電平 ELSE CNT:=CNT+1。 //否則計數(shù)CNT加1 FULL:=39。039。 //FULL賦低電平 END IF。 END IF。FOUT=FULL。 //FULL為CLK的五分頻信號,賦值給FOUT做輸出信號END PROCESS。END ONE。附錄4:模塊COUNTER// 程序名稱:COUNTER// 程序功能:實現(xiàn)汽車模擬計費功能。clr1為清零信號,si為狀態(tài)信號,c1,c2,c3分別為費用