日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

flash数字时钟_数字电路设计在嵌入式中的应用

發布時間:2025/3/19 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 flash数字时钟_数字电路设计在嵌入式中的应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊藍字了解開學問題

數字電路作為一門專業基礎課,除了介紹數字電路的理論知識外,更需要通過配套的實驗平臺將理論知識和實踐環節相結合,培養學生的動手能力和實踐創新能力。為此,自主開發了基于 FPGA 的數字電路“口袋實驗室”。該“口袋實驗室”基于目前流行的?FPGA 芯片開發,已經實際應用于數字電路教學實踐中。

1 總體設計

“口袋實驗室”的電路包括電源、FPGA、下載電路、數碼管、VGA 接口、撥碼開關、按鍵、LED 燈和雙排針擴展接口。其總體框圖見圖 1,實物圖見圖 2。

圖 1 系統總體框圖

圖 2 系統實物圖

設計中預留了 30 個擴展接口,由雙排針引出,其中 24 個是 FPGA?的通用 I/O,3 個 3.3 V 引腳和 3 個地引腳。串行通信采用 CH340G 串口芯片,用于 FPGA 和 PC 機之間的通信。“口袋實驗室”擁有 2 個 4 位共陽極數碼管、1 個無源蜂鳴器、1 個八位撥碼開關、1 個 VGA 接口以及 10 顆 LED 燈和 6 個按鍵,可以滿足數字電路基本的實驗需要。

2 電路設計

2.1 電源電路

電源系統為整個系統提供能量,是系統的基礎。采用 LM1085 芯片提供 3.3 V 電壓,采用 AMS1117 芯片提供 1.2 V 電壓。

考慮到 XC6SLX9 的 3.3 V 電源和其他外設共用一個電源芯片,為保證其他外設電流突變時不影響 XC6SLX9 的正常供電, 使用一個功率電感以隔離 FPGA 和外設的電源。具體電路設計見圖 3。

圖 3 LM1085 電路和 AMS1117 電路

XC6SLX9 對電源的要求較高,電源引腳附近需要多個去耦電容,以減小電源瞬變,保證電源完整性。電源部分還設計有 1 顆 LED 燈用于指示 FPGA 電源是否正常。

2.2 配置電路設計

配置電路一個是使用 JTAG 配置的電路,另一個是使用 FLASH 的主動 SPI 配置電路。

2.2.1JTAG 配置電路

JTAG 配置電路見圖 4。

圖 4 JTAG 配置電路

JTAG 的主要引腳 TMS、TCK、TDI、TDO 經 4.7 kΩ

電阻上拉,以保護電路。JTAG 引腳在印刷電路板(PCB)上通過 14 針 2.0 mm 間距的簡易牛角座引出。簡易牛角座采用防反插設計,以保證 JTAG 連接正確。

PROGRAM_B 引腳默認上拉,通過按鍵接地,可以用于 FPGA 的軟復位。DONE 引腳上拉,且有 LED 指示 FPGA 是否配置完成。

2.2.2FLASH 電路

設計所選用的 FPGA 基于 SRAM 工藝,掉電后不能保存數據,因此在重新上電之后必須從外部的配置存儲器加載配置。FLASH 電路見圖 5(a)。MODE0 和 MODE1 的電平決定了 FPGA 的配置方式,當 MODE0 拉高以及 MODE1 拉低時,FPGA 使用主動 SPI 配置模式。接口電路見圖 5(b)。

圖 5 FLASH 電路和 FPGA 的 FLASH 接口電路

2.3 串口通信設計

選用 CH340G 作為 FPGA 和 PC 機之間通信的轉換芯片。CH340G 是常用的 USB 轉串口的芯片,兼容 5 V 系統和 3.3 V 系統,由于本設計中選用的 XC6SLX9 屬于 3.3 V 系統,因此 CH340G 的供電電壓設置為 3.3 V,如果供電電壓調整為 5 V,則串口通信將發生故障,數據不能通過串口發送至 PC 機。串口部分電路見圖 6。

圖 6 串口通信部分電路

2.4 擴展接口設計

為保證“口袋實驗室”的擴展能力,在設計時將 FPGA 的 24 個通用 I/O 口通過雙排排針在 PCB 上引出,可供使用者外接電路。

為了防止 FPGA 的 I/O 接口接入過高的電壓或者通過過大的電流而損壞 FPGA,設計中使用雙向電平轉換芯片 TXS0108E 對 FPGA 的 I/O 口和外部接口進行隔離,以保護 FPGA 芯片。

3 實踐教學實例

3.1 數碼管顯示實驗

實驗要求使用數碼管顯示時間精度為 100 ms 的秒表,最低位數字每 100 ms 加 1。

3.1.1 實驗硬件電路

“口袋實驗室”選用的數碼管是 4 位共陽極數碼管,其中公共端使用三極管驅動,其余 A、B、C、D、E、F、G、DP 8 個引腳分別和 FPGA 的 I/O 口連接。電路如圖 7 所示。

圖 7 數碼管電路

3.1.2FPGA 代碼設計

FPGA 代碼設計思路如下:將系統的 50 MHz 時鐘分頻為 50 Hz 的逐位掃描時鐘和 10 Hz 的計數時鐘,最低位通過 10 Hz 的時鐘進行計數,計數使用 8421BCD 碼表示,并轉化為數碼管顯示的 8 位二進制代碼輸出。由于是共陽極數碼管,當引腳公共端高電平,其他引腳為低電平時,對應的 LED 才會亮。數碼管二進制碼的最高位為小數點位。實驗仿真及實際運行效果見圖 8。

圖 8 數碼管仿真時序圖與數碼管實驗實際運行圖

由于實際仿真時間過長, 因此在仿真時縮短了計數的時間。表 1 為 BCD 碼與數碼管二進制碼對應表。

表 1 數字的 BCD 碼與數碼管二進制碼對應表

3.2 蜂鳴器控制實驗

實驗要求通過編程控制無源蜂鳴器,使之在輸入不同頻率的 PWM 波情況下,發出不同音調頻率的聲音。

3.2.1 實驗硬件電路

無源蜂鳴器的硬件電路設計見圖 9。

圖 9 蜂鳴器電路圖

3.2.2FPGA 代碼設計

無源蜂鳴器輸入不同頻率的 PWM 會發出不同頻率的聲音,頻率和音調對應見表 2。

表 2 頻率和音調對應表

通過 ISE 的 clock Wizard 將 50 MHz 的系統時鐘頻率分頻為 12 MHz,然后通過計數輸出不同的頻率, 計數的上限值由撥碼開關和按鍵控制,撥碼開關用于選擇 3 個音調,按鍵用于選擇各個音調下的 7 個不同頻率,以此實現輸出不同音調頻率的聲音。圖 10 為蜂鳴器控制仿真圖。

圖 10 蜂鳴器控制仿真圖

總結

以上是生活随笔為你收集整理的flash数字时钟_数字电路设计在嵌入式中的应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。