基于eda的數(shù)字鐘程序設計.doc
《基于eda的數(shù)字鐘程序設計.doc》由會員分享,可在線閱讀,更多相關《基于eda的數(shù)字鐘程序設計.doc(18頁珍藏版)》請在裝配圖網(wǎng)上搜索。
一、課題要求: (1)技術要求:1、掌握多功能數(shù)字鐘的工作原理。 2、應用EDA技術,VHDL語言編寫程序。 3、層次化設計,設計原理框圖。 4,、硬件設計及排版。 (2)功能要求:1、基本功能:能進行正常的時、分、秒計時功能,分別由6個數(shù)碼管顯示24小時、60分鐘、60秒的計數(shù)器顯示。 2、 擴展功能:(1)能夠利用按鍵實現(xiàn)“校時”“校分” “清零”功能。 (2) 能利用揚聲器做整點報時,整點前 五秒短聲,整點長聲。 (3)本人工作:負責軟件部分,,編寫各部分模塊的VHDL程序,并且鎖定引腳,將程序下載到芯片中。 二、設計方案: 原理框圖: 數(shù)字鐘原理框圖 一共有11個小模塊:分頻,片選,按鍵,小時,分,秒,顯示模塊,七段顯示譯碼器,報 時,揚聲,36譯碼器。 左邊第一個是時鐘信號輸入端,50Mhz到分頻模塊。第二個為清零按鍵,第三個為校分按 鍵,第四個為校時按鍵。 右邊第一個為七段顯示譯碼器輸出端,第二個為揚聲器輸出端,第三個為6個數(shù)碼管輸出 端。 中間模塊為數(shù)字鐘的核心,有計時,報時,校時功能。 三、單元模塊設計 1、分頻模塊 該模塊是將時鐘脈沖50Mhz分頻到1000、500和1,分別給報時模塊和及時模塊。 2、秒模塊 仿真圖 該模塊為60進制計數(shù)器,有分頻模塊得到的1hz進行計時,計時輸出為秒的數(shù)值,在計時到59時進位1到co端。當按下s3時,秒清零。 3.、分模塊 仿真圖 該模塊也為60進制計數(shù)器,計時輸出為分的數(shù)值。在EN信號有效且時鐘來時,計數(shù)器加1、在s2按下時,EN使能端有效,實現(xiàn)校分功能。 4、時模塊 仿真圖 該模塊為24進制計數(shù)器,計時輸出為小時的數(shù)值,在EN信號到來時,計數(shù)器加1,在S1按下時,EN信號有效,實現(xiàn)校時功能。 5、片選模塊 仿真圖 該模塊提供數(shù)碼管片選信號。 6、按鍵模塊 仿真圖 該模塊是有幾個門電路組成,把它編寫成一個模塊,到時寫程序方便。該模塊連接幾個按鍵,由按鍵控制。 7、報時模塊 仿真圖 該模塊為整點報時提供控制信號,當59分時,秒為50,52,54,56,58時,Q500輸出“1”;秒為00時,Q1000輸出“1”。這兩個信號經(jīng)過邏輯門實現(xiàn)報時功能。 8、BBB模塊 仿真圖 該模塊對應不同的片選信號送出不同的要顯示的數(shù)據(jù)。 9、36譯碼器模塊 仿真圖 該模塊為36譯碼器,為輸出到數(shù)碼管對應功能。 10、七段譯碼器模塊 仿真圖 該模塊為七段譯碼器,輸出到數(shù)碼管的每一個引腳,可以正確的點亮每一個數(shù)碼管。 11、揚聲模塊 仿真圖 該模塊也為幾個門電路組合,控制著對揚聲器的輸入,當時間到達某一點時,輸出不同的脈沖信號到揚聲器,給予揚聲器信號。 四、頂層模塊設計 程序圖: 總體框圖 頂層文件將上面11個小模塊集合到一起構(gòu)成了總的程序,最終也是將這個頂層文件寫到FPGA芯片中。 五、硬件電路設計 由另一位同學負責,收集好器件,將器件排版在電路板上,并將其焊接成成品。 六、硬件電路安裝及調(diào)試 在EDA中,將頂層文件各個輸入與輸出端口鎖定引腳。 鎖定好引腳后將整個頂層文件下載到FPGA芯片中。 注:在下載時,要注意先安裝USB程序,再設置IDE環(huán)境設置,然后再programmer中選擇自己要的文件,下載時必須先安裝好芯片再接電源,下載成功后,先拔電源,再拔下USB。 下載好以后,用杜邦線將硬件和芯片的引腳連接好,檢查無誤后進行測試。 七、調(diào)試結(jié)果 為了每個模塊的正確性,將一一對每個模塊進行測試。將芯片與硬件連接好,檢查無誤后,打開電源,此時硬件上的數(shù)碼管開始計時,等到秒為59時,下一秒,分為1,秒為00。然后用校時功能按鍵將分校分到59分,此時當秒為50時,揚聲器開始響,并且到整點時,揚聲器持續(xù)響一段時間。按下S3,秒清零。調(diào)試結(jié)束,基本功能能夠計時,并且進位到分和時,擴展功能,按下S2和S3后能夠進行分和時的校時,并且到整點時開始報時。 八、設計中遇到的問題及解決方案 我負責軟件部分,開始在編寫程序時根本無從下手,再找了一些資料后終于對數(shù)字鐘有些了解。用EDA設計每一個模塊,都需要一個一個的去仿真,看程序?qū)Σ粚?,?jīng)常在一些小程序上出現(xiàn)問題。本來有好多門電路,發(fā)現(xiàn)放在頂層文件中比較麻煩,所以將這些門電路組成兩個模塊,按鍵模塊和揚聲模塊,這樣方便頂層文件的編寫。分頻模塊,由于要將50MHz的脈沖分到1000Hz,500Hz,和1Hz,分頻量比較大,不能仿真,只能先改小一下數(shù)據(jù),驗證程序是否正確。36譯碼器部分,本來使用的是38譯碼器,發(fā)現(xiàn)多了2個輸入,有6個數(shù)碼管,但是38譯碼器并不影響輸出。在下載過程,鎖定引腳,發(fā)現(xiàn)芯片上的引腳與硬件上的引腳是反的,數(shù)碼管顯示的是亂碼。當數(shù)字鐘的時分秒順序錯了以后,不需要重新鎖定引腳,只要將對應的杜邦線對調(diào)一下就行了。我們校時用的按鍵是自鎖開關,其實只要改成下拉電阻就可以了。 九、收獲與體會 經(jīng)過兩個星期的數(shù)電課程設計,收獲很大,讓我們自己設計了數(shù)電模型,從軟件和硬件上學到了很多知識。兩個同學一個設計軟件,一個設計硬件,不僅提高了學習能力,還培養(yǎng)了團隊合作能力。我負責的是軟件部分,這學期正好學習了EDA技術,把它應用到了軟件的程序編寫中來。我們設計的是數(shù)字鐘,雖然數(shù)字鐘看起來很簡單,但是要把每個模塊全部搞在一起還是有點難度的。開始經(jīng)過上網(wǎng)及圖書館借書來了解數(shù)字鐘的結(jié)構(gòu)與工作原理,把它每一部分的模塊摸透清楚后,在開始編程,寫入芯片。同時還要把軟件與硬件結(jié)合起來,在各自做各自的工作時還要緊密結(jié)合自己組員的工作,只有兩個人的東西做完后,組合起來才算真正的完成。 首先明確好數(shù)字鐘的功能,基本功能:能進行正常的時、分、秒計時功能,分別由6個數(shù)碼管顯示24小時、60分鐘、60秒的計數(shù)器顯示。擴展功能:(1)能夠利用按鍵實現(xiàn)“校時”“校分”“清零”功能。(2) 能利用揚聲器做整點報時,整點前五秒短聲,整點長聲。然后設計好總的原理圖,將功能全部覆蓋進去,設計每個模塊,用EDA中的VHDL編寫程序,然后再仿真,根據(jù)仿真圖檢測自己的程序是否正確。當每個模塊在電腦中仿真無誤時,編寫頂層文件,把各個小模塊連接到一起,然后將整個程序畫出原理框圖,與自己預測的相比較。 當軟件做好后,用下載線將自己寫的程序?qū)戇M芯片中,不過此時要注意先連接好線才能開電源,當下載后,要先關電源,再拔USB接口。下載后與同組同學用杜邦線連接開始測試,第一次先將整個程序?qū)懭?,發(fā)現(xiàn)沒有正確顯示,然后一個一個模塊檢測后,發(fā)現(xiàn)了問題,終于數(shù)字鐘做好了,基本功能與擴展功能都出來了。 這次課程設計后,軟件方面有著明顯的提高,而且合作啊能力也提高了,作品完成的還是很好的。首先要感謝老師的細心教導,讓我學習到了好多知識,從硬件到軟件,不僅僅是知識上,還有能力上,還要感謝同組同學,沒有他的硬件,這次數(shù)字鐘也完不成。這次收獲還是很大的,自己的努力與汗水終于沒有出,總結(jié)這次課程設計的經(jīng)驗,在以后的課程設計中能夠更好的發(fā)揮! 十、參考文獻: 1、《EDA技術與VHDL》 清華大學出版社 2、《數(shù)字系統(tǒng)設計與Verilog HDL(第三版)》 王金明編著 3、《EDA技術與應用(第2版)》 江國強編著 4、《EDA技術實用教程》 科學出版社- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關 鍵 詞:
- 基于 eda 數(shù)字 程序設計
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權(quán),請勿作他用。
鏈接地址:http://m.zhongcaozhi.com.cn/p-6620312.html