前 言
本文為創(chuàng)龍科技編寫的PL端案例開發(fā)的指引文檔,對(duì)PL端開發(fā)案例進(jìn)行簡(jiǎn)要介紹。
開發(fā)環(huán)境
Windows開發(fā)環(huán)境:Windows10 64bit
開發(fā)工具:TD_5.9.1_DR1_2025.1_NL、FD_2025.1_SP1
術(shù)語表
為便于閱讀,下表對(duì)文檔出現(xiàn)的關(guān)鍵術(shù)語進(jìn)行解釋;對(duì)于廣泛認(rèn)同釋義的術(shù)語,在此不做注釋。

注意事項(xiàng)
(1)請(qǐng)先按照《開發(fā)環(huán)境搭建》文檔安裝TD、FD等軟件以及進(jìn)行JTAG驅(qū)動(dòng)安裝,使用下載器(廠家:安路科技,型號(hào):AL-LINK-FT-V1.0)連接評(píng)估板JTAG接口至PC端USB接口。
(2)在進(jìn)行本文操作前,請(qǐng)先參考《TD-FD工程編譯與加載》,熟悉工程編譯、鏡像加載等方法。
(3)案例位于產(chǎn)品資料“4-軟件資料DemoFPGA-demosFPGA-HDL-demos”目錄下。案例包含bin目錄和project壓縮包,其中bin目錄下含有案例可執(zhí)行鏡像文件,project壓縮包內(nèi)包含案例工程文件。案例目錄詳細(xì)說明見下表:

1led_flash案例
1.1案例說明
案例功能:控制評(píng)估底板LED3每隔0.5s將狀態(tài)翻轉(zhuǎn)一次。
管腳約束請(qǐng)查看案例工程"projectconstraints"目錄下的.adc文件。
圖 1
1.2操作說明
請(qǐng)將工程鏡像加載至PL端運(yùn)行,即可看到評(píng)估底板的LED3進(jìn)行閃爍。
1.3關(guān)鍵代碼
(1)使用DR1_PHY_OSCDIV原語提供的osc_clk(2MHz)作為L(zhǎng)ED的參考時(shí)鐘。
(2)利用osc_clk(2MHz)進(jìn)行計(jì)數(shù),使LED實(shí)現(xiàn)間隔0.5s進(jìn)行狀態(tài)轉(zhuǎn)換。
圖 2
2key_led案例
2.1案例說明
案例功能:通過按鍵KEY4(USER2)控制評(píng)估底板的LED3狀態(tài)。
管腳約束請(qǐng)查看案例工程"projectconstraints"目錄下的.adc文件。
圖 3
圖 4
2.2操作說明
請(qǐng)將工程鏡像加載至PL端運(yùn)行,按下KEY4按鍵,可看到評(píng)估底板的LED3狀態(tài)翻轉(zhuǎn)。
2.3關(guān)鍵代碼
(1)使用DR1_PHY_OSCDIV原語提供的osc_clk(2MHz)作為系統(tǒng)時(shí)鐘。
(2)對(duì)按鍵按下時(shí)進(jìn)行消抖處理。
(3)通過按鍵按下產(chǎn)生對(duì)應(yīng)標(biāo)志控制LED狀態(tài)。
圖 5
3ad7606_capture案例
3.1 案例說明
案例功能:通過創(chuàng)龍科技TL7606P模塊采集8通道數(shù)據(jù)(采樣率為200KSPS),并使用TD軟件的ChipWatcher工具,將采集的數(shù)據(jù)轉(zhuǎn)換成電壓值并保存為.csv文件。程序功能框圖如下所示。
本案例使用創(chuàng)龍科技TL7606P-A1模塊,硬件配置為并行模式,支持核芯互聯(lián)CL1606(國(guó)產(chǎn))和ADI AD7606采樣芯片。
圖 6
管腳約束請(qǐng)查看案例工程"projectconstraints"目錄下的.adc文件。
3.2 操作說明
(1)硬件連接
請(qǐng)將TL7606P模塊連接至評(píng)估板的EXPORT2接口,將TL7606P模塊的VX通道正確連接至信號(hào)發(fā)生器A通道。同時(shí)使用下載器連接評(píng)估板JTAG接口至PC端USB接口。硬件連接如下圖所示。
備注:本次演示通過TL7606P模塊的V1通道進(jìn)行數(shù)據(jù)采集,其他通道的數(shù)據(jù)采集方法同理。
圖 7
信號(hào)發(fā)生器設(shè)置A通道輸出頻率為1KHz、峰峰值為5.0Vpp(即幅值為2.5V)的正弦波信號(hào),如下圖所示。TL7606P模塊默認(rèn)量程為±5V,待測(cè)信號(hào)電壓請(qǐng)勿超過模塊量程,否則可能會(huì)導(dǎo)致模塊損壞。
圖 8
(2)運(yùn)行測(cè)試
打開案例對(duì)應(yīng)的TD工程,在工程編譯成功后,點(diǎn)擊"Hierarchy Navigation"欄"ChipWatcher"選項(xiàng)下的.cwc文件。
圖 9
將評(píng)估板上電,點(diǎn)擊圖標(biāo),直至"Device"欄出現(xiàn)器件信息。在"BiteFile"欄中,選擇案例對(duì)應(yīng)的.bit鏡像文件。
圖 10
點(diǎn)擊圖標(biāo),加載.bit鏡像文件。
圖 11
圖 12
點(diǎn)擊圖標(biāo),進(jìn)行單次采集,并等待采集完成。
圖 13
圖 14
采集完成后,點(diǎn)擊"Setup",選中要查看的數(shù)據(jù),鼠標(biāo)右鍵依次選擇"SetBus/GroupRadix… -> signed DEC"設(shè)置波形格式為"signed DEC"(有符號(hào)十進(jìn)制)。
圖 15
點(diǎn)擊當(dāng)前窗口右上角"File",選擇"Export Wave Date",導(dǎo)出波形數(shù)據(jù).csv文件。導(dǎo)出完成后,會(huì)彈出窗口顯示導(dǎo)出文件的路徑以及名稱。
圖 16
圖 17
(3)結(jié)果驗(yàn)證
請(qǐng)將生成的.csv文件使用Excel打開,如下圖所示。其中,第C列數(shù)據(jù)為TL7606P-A1模塊V1通道的采集數(shù)據(jù),第J列數(shù)據(jù)為TL7606P-A1模塊V8通道的采集數(shù)據(jù)。
圖 18
由于本次演示通過TL7606P-A1模塊的V1通道進(jìn)行數(shù)據(jù)采集,因此請(qǐng)選中表格中的第C列,點(diǎn)擊“插入”選項(xiàng),選擇“折線圖”,將采集數(shù)據(jù)顯示為更加直觀的波形圖,如下圖所示。
圖 19
圖 20
根據(jù)折線圖確定波峰值為:16179,波谷值為:-16321
圖 21?波峰值
圖 22 波谷值
根據(jù)以上波峰值和波谷值,套用計(jì)算公式:CODE = VIN x VREF / 2n,計(jì)算可得約為4.95V,與信號(hào)發(fā)生器設(shè)置峰峰值:5.00Vpp接近。
參數(shù)解析:
VIN:輸入電壓,即波峰值和波谷值之和,為16179 + 16321 = 32500;
VREF:量程電壓值,即為:+5V- (-5V ) = 10V;
n:數(shù)據(jù)有效位,此處為16位。
3.3 IP核配置說明
設(shè)置輸入的時(shí)鐘頻率為50MHz。
圖 23?PLL IP核配置
使能CLK0,配置輸出頻率為100MHz。
圖 24?PLL IP核配置
3.4 關(guān)鍵代碼
(1)頂層模塊
頂層模塊的源碼位于案例目錄"projecthdl"下的"ad7606_capture.v"。
a)端口定義。
圖 25
b)仿真調(diào)試信號(hào)定義。
圖 26
c)實(shí)例化ad7606_capture_bd模塊,該模塊負(fù)責(zé)從PS端產(chǎn)生時(shí)鐘,提供給PL端。
圖 27
d)使用PLL IP核輸出100MHz ADC時(shí)鐘。
圖 28
e)實(shí)例化AD7606模塊。
圖 29
(2)AD7606模塊
AD7606模塊的源碼位于案例目錄"projecthdl"下的"ad7606.v"。
a)配置aAD7606時(shí)序信號(hào)線。
圖 30
b)將采集到的數(shù)據(jù)分離給各通道。
圖 31
(3)parallel_adc_capture模塊
parallel_adc_capture模塊的源碼位于案例目錄"projecthdl"下的"parallel_adc_capture.v"。
a)生成AD7606的采樣時(shí)鐘和讀取數(shù)據(jù)的時(shí)鐘,其中采樣時(shí)鐘為200KSPS,讀取數(shù)據(jù)的時(shí)鐘為采樣時(shí)鐘的50倍。
圖 32
b)控制convst、cs/rd的信號(hào)。
圖 33
c)以100MHz時(shí)鐘分頻計(jì)數(shù)生成時(shí)序信號(hào)。
圖 34
d)TL7606P模塊每完成一次采樣,則立刻依次讀取出各通道AD數(shù)據(jù)。
圖 35
審核編輯 黃宇
-
FPGA
+關(guān)注
關(guān)注
1660文章
22408瀏覽量
636203 -
adc
+關(guān)注
關(guān)注
100文章
7511瀏覽量
555905 -
采集模塊
+關(guān)注
關(guān)注
0文章
191瀏覽量
10034
發(fā)布評(píng)論請(qǐng)先 登錄
DR1 系列評(píng)估板 eMMC 健康管理案例開發(fā)手冊(cè):信息查詢與壽命監(jiān)控
DR1 系列評(píng)估板 PS 端裸機(jī)與 FreeRTOS 開發(fā)案例手冊(cè)
DR1 系列核心板 PS+PL 異構(gòu)多核實(shí)戰(zhàn)案例手冊(cè)(二)
DR1 系列核心板 PS+PL 異構(gòu)多核實(shí)戰(zhàn)案例手冊(cè)(一)
DR1M90 評(píng)估板 TD-FD 工程與 Linux 多場(chǎng)景應(yīng)用開發(fā)指南
DR1平臺(tái)Linux應(yīng)用開發(fā)指南:含GDB調(diào)試、Python及MQTT實(shí)戰(zhàn)
安路DR1M90評(píng)估板:從基礎(chǔ)外設(shè)到通信模塊測(cè)試指南
ADC3683EVMCVAL評(píng)估模塊技術(shù)解析與應(yīng)用指南
創(chuàng)龍科技DR1M90工業(yè)評(píng)估板的關(guān)鍵優(yōu)勢(shì)
【米爾MYC-YM90X安路飛龍DR1開發(fā)板】HMI人機(jī)界面開發(fā)
【米爾-安路MYD-YM90X 創(chuàng)意秀】點(diǎn)燈也是入門絕活
搭載ARM,NPU,FPGA三種核心的開發(fā)板—米爾安路DR1M90飛龍派
有ARM,NPU,FPGA三種核心的開發(fā)板 — 米爾安路飛龍派開發(fā)板
DR1 評(píng)估板 PL 端 FPGA 開發(fā)完全指南:基礎(chǔ)案例與 ADC 采集模塊詳解(一)
評(píng)論