專(zhuān)業(yè):通信工程 學(xué)號(hào):__姓名:龔易乾___指導(dǎo)老師:
電子與信息工程學(xué)院
2023年2月
有任何疑問(wèn)可以聯(lián)系郵箱:codealan@qq.com
項(xiàng)目倉(cāng)庫(kù)地址:https://github.com/CodeAlanqian/e-clock github倉(cāng)庫(kù)地址
綜合設(shè)計(jì)實(shí)驗(yàn)
實(shí)驗(yàn)?zāi)康?/h3>
熟練掌握Quartus等EDA設(shè)計(jì)與仿真工具,掌握多路選擇器、N進(jìn)制計(jì)數(shù)器、顯示譯碼電路、開(kāi)關(guān)電路、按鍵等電路的設(shè)計(jì)和調(diào)試方法。加深對(duì)《數(shù)字電子技術(shù)基礎(chǔ)》課程內(nèi)容的理解,逐步提高電路應(yīng)用能力、設(shè)計(jì)能力、分析評(píng)價(jià)能力。
實(shí)驗(yàn)任務(wù)
設(shè)計(jì)一個(gè)多功能數(shù)字鐘,要求如下:
1、準(zhǔn)確計(jì)時(shí),以數(shù)字形式顯示時(shí)、分、秒;
2、12/24小時(shí)切換功能;
3、時(shí)、分、秒的校時(shí)功能;
4、秒表功能,顯示分、秒、百分之一秒,暫停、復(fù)位功能;
5、時(shí)鐘與秒表切換。
準(zhǔn)備工作
1、了解FPGA開(kāi)發(fā)板的資源。FPGA開(kāi)發(fā)板上含有6位數(shù)碼管,8個(gè)按鍵、8個(gè)LED燈
數(shù)碼管
每位數(shù)碼管的8段字符
分析電路圖可知:數(shù)碼管有6位片選信號(hào)和8位段選信號(hào),因此要搭建片選掃描電路,利用視覺(jué)暫留現(xiàn)象,驅(qū)動(dòng)數(shù)碼管顯示。共陽(yáng)電路,采用7474譯碼器。7447的主要功能是輸出低電平驅(qū)動(dòng)的顯示碼,用以推動(dòng)共陽(yáng)極7段LED 數(shù)碼管顯示相應(yīng)的數(shù)字。
按鍵 LED燈
按鍵未按下時(shí)為高電平,按下時(shí)為低電平 LED燈為低電平使能,共陽(yáng)電路
2、預(yù)想功能表
按鍵未按下時(shí)LED均不亮,按下某按鍵后,對(duì)應(yīng)的LED點(diǎn)亮。默認(rèn)為不亮
按鍵 | 未按下(1) | 按下(0) | 功能 |
---|---|---|---|
BUT1 | 24小時(shí)制 | 12小時(shí)制 | 切換12/24小時(shí) |
BUT2 | 停止校時(shí) | 時(shí)校時(shí) | 時(shí)針校時(shí) |
BUT3 | 停止校時(shí) | 分校時(shí) | 分針校時(shí) |
BUT4 | 停止校時(shí) | 秒校時(shí) | 秒針校時(shí) |
BUT5 | 時(shí)鐘 | 秒表 | 切換時(shí)鐘/秒表模式 |
BUT6 | 秒表暫停 | 秒表計(jì)時(shí) | 秒表暫停/計(jì)時(shí) |
BUT7 | 無(wú) | 秒表復(fù)位 | 秒表復(fù)位 |
BUT8 | 無(wú) | 無(wú) | 無(wú) |
3、電路框圖
設(shè)計(jì)原理、電路圖與仿真
考慮到電路圖會(huì)比較復(fù)雜,所以我基本使用總線的接線方法去畫(huà)圖
1、先搭建基本的分頻器
100進(jìn)制計(jì)數(shù)器(兩個(gè)74160)、25進(jìn)制計(jì)數(shù)器、2進(jìn)制計(jì)數(shù)器
100進(jìn)制
25進(jìn)制
利用D觸發(fā)器搭建T’觸發(fā)器構(gòu)成2進(jìn)制計(jì)數(shù)器
2、搭建信號(hào)發(fā)生器
原始輸入時(shí)鐘信號(hào)為50MHz,利用計(jì)數(shù)器分頻
1Hz信號(hào)50M/(100100100252) 用于產(chǎn)生秒信號(hào)
2Hz信號(hào) 用于產(chǎn)生校時(shí)信號(hào)
100Hz信號(hào) 50M/(10010025*2)
用于按鍵掃描頻率和產(chǎn)生秒表信號(hào)
1250Hz 用于數(shù)碼管片選掃描
3、時(shí)鐘
秒針計(jì)時(shí)
輸入信號(hào):1Hz時(shí)鐘信號(hào),RD復(fù)位信號(hào)
輸出信號(hào): 秒信號(hào)高位(SH[3…0])顯示到第5位數(shù)碼管
秒信號(hào)低位(SL[3…0]) 顯示到第6位數(shù)碼管
SC為秒針進(jìn)位信號(hào)
分針計(jì)時(shí)器仿真結(jié)果
分針計(jì)時(shí)
輸入信號(hào): 秒針計(jì)時(shí)器進(jìn)位信號(hào),RD復(fù)位信號(hào)
輸出信號(hào): 分信號(hào)高位(MH[3…0])顯示到第3位數(shù)碼管
分信號(hào)低位(ML[3…0]) 顯示到第4位數(shù)碼管
MC為分針進(jìn)位信號(hào)
分鐘計(jì)時(shí)器仿真結(jié)果
24進(jìn)制時(shí)鐘
輸入信號(hào):分針計(jì)時(shí)器進(jìn)位信號(hào),RD復(fù)位信號(hào)
輸出信號(hào): 時(shí)信號(hào)高位(HH[3…0])顯示到第1位數(shù)碼管
時(shí)信號(hào)低位(HL[3…0]) 顯示到第2位數(shù)碼管
HC為時(shí)針進(jìn)位信號(hào)
24進(jìn)制時(shí)針計(jì)時(shí)器仿真結(jié)果
12進(jìn)制時(shí)鐘
輸入信號(hào):分針計(jì)時(shí)器進(jìn)位信號(hào),RD復(fù)位信號(hào)
輸出信號(hào): 時(shí)信號(hào)高位(HH[3…0])顯示到第1位數(shù)碼管
時(shí)信號(hào)低位(HL[3…0]) 顯示到第2位數(shù)碼管
HC為時(shí)針進(jìn)位信號(hào)
12進(jìn)制時(shí)針計(jì)時(shí)器仿真結(jié)果
4、秒表
分秒信號(hào)(100Hz)
5、按鍵讀取電路
消抖:以100Hz的頻率掃描端口,如果0.03ms內(nèi)采樣結(jié)果均相同,則認(rèn)為按下/松開(kāi)按鍵,并保存到由JK觸發(fā)器構(gòu)成的T’觸發(fā)器中。
按鍵仿真結(jié)果
按鍵掃描電路
將8個(gè)按鍵的掃描結(jié)果封裝
6**、譯碼顯示**
數(shù)碼管片選電路(順序脈沖)
由74161與74138譯碼模塊構(gòu)成,低電平使能,S為0時(shí),被選中
不斷重復(fù)掃描,達(dá)到連續(xù)顯示的效果
![]() |
順序脈沖仿真結(jié)果
7447譯碼器(段選電路)
封裝成總線的形式,方便輸入輸出
7、LED驅(qū)動(dòng)電路
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-gcXWPzJ8-1684859853659)(null)]
當(dāng)L為1時(shí),LED點(diǎn)亮
8、模式轉(zhuǎn)換器
二選一模式轉(zhuǎn)換器(用于切換第3-6位數(shù)碼管的時(shí)鐘、秒表顯示)
K為輸入信號(hào),當(dāng)K為1時(shí),H24輸出,當(dāng)K為0時(shí),H12輸出
三選一模式轉(zhuǎn)換器(用于切換第1、2位數(shù)碼管的12/24進(jìn)制、秒表顯示)
由4片74153芯片構(gòu)成(每片都只使用了一個(gè)4選1數(shù)據(jù)選擇器)
當(dāng)K0=K4等于1時(shí),輸出H24;當(dāng)K4=1,K0=0時(shí),輸出H12
其他情況均輸出M60
顯示片選
總電路:
調(diào)試、結(jié)論
設(shè)置引腳、編譯、下載至FPGA開(kāi)發(fā)板。測(cè)試結(jié)果符合預(yù)期。
實(shí)驗(yàn)過(guò)程的問(wèn)題與思考
問(wèn)題:
1、設(shè)計(jì)【12翻1】計(jì)時(shí)器時(shí),從0開(kāi)始或從13結(jié)束,解決方法:預(yù)置數(shù)為1,計(jì)數(shù)到12時(shí)復(fù)位;
2、Modelsim無(wú)法仿真,沒(méi)有正確設(shè)置路徑;
3、7447譯碼器6和9顯示不全,最后發(fā)現(xiàn)是該譯碼器的特性,使用7448譯碼器更好;
4、做12/24進(jìn)制時(shí)鐘切換時(shí)沒(méi)有考慮到秒表,只做了二選一模塊,后來(lái)做四選一模塊得以解決,實(shí)現(xiàn)12/24/秒表切換
5、有時(shí)時(shí)鐘的頻率不對(duì),先不用管,后來(lái)隨著新功能的加入便正常了;
6、剛開(kāi)始時(shí)考慮不周,模塊化低。
心得體會(huì):
Quartus是一個(gè)十分重要的工具,它可以幫助我們完成諸如邏輯電路設(shè)計(jì)、仿真、驗(yàn)證、綜合等一系列任務(wù),提高了我們的設(shè)計(jì)效率和精度。
1、設(shè)計(jì)前的準(zhǔn)備十分重要。在進(jìn)行設(shè)計(jì)前,需要對(duì)所要設(shè)計(jì)的電路進(jìn)行充分的思考和分析,確定各個(gè)模塊的功能、輸入輸出等信息,為后續(xù)的設(shè)計(jì)奠定基礎(chǔ)。
2、畫(huà)電路圖時(shí)需要仔細(xì)。注意電路的正確性和邏輯的完整性,以避免在后續(xù)的仿真和驗(yàn)證過(guò)程中出現(xiàn)問(wèn)題。
3、仿真和驗(yàn)證非常重要。在完成設(shè)計(jì)后,需要進(jìn)行仿真和驗(yàn)證,以檢驗(yàn)電路的正確性和穩(wěn)定性。通過(guò)仿真和驗(yàn)證可以發(fā)現(xiàn)并修正電路中的問(wèn)題,提高電路的可靠性和魯棒性。
4、熟練掌握Quartus的使用技巧可以提高設(shè)計(jì)的效率和精度。
5、這是一個(gè)較大的設(shè)計(jì)實(shí)驗(yàn),能順利完成我很有成就感。
6、采用模塊化設(shè)計(jì),結(jié)構(gòu)清晰,便于畫(huà)圖、修改與閱讀。在設(shè)計(jì)過(guò)程中,加深了我對(duì)《數(shù)字電子技術(shù)基礎(chǔ)》課程內(nèi)容的理解,逐步提高電路應(yīng)用能力、設(shè)計(jì)能力、分析評(píng)價(jià)能力。
七、 參考文獻(xiàn)
[1]《數(shù)字電子技術(shù)基礎(chǔ)(第5版)》
[2]《EDA設(shè)計(jì) 基于Quartus的多功能數(shù)字時(shí)鐘設(shè)計(jì)》文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-531821.html
【后記】
驗(yàn)收時(shí)發(fā)現(xiàn)24小時(shí)制的12時(shí)在12小時(shí)制應(yīng)該為12時(shí),不該為0時(shí)
學(xué)長(zhǎng)只能幫你們到這了文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-531821.html
到了這里,關(guān)于FPGA多功能數(shù)字時(shí)鐘 基于Quartus實(shí)現(xiàn)設(shè)計(jì)與仿真 華南師范大學(xué)數(shù)電綜設(shè)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!