日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 工業(yè)控制 > 電路設(shè)計項目集錦
[導(dǎo)讀]這一切都開始于一個“簡單”的HDL調(diào)整-你知道,只是添加一個小的自定義IP和一個額外的DMA。Vivado很高興,比特流產(chǎn)生了,ZCU102的燈像迪斯科舞廳一樣閃爍。接下來是真正的boss大戰(zhàn):讓Linux啟動。

這一切都開始于一個“簡單”的HDL調(diào)整-你知道,只是添加一個小的自定義IP和一個額外的DMA。Vivado很高興,比特流產(chǎn)生了,ZCU102的燈像迪斯科舞廳一樣閃爍。接下來是真正的boss大戰(zhàn):讓Linux啟動。

Petalinux非常引人注目,它拋出了警告、依賴性發(fā)脾氣和“設(shè)備樹不匹配”,這可能會讓任何工程師質(zhì)疑他們的生活選擇。

如果您對這個故事感到熟悉,那么恭喜您,您已經(jīng)進入了adi公司ADRV9009平臺定制工程師精英俱樂部。

本教程是您的健康路線圖:我們將使用Vivado和Petalinux 2024.2重新構(gòu)建ADRV9009 + ZCU102的Linux映像,為您的自定義HDL設(shè)計完美調(diào)整-沒有隱藏腳本,沒有黑魔法,只是干凈,可重復(fù)的步驟。

2. 概述:我們正在構(gòu)建的內(nèi)容

那么,任務(wù)是什么?我們不是在這里從頭開始編寫內(nèi)核或召喚Linux之神-我們只是想要一個穩(wěn)定的,可引導(dǎo)的Petalinux映像,它可以與基于Analog Devices的ADRV9009 + ZCU102參考設(shè)計的自定義HDL設(shè)計無縫協(xié)作。

Ob jective

重建一個Linux鏡像(BOOT.BIN + image. zip)。b)與您修改的HDL項目兼容,其中包括:

ADRV9009收發(fā)鏈

?自定義IP塊(AXI流接口)

?一個額外的ADI DMA IP (AXI內(nèi)存映射接口)

?Zynq UltraScale+ MPSoC (ZCU102)

最后,你會得到:

?在硬件上運行Linux的可引導(dǎo)SD卡

?為RF前端正確加載IIO驅(qū)動程序

To ols & Environment

專業(yè)提示:始終匹配您的Vivado和Petalinux版本-混合工具鏈就像跨線程BNC連接器:它可能適合,但您稍后會后悔。

最終目標(biāo)

在本教程結(jié)束時,您將擁有一個經(jīng)過驗證的Linux映像:

?成功啟動您的定制HDL設(shè)計

?識別ADRV9009, SPI, IIO和DMA設(shè)備

?啟用調(diào)試、流和用戶空間測試

3. 先決條件

在繼續(xù)之前,確保只準備好這兩件事:

?已安裝Petalinux 2024.2并獲取其環(huán)境源

?自定義HDL硬件(.xsa)文件(帶比特流)從Vivado導(dǎo)出

就是這樣,您已經(jīng)為構(gòu)建做好了準備。

4. 搭建環(huán)境

用你的。xsa準備好了,Petalinux也安裝好了,現(xiàn)在是準備構(gòu)建工作區(qū)的時候了。

創(chuàng)建工作目錄

首先,讓我們創(chuàng)建一個父文件夾,這個文件夾將包含所有的圖像構(gòu)建材料和克隆的元圖層文件夾,然后移動到這個文件夾。

Petalinux環(huán)境的源代碼

現(xiàn)在將petalinux工具鏈源到petalinux安裝目錄下的這個文件夾中,特別是settings.sh文件。

克隆所需存儲庫

現(xiàn)在通過模擬設(shè)備將meta-adi yocto層克隆到父文件夾

創(chuàng)建一個新的Petalinux項目

現(xiàn)在在父文件夾中創(chuàng)建一個petalinux項目

5. 使用自定義硬件構(gòu)建Linux映像

現(xiàn)在讓我們開始建造吧,我假設(shè)你。從您的vivado成功構(gòu)建Xsa文件。

提示:確保指向包含。Xsa文件-不是。Xsa文件本身。否則,您將遇到AMD Xilinx更新的Petalinux構(gòu)建工作流中引入的SDT錯誤。

在我的例子中命令是這樣的:

這將打開Petalinux System Configuration GUI,如圖5所示。導(dǎo)航到Y(jié)octo設(shè)置→用戶層→用戶層0(新),并輸入克隆存儲庫的路徑:

. . / meta-adi / meta-adi-xilinx

然后Save and Exit應(yīng)用更改。完整的流程如下圖所示。

提示一:

大多數(shù)設(shè)置都是根據(jù)XSA中指定的硬件設(shè)計細節(jié)自動配置的。我發(fā)現(xiàn)自己在大多數(shù)PetaLinux項目中更新的主要硬件配置設(shè)置位于Image Packaging configuration選項卡下。這是配置根文件系統(tǒng)類型和相關(guān)引導(dǎo)設(shè)置的地方。特別是對于基于zynqmp的設(shè)計,我的根文件系統(tǒng)位于SD卡上。我還希望它是持久的(即-它保持電力循環(huán)之間的變化)。因此,在根文件系統(tǒng)類型下,將其更改為EXT4 (SD/eMMC/SATA/USB)。

圖11顯示了保存并退出后應(yīng)該看到的日志。

(b)到目前為止,我們已經(jīng)成功添加了meta-adi-xilinx Yocto用戶層?,F(xiàn)在,我們需要通過將內(nèi)核指向正確的設(shè)備樹配置來更新默認設(shè)備樹配置。dts文件。您可以使用以下命令直接從終端執(zhí)行此操作:

echo "KERNEL_DTB=\"${dts_to_use}\"" >> project-spec/meta-user/conf/petalinuxbsp.conf .

這確保了Petalinux構(gòu)建使用ADRV9009 + ZCU102設(shè)計的預(yù)期設(shè)備樹blob (DTB)。

在這個例子中,對于adi公司的ADRV9009 + ZCU102參考設(shè)計,我使用的設(shè)備樹文件是:

zynqmp-zcu102-rev10-adrv9009-jesd204-fsm

注意:請確保不包含任何文件擴展名(如。dts或。Dtb)在名稱的末尾-只有基本文件名。

下圖顯示了在我的設(shè)置中使用的確切終端命令。

重要提示:運行命令后,打開project-spec/meta-user/conf/petalinuxbsp.conf文件,檢查是否正確添加了完整的設(shè)備樹名稱。有時名稱的某些部分可能會被截斷,這可能導(dǎo)致在構(gòu)建過程中出現(xiàn)無盡的“未找到文件”錯誤-因此值得仔細檢查!

(c)“有趣”部分-自定義設(shè)備樹修改

好了,現(xiàn)在是這個過程中最“令人愉快”的部分——編輯設(shè)備樹。

首先,我們有意地讓第一個構(gòu)建失敗(是的,是有意的)。這將生成pl.dtsi文件——Petalinux基于.xsa創(chuàng)建的自動生成的設(shè)備樹。

現(xiàn)在,這里有一個問題:雖然AMD/Xilinx在處理自己的ip方面做得很好,但其他方面……我們只能說Petalinux對第三方區(qū)塊的猜測充其量是樂觀的。

換句話說,您通常會為您的ADI ip得到一個可愛的垃圾節(jié)點集合。

為了解決這個問題,Analog Devices采取了干凈的路線——他們刪除了petalinux為ADI ip生成的節(jié)點,并用正確的參數(shù)覆蓋他們自己的設(shè)備樹。

我們將遵循同樣的理念:

?檢查Petalinux生成了哪些節(jié)點。

?使用清理文件刪除不正確的。

在system-user中添加正確的ADI設(shè)備樹節(jié)點。Dtsi文件-位于其他所有文件之上的文件。

因為沒有什么比刪除您的工具剛剛自豪地構(gòu)建的一半更能說明“定制嵌入式Linux”了。

在項目目錄中導(dǎo)航到構(gòu)建文件夾并鍵入

從現(xiàn)在開始,喝一大杯(或三杯)咖啡——這部分將是一場馬拉松。錯誤會像打地鼠一樣彈出,但不要擔(dān)心—我們將一個接一個地查找它們,直到Petalinux最終揮動白旗并構(gòu)建。錯誤1:License Checksum Mismatch

jsd -status-dev-r0 do_populate_lic: QA問題:jsd -status: LIC_FILES_CHKSUM不匹配file://license .txt;md5 = 38 c01601d5c4b84986a8f48ece946aa1

jed -status:新的md5校驗和為982e522e7ec5a0beed8de5114ebfea50

啊,是的——經(jīng)典的LIC_FILES_CHKSUM不匹配。這通常發(fā)生在包中的許可文本被更新,但配方仍然引用舊的校驗和時。

修復(fù):只需復(fù)制錯誤日志中顯示的新MD5校驗和,并替換導(dǎo)致問題的配方文件中的舊校驗和。

在我的例子中,錯誤指向:

meta-adi / meta-adi-xilinx recipes-support / jesd-status / jesd-status_dev.b

于是,我打開了。并將舊的MD5替換為新的MD5:

LIC_FILES_CHKSUM = "file://LICENSE.txt;md5 = 982 e522e7ec5a0beed8de5114ebfea50”

對于顯示相同問題的任何其他包重復(fù)此操作。這是一個無害的“歡迎來到Y(jié)octo”時刻——乏味,但卻是入會儀式的一部分。此外,不要取消構(gòu)建,即使它正在繼續(xù)執(zhí)行一些其他任務(wù)

錯誤2:取回錯誤

錯誤:linux-xlnx-6.6.40-adi-v2025.1+git-r0 do_fetch: Fetcher失?。?

獲取命令export PSEUDO_DISABLED=1;出口SSL_CERT_DIR =…

這是典型的“獲取失敗”——基本上是Petalinux在說“我無法連接互聯(lián)網(wǎng),請修復(fù)你的Wi-Fi”。

修復(fù):只要確保你有一個穩(wěn)定的互聯(lián)網(wǎng)連接,然后重新運行構(gòu)建:

petalinux-build

十有八九,這個錯誤會在連接正常的那一刻消失——不需要深入調(diào)試。

錯誤3:內(nèi)核版本完整性檢查失敗

錯誤:linux-xlnx-6.6.40- di-v2025.1+git-r0 do_kernel_version_sanity_check:

包版本(6.6.40-adi-v2025.1+git)與正在構(gòu)建的內(nèi)核(6.12)不匹配。

請更新PV變量以匹配內(nèi)核源或集

你的配方中的KERNEL_VERSION_SANITY_SKIP="1"。

啊,臭名昭著的內(nèi)核版本不匹配——Petalinux用這種方式提醒我們,它希望所有東西都完美匹配(即使它無關(guān)緊要)。

解決辦法:這個是無害的。構(gòu)建環(huán)境中的內(nèi)核版本與配方中指定的內(nèi)核版本不一致。要使警告靜音(并保持完整),只需將這一行添加到Linux配方文件中:

Kernel_version_sanity_skip = “1”

您將在錯誤日志的最后一行找到正確的配方位置,例如:

meta-xilinx / meta-xilinx-core recipes-kernel / linux / linux-xlnx_6.6.40-v2024.2.bb

編輯完成后,保存文件并重新構(gòu)建:

petalinux-build

Petalinux將高興地停止抱怨版本不匹配——因為有時候,無知是福。

(d)修改設(shè)備樹

最后——構(gòu)建失敗。好消息:這正是我們想要的。為什么?因為此故障生成pl.dtsi文件—從.xsa派生的自動生成的設(shè)備樹。

在我定制的ADRV9009 + ZCU102參考設(shè)計中,我添加了:

基于軸流的DSP IP

ADI axis - dma控制器IP(內(nèi)存映射)。

當(dāng)Petalinux創(chuàng)建設(shè)備樹時,新的DMA綁定到一個名為misc_clk_0的時鐘。但是ADI的Yocto層包含一個清除機制,可以刪除許多自動生成的節(jié)點——包括這個時鐘。結(jié)果:構(gòu)建失敗。(圖12顯示了“misc_clk_0 not found”錯誤。)

目標(biāo)是什么?

我們將遵循ADI的清理流程,使我們的自定義硬件運行良好:

生成pl.dtsi(通過失敗的構(gòu)建完成)。

識別其中的自定義IP節(jié)點。

通過ADI的pl-delete文件顯式刪除這些節(jié)點。

在system-user.dtsi中添加這些節(jié)點的正確的手寫版本。

步驟1 -識別自定義節(jié)點

導(dǎo)航到:

組件/ plnx_workspace /設(shè)備樹/設(shè)備樹

打開pl.dtsi并查找屬于自定義ip的節(jié)點。就我而言:

axi_dmac_0: axi_dmac@80000000 {

clock-names = "m_dest_axi_aclk", "s_axi_aclk", "s_axis_aclk";

clocks = <&zynqmp_clk 72>, <&zynqmp_clk 71>, <&misc_clk_0>;

compatible = "xlnx,axi-dmac-1.0";

reg = <0x0 0x80000000 0x0 0x10000>;

};

這是我們自動生成的節(jié)點,我們將很快用一個干凈的節(jié)點替換它。

步驟2 -添加節(jié)點到ADI的刪除列表

進入ADI層:

meta-adi / meta-adi-xilinx / recipes-bsp /設(shè)備樹/文件/打開:

pl-delete-nodes-zynqmp-zcu102-rev10-adrv9009-jesd204-fsm.dtsi

在頂部,你會看到包含如下內(nèi)容:

/ include /“pl-delete-nodes-zynqmp-zcu102-hdl-adrv9009.dtsi”

第二個文件實際上包含刪除命令。pl-delete-nodes-zynqmp-zcu102-hdl-adrv9009開放。Dtsi并添加節(jié)點的刪除行:

/ delete-node / &axi_dmac_0;

為什么:這告訴Petalinux在構(gòu)建期間從pl.dtsi中刪除自動生成的DMA節(jié)點。稍后,我們將在system-user.dtsi中重新添加一個正確定義的版本。

(圖13顯示了修改后的刪除節(jié)點文件。)

步驟3—在system-user.dtsi中添加Clean Node

現(xiàn)在編輯:

說明/ meta-user / recipes-bsp /設(shè)備樹/文件/ system-user.dtsi

將新的DMA節(jié)點附加到其余內(nèi)容下面:

/include/ "system-conf.dtsi"

/ {

};

&fpga_axi {

pdm_dmac: dma-controller@8000000 {

compatible = "adi,axi-dmac-1.00.a";

reg = <0x8000000 0x10000>; // Base address and size

dma-controller;

interrupts-extended = <>;

#dma-cells = <1>;

#clock-cells = <0>;

dma-coherent;

clocks = <&zynqmp_clk 73>;

};

};

提示:此頂級文件覆蓋已刪除的節(jié)點,并在構(gòu)建時注入干凈的定義。這就是ADI層保持模塊化的方式——所有自定義的東西都在這里,而不是直接在pl.dtsi中。

最后指出

在pl-delete-nodes中刪除…確保ADI的清理不會重新生成錯誤的自動生成配置。

添加到system-user。dtsi確保Linux完全按照預(yù)期看到您的DMA和時鐘綁定。

在這之后,cd…從構(gòu)建文件夾中重新運行構(gòu)建:

petalinux-build

再抓一個——這次,它會過去的。瞧!構(gòu)建成功了!

如果一切順利(并且在此過程中沒有意外地刪除理智),Petalinux將最終完成構(gòu)建。

現(xiàn)在,您應(yīng)該在終端上看到類似于圖14的成功消息——這是每個工程師夢寐以求的美好時刻:

“構(gòu)建成功完成。”

深吸一口氣,喝一口遺忘已久的咖啡,向自己點一點頭——您剛剛像專業(yè)人士一樣為ADRV9009 + ZCU102構(gòu)建了一個自定義Linux映像。

6. 打包引導(dǎo)二進制文件(Boot . bin)

一旦項目成功構(gòu)建,就該生成引導(dǎo)二進制文件了- boot . bin .該文件結(jié)合了ZynqMP設(shè)備正確啟動所需的基本引導(dǎo)組件。

在我的情況下,我是從SD卡引導(dǎo)ZCU102,所以BOOT.BIN必須至少包括:

?FSBL(第一階段引導(dǎo)加載程序)

?FPGA位流(.bit)

?U-Boot引導(dǎo)加載程序

所有這些文件都是在Petalinux項目的輸出目錄中自動生成的:

現(xiàn)在把它們包裝在一起,使用:

這個命令在映像目錄中創(chuàng)建BOOT.BIN文件,準備放到SD卡上進行引導(dǎo)。

提示:如果您稍后重新構(gòu)建項目并需要重新生成引導(dǎo)映像,請使用——force標(biāo)志來覆蓋現(xiàn)有文件:

我的屏幕日志如圖12所示。

7:包裝SD卡鏡像

如果從SD卡引導(dǎo)(而不是直接引導(dǎo)到INITRD或INITRAMFS), PetaLinux提供了一個方便的內(nèi)置實用程序來創(chuàng)建完整的SD卡映像。此工具將所有內(nèi)容打包到??梢允褂弥T如balenaEtcher、Rufus或dd等實用程序?qū)D像文件閃入SD卡。

命令概述

PetaLinux使用PetaLinux -package命令和——wic標(biāo)志來創(chuàng)建這個映像。

在我的設(shè)置中(從SD卡啟動ZCU102板),在SD卡的啟動分區(qū)中需要以下文件:

?BOOT.BIN→引導(dǎo)程序二進制文件(FSBL + bitstream + U-Boot)

?image.ub→合并Linux內(nèi)核和根文件系統(tǒng)映像

?system.dtb→設(shè)備樹Blob

?boot.scr→U-Boot啟動腳本

根文件系統(tǒng)本身(rootfs.tar.gz)放在SD卡的根分區(qū)中。

完整命令示例

在PetaLinux項目目錄下運行以下命令:

期待什么

?該過程可能需要幾分鐘才能完成,具體取決于系統(tǒng)的I/O速度。

?生成。鏡像通常在6 - 7gb左右,所以確保你至少有一個8gb的SD卡可用。

?一旦完成,。哪個映像將出現(xiàn)在項目的images/linux/目錄中。

閃爍SD卡

你現(xiàn)在可以閃光了。在我的案例中,我使用的是balena蝕刻器。

8. 啟動板

現(xiàn)在是最有趣的部分了——讓您的新構(gòu)建的Linux系統(tǒng)煥發(fā)生機!

?插入SD卡:將SD卡(帶有PetaLinux映像)插入主板的SD插槽,如圖15所示。

?設(shè)置啟動方式(ZCU102):對于ZCU102,將啟動方式開關(guān)(ZCU102為SW6)設(shè)置為從SD卡啟動:

On | off | off | off

(開關(guān)位置見圖16)

?為串行控制臺連接UART:使用micro-USB電纜將ZCU102上的UART轉(zhuǎn)usb端口連接到主機PC(參見圖17)。該連接將允許您查看引導(dǎo)日志并與Linux控制臺進行交互。

?安裝ADRV9009 FMC卡:將ADRV9009收發(fā)板固定在ZCU102上的HPC1 FMC連接器上,如圖18所示。

?打開串行終端:啟動您最喜歡的串行終端程序- PuTTY, TeraTerm或類似程序。選擇合適的端口(在我的例子中是/dev/ttyUSB0)。波特率設(shè)置為115200。

一旦所有東西都連接好并通電,您就可以正式啟動到您的定制PetaLinux + ADI系統(tǒng)了。坐下來,看著引導(dǎo)日志滾動,享受Linux終于迎接您的甜蜜時刻——祝賀您,您已經(jīng)從零開始構(gòu)建了它!

結(jié)論

現(xiàn)在,您已經(jīng)成功地為ADRV9009 + ZCU102平臺構(gòu)建了自定義PetaLinux映像,集成了您自己的基于hdl的硬件設(shè)計,并確保了設(shè)備樹的兼容性。這個過程演示了完整的流程——從準備環(huán)境和合并元數(shù)據(jù)層,到解決構(gòu)建時問題和在硬件上部署最終映像。

您的設(shè)置現(xiàn)在可以在Zynq UltraScale+ SoC上進行更高級別的系統(tǒng)驗證、驅(qū)動程序集成和應(yīng)用程序開發(fā)。無論您計劃擴展功能,執(zhí)行性能測量,還是集成實時DSP工作負載,這都是進一步開發(fā)的堅實基礎(chǔ)。

本文編譯自hackster.io

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉