www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]uCOSii 在Coldfire MCF52235 上的移植

介紹將C/ OS 實(shí)時(shí)操作系統(tǒng)移植到Co ldfire 處理器MCF52235 上的方法, 為MCF5223x 系列微控制器的軟件開(kāi)發(fā)提供了一個(gè)實(shí)時(shí)操作系統(tǒng)平臺(tái)。首先分析C/ OS 的特點(diǎn)和內(nèi)核結(jié)構(gòu), 結(jié)合MCF52235 的結(jié)構(gòu)特點(diǎn)以及使用的軟硬件開(kāi)發(fā)工具, 深入研究移植條件和實(shí)現(xiàn)方法, 詳細(xì)闡述系統(tǒng)移植中需要修改的文件、編寫(xiě)的代碼及需要注意的問(wèn)題。然后使用Co dew arr ior 6. 4 集成開(kāi)發(fā)環(huán)境和評(píng)估板, 通過(guò)建立兩個(gè)應(yīng)用任務(wù), 驗(yàn)證了移植代碼的正確性, 說(shuō)明在MCF52235 上移植uC/ OS 是成功和可行的。在此介紹的移植過(guò)程和方法可以作為C/ OS 在其他微控制器中移植的典型范例。

C/ OS 是一種多任務(wù)實(shí)時(shí)操作系統(tǒng)。內(nèi)核源代碼公開(kāi)、短小精干、可裁剪、執(zhí)行時(shí)間可確定, 可移植性較強(qiáng), 非常適用于一些中小型嵌入式系統(tǒng)開(kāi)發(fā)。uC/OS 可以移植到8~ 64 位的不同類型、不同規(guī)模的嵌入式系統(tǒng), 并能在大部分的8 位、16 位、32 位, 甚至64 位的微處理器和DSP 上運(yùn)行[ 1] 。

MCF52235 是飛思卡爾公司Co ldf ire 系列32 位單片機(jī)解決方案的嵌入式微控制器, 采用的是V2 版本的

RISC 內(nèi)核。MCF52235 內(nèi)部有32 KB SRAM 和256 KB FLASH, 并且集成了標(biāo)準(zhǔn)的Coldfire 外圍設(shè)備, 包括三個(gè)適合中長(zhǎng)距離通信的SCI, 一個(gè)I2 C 和一個(gè)用于系統(tǒng)內(nèi)部和外圍設(shè)備通信的Q SPI。在60 Hz的核心頻率下, MCF52235 的處理能力為56 MIPS, 具備較高的性能價(jià)格比[ 24] 。MCF52235 對(duì)于移植C/ OS 來(lái)說(shuō)有足夠的

RAM 和FLASH, 且有較快的處理速度和較低的成本,所以對(duì)于嵌入式應(yīng)用系統(tǒng)的開(kāi)發(fā)來(lái)說(shuō), 嵌入C/ OS

到MCF52235 微控制器是一個(gè)不錯(cuò)的選擇。uC/ OS 的體系結(jié)構(gòu)要實(shí)現(xiàn)C/ OS 向MCF52235 的移植, 需要做兩方面的工作: 一是重新定義內(nèi)核的大小和功能; 二是為內(nèi)核編寫(xiě)與硬件相關(guān)的代碼。C/ OS 的文件結(jié)構(gòu)如圖1 所示??梢钥吹? C/ OS 與CPU 類型無(wú)關(guān)的C 代碼文件COS . C 包括很多文件, 它們是C/ OS 的內(nèi)核和很多功能函數(shù), 其中前三個(gè)文件是實(shí)時(shí)內(nèi)核、任務(wù)管理和時(shí)鐘節(jié)拍, 這三個(gè)文件是一定要用的。后面6 個(gè)功能函數(shù)用于任務(wù)間的通信, 應(yīng)用程序中可能只用到其中

的幾個(gè), 不用的可以不包含進(jìn)去, 以免編譯時(shí)生成沒(méi)用的代碼。這部分代碼與CPU 類型無(wú)關(guān), 在移植時(shí), 這些文件不要改動(dòng)。配置文件OS_CFG. H 需要根據(jù)應(yīng)用要求來(lái)進(jìn)行,主要作用是確定C/ OS 提供的系統(tǒng)功能函數(shù), 應(yīng)用

程序用哪些和不用哪些, 這個(gè)文件移植時(shí)需要修改。與CPU 類型有關(guān)的代碼文件主要有三個(gè): OS _CPU. H, OS_CPU_A. ASM 和OS_CPU_C. C。文件定義用于特定CPU 的數(shù)據(jù)類型來(lái)定義相關(guān)的宏。OS _CPU_A . ASM 是用匯編語(yǔ)言寫(xiě)的與硬件有關(guān)的代碼,OS_CPU_C. C 是用C 語(yǔ)言寫(xiě)的與硬件有關(guān)的代碼。由于移植使用C 交叉編譯工具, 在C 代碼中可以插入?yún)R編語(yǔ)句, 在移植中可將這兩個(gè)文件合并成一個(gè)文件[ 5] 。

產(chǎn)生時(shí)鐘節(jié)拍的定時(shí)中斷來(lái)自微控制器內(nèi)部, 但并非來(lái)自V2 內(nèi)核內(nèi)部, 可以用實(shí)時(shí)時(shí)鐘產(chǎn)生定時(shí)中斷,

也可以用片內(nèi)的外設(shè)模塊定時(shí)器單元來(lái)產(chǎn)生定時(shí)中斷,這部分代碼顯然與硬件相關(guān), 移植時(shí)要自己寫(xiě)[ 6] 。

 

 

2 移植過(guò)程

所謂移植, 就是使一個(gè)實(shí)時(shí)內(nèi)核能在某個(gè)微處理器或微控制器上運(yùn)行。為了方便移植, 大部分的C/ OS代碼是用C 語(yǔ)言寫(xiě)的, 但仍需要用C 和匯編語(yǔ)言寫(xiě)一些與處理器相關(guān)的代碼, 這是因?yàn)镃/ OSII 在讀寫(xiě)處理器寄存器時(shí)只能通過(guò)匯編語(yǔ)言來(lái)實(shí)現(xiàn) 。移植過(guò)程主要包括移植前的準(zhǔn)備、BSP ( 板級(jí)支持包) 的編寫(xiě)和與處理器相關(guān)代碼的修改和編寫(xiě)。C/OS 核心代碼、與CPU 相關(guān)的接口程序、BSP 和用戶應(yīng)用程序之間的關(guān)系如圖2 所示。

2. 1 移植前的準(zhǔn)備

進(jìn)入C/ OS 官方網(wǎng)站下載C/ OS 源代碼。打開(kāi)Codew arrior 6. 4 建立MCF52235 的工程文件, 然后把C/ OS 的源代碼文件加入到工程里面[ 8] 。其中有幾個(gè)地方需要改動(dòng):

( 1) 下載的源代碼中os_cfg _r. h 改為o s_cfg. h;os_dbg_r. c改為os_dbg. c。

( 2) 由于會(huì)引起重復(fù)定義錯(cuò)誤, 需要把源代碼中重復(fù)包含的文件注釋掉。

( 3) 需要在INT ERNAL_FLASH 模式下編譯, 而不能在RAM 模式下, 否則會(huì)產(chǎn)生溢出錯(cuò)誤。

 

 

2. 2 編寫(xiě)B(tài)SP

板級(jí)支持包( BSP) 是介于底層硬件和操作系統(tǒng)之間的軟件層次, 負(fù)責(zé)進(jìn)行系統(tǒng)啟動(dòng)后最初的硬件和軟件

初始化, 并對(duì)底層硬件進(jìn)行封裝, 使得操作系統(tǒng)不再面對(duì)具體的硬件[ 9] 。在此建立兩個(gè)BSP 文件: BSP. ASM 和BSP. C。其中, BSP. ASM 中包含了匯編語(yǔ)言寫(xiě)的中斷接口程序。BSP. C 中包含了硬件和軟件的初始化程序和產(chǎn)生時(shí)鐘節(jié)拍的中斷服務(wù)程序。

2. 3 與處理器相關(guān)代碼的修改和編寫(xiě)

有三個(gè)與處理器相關(guān)的文件, 即OS_CPU . H, OS_CPU _ A. ASM 和OS _ CPU _ C. C 需要修改。由于MCF52235 有eMAC 模塊, 所以還需要編寫(xiě)OS_CPU _I. ASM 文件, 用來(lái)在任務(wù)切換和中斷時(shí)以及中斷返回

時(shí)保存和恢復(fù)相關(guān)寄存器。

2. 3. 1 OS_CPU. H 的移植

OS_CPU. H 包含了一些與處理器和編譯器相關(guān)的宏定義和數(shù)據(jù)類型定義。由于使用Codew arrior 編譯

器, shor t 類型是16 位的, int 類型是32 位的。MCF52235 的堆棧是32 位寬的, 因此OS_STK 定義為

32 位, 所有任務(wù)的堆棧必須聲明使用OS_ST K 這種數(shù)據(jù)類型。數(shù)據(jù)類型定義如下:

ty pedef unsigned char BOOLEAN;

ty pedef unsigned char INT 8U;

ty pedef signed char INT8S;

ty pedef unsigned sho rt INT16U;

ty pedef signed shor t INT16S;

ty pedef unsigned int INT32U;

ty pedef signed int INT32S;

typedef float FP32;

typedef double FP64;

typedef unsigned int OS_STK;

typedef unsigned shor t OS_CPU_SR;

( 1) 臨界區(qū)域處理。像所有的實(shí)時(shí)性內(nèi)核一樣, 在進(jìn)入代碼臨界區(qū)時(shí)要關(guān)中斷, 完成時(shí)要開(kāi)中斷。C/[!--empirenews.page--]

OS 定義了兩個(gè)宏來(lái)關(guān)閉和使能中斷: OS_ENT ER_CRITICAL( ) 和OS_EXIT _CRIT ICAL( ) 。C/ OS定義了三種方法來(lái)關(guān)閉和使能中斷, 大多數(shù)情況下選擇第三種方法。

# define OS_CRITICAL_METH OD # 3

# define OS_ENTER_CRITICAL( ) { cpu_sr = OS _CPU_

SR_Save( ) ; } / / 關(guān)中斷

# def ineOS _ EXIT _ CRITICAL( ) { OS _ CPU _ SR_ Resto re

( cpu_sr) ; } / / 開(kāi)中斷

( 2) 任務(wù)層上下文切換。當(dāng)C/ OS 調(diào)用OS _TASK_SW( ) 時(shí)發(fā)生任務(wù)層的上下文切換。因?yàn)樯舷?/p>

文切換是根據(jù)處理器的不同而不同的, 所以需要執(zhí)行一個(gè)匯編的函數(shù)。在這種情況下, 用TRA P 指令來(lái)產(chǎn)

生一個(gè)異常, 用T RAP 指令的優(yōu)點(diǎn)是能使它像發(fā)生了一次中斷一樣。這里用# 14 T RAP, 因?yàn)榇蠖鄶?shù)情況

下, # 15 TRAP 被調(diào)試和監(jiān)控程序保留了。# 14TRAP 定位于VBR+ 0x00B8, 然后跳轉(zhuǎn)到相應(yīng)的地址。

在這個(gè)向量處放置OSCtx Sw( ) 的地址。這個(gè)函數(shù)聲明在OS_CPU_A. ASM 里。VBR 代表向量基址寄存器,

包含異常向量表的基址, 程序開(kāi)始時(shí)被初始化為0x00000000, 但是在運(yùn)行時(shí)可以改變。

# define OS_TASK_SW( ) asm( T RAP # 14; )

( 3) 堆棧的增長(zhǎng)方向。MCF52235 的堆棧增長(zhǎng)方向是從高地址向低地址, 因此OS _ST K_GROWTH 置

為1。

# define OS_STK_GROWTH 1

2. 3. 2 OS_CPU _C. C 的移植

OS_CPU_C. C 里面包含10 個(gè)比較簡(jiǎn)單的C 語(yǔ)言函數(shù), 一般來(lái)說(shuō)C/ OS 只需要OST askStkInit ( ) 。其他函數(shù)是用來(lái)讓用戶在自己的程序里擴(kuò)展操作系統(tǒng)功能的。如果需要使用這些函數(shù), 需要在OS_CFG. H 里設(shè)置OS_CPU _HOOKS_EN 為1。堆棧的初始化: OSTaskStkInit ( ) 雖然是用C 語(yǔ)言編

寫(xiě)的, 但它是一個(gè)與CPU 硬件相關(guān)的函數(shù)。這個(gè)函數(shù)功能是初始化任務(wù)的堆棧, 由建立任務(wù)函數(shù)OSTask

Create( ) 或擴(kuò)展地建立任務(wù)函數(shù)OSTaskCreateExit ( ) 調(diào)用。任務(wù)堆棧初始化的實(shí)質(zhì)就是模擬一次中斷, 使堆??雌饋?lái)就像剛發(fā)生過(guò)中斷一樣。任務(wù)堆棧中保存了任務(wù)代碼的起始地址和一些CPU 寄存器的值, 一旦條件滿足, 就可以執(zhí)行該任務(wù)。初始化后的任務(wù)堆棧結(jié)構(gòu)如圖3所示。

 

 

2. 3. 3 OS_CPU_A. ASM 的移植

這個(gè)文件包含5 個(gè)相當(dāng)簡(jiǎn)單的匯編函數(shù), 因?yàn)橐话悴荒苡肅 語(yǔ)言來(lái)保存和恢復(fù)寄存器。

( 1) OS_CPU_SR_Save( )

這個(gè)函數(shù)是通過(guò)保存中斷屏蔽寄存器, 然后關(guān)閉中斷來(lái)實(shí)現(xiàn)OS_CRITICAL_MET HOD # 3 的。當(dāng)函數(shù)返回時(shí), D0 包含了狀態(tài)寄存器的內(nèi)容, 里面包含當(dāng)前的中斷關(guān)閉狀態(tài)。這個(gè)返回值被調(diào)用函數(shù)保存到變量

cpu_sr 中。

( 2) OS_CPU_SR_Restore( )

這個(gè)函數(shù)用來(lái)實(shí)現(xiàn)恢復(fù)中斷屏蔽到調(diào)用OS _ENTER_CRITICAL( ) 之前的狀態(tài)。也就是說(shuō)調(diào)用OS_

ENTER_CRITICAL( ) 之前中斷是關(guān)閉的, 那么在OS_EXIT_CRITICAL( ) 之后, 中斷是關(guān)閉的。

( 3) OSStartHighRdy( )

這個(gè)函數(shù)被OSStar t ( ) 調(diào)用來(lái)運(yùn)行優(yōu)先級(jí)最高的任務(wù)。OSStar t ( ) 設(shè)置OSTCBHighRdy 指向優(yōu)先級(jí)最高任務(wù)的OS _T CB。一旦從OSTaskSwHoo k( ) 返回,就把OSRunning 設(shè)為OS_T RU E, 它表明現(xiàn)在RT OS

將要運(yùn)行。從最高優(yōu)先級(jí)任務(wù)的OS_T CB 中恢復(fù)堆棧指針, 然后從任務(wù)堆棧里取出CPU 寄存器。最后執(zhí)行

一個(gè)RET 指令, 這個(gè)指令可以從堆棧中彈出SR 和PC,現(xiàn)在的任務(wù)代碼就開(kāi)始執(zhí)行。

( 4) OSCtx Sw( )

當(dāng)一個(gè)任務(wù)不再運(yùn)行時(shí)就會(huì)發(fā)生一個(gè)任務(wù)級(jí)的任務(wù)切換, 比如任務(wù)調(diào)用一個(gè)延遲10 個(gè)時(shí)鐘節(jié)拍的函數(shù)。

這時(shí), C/ OS 需要找出下一個(gè)最重要的任務(wù)準(zhǔn)備去運(yùn)行。OSCtx Sw ( ) 的功能是保存需要掛起的任務(wù)的CPU 寄存器和堆棧, 恢復(fù)需要運(yùn)行任務(wù)的CPU 寄存器和堆棧。任務(wù)級(jí)上下文切換如圖4 所示。

 

 

( 5) OSIntCtx Sw( )

當(dāng)中斷服務(wù)函數(shù)完成時(shí), 調(diào)用OSIntEx it ( ) 函數(shù)去決定是否有一個(gè)更重要的任務(wù)比被中斷的任務(wù)更需要執(zhí)行。這種情況下, OSIntEx it( ) 決定運(yùn)行哪個(gè)任務(wù), 然后調(diào)用OSIntCtx Sw ( ) 。這種情況下, 中斷服務(wù)程序已經(jīng)保存了被中斷任務(wù)的CPU 寄存器, 而需要做的只是去恢復(fù)新任務(wù)的CPU 寄存器。

2. 3. 4 OS_CPU _I. ASM 的編寫(xiě)

如果用到增強(qiáng)的乘法累加單元( eMAC) 模塊, 在上下文切換和中斷時(shí)就應(yīng)該保存和恢復(fù)eMAC 寄存器。保

存和恢復(fù)eMAC 寄存器通過(guò)兩個(gè)宏來(lái)實(shí)現(xiàn)[ 10] 。代碼如下:

. macro OS_EM AC_SAVE

MOVE. L MACSR, D7

CLR. L D0

MOVE. L D0, M ACSR

MOVE. L ACC0, D0

MOVE. L ACC1, D1

MOVE. L ACC2, D2

MOVE. L ACC3, D3

MOVE. L ACCEXT01, D4

MOVE. L ACCEXT23, D5

MOVE. L MASK, D6

LEA 32( A7) , A7

MOVEM. L D0D7, ( A7)

. endm

. macro OS_EM AC_REST ORE

MOVEM. L ( A7) , D0D7

MOVE. L # 0, MACSR

MOVE. L D0, ACC0

MOVE. L D1, ACC1

MOVE. L D2, ACC2

MOVE. L D3, ACC3

MOVE. L D4, ACCEXT01

MOVE. L D5, ACCEXT23

MOVE. L D6, MASK

MOVE. L D7, MACSR

LEA 32( A7) , A7

. endm

2. 4 時(shí)鐘節(jié)拍的產(chǎn)生

最后還需要編寫(xiě)利用片內(nèi)定時(shí)器產(chǎn)生時(shí)鐘節(jié)拍的中斷服務(wù)程序。C/ OS要求微控制器提供一個(gè)簡(jiǎn)單的時(shí)鐘, 用于任務(wù)的延時(shí)等功能。在此利用可編程中斷定時(shí)器來(lái)產(chǎn)生時(shí)鐘節(jié)拍中斷。在定時(shí)器中斷服務(wù)程序中調(diào)用OSTimeTick( ) 就產(chǎn)生了系統(tǒng)所需要的時(shí)鐘節(jié)拍。C/OS中產(chǎn)生中斷后的中斷處理程序如下所示:

_BSP_TickISR:

MOVE. W # 0x2700, SR

LEA 60( A7) , A7[!--empirenews.page--]

MOVEM. L D0D7/ A0 A6, ( A7)

OS_EMAC_SAVE

MOVEQ. L # 0, D0

MOVE. B ( _OSI ntNesting) , D0

ADDQ. L # 1, D0

MOVE. B D0, ( _OSI ntNesting)

CMPI. L # 1, D0

BNE _BSP_TickISR_1

MOVE. L ( _OSTCBCur) , A1

MOVE. L A7, ( A1)

_BSP_TickISR_1:

JSR _BSP_T ickISR_H andler

JSR _OSInt Ex it

OS_EMAC_RESTORE

MOVEM. L ( A7) , D0D7/ A0A6

LEA 60( A7) , A7

RTE

3 任務(wù)的創(chuàng)建和移植代碼的測(cè)試

源程序移植完, 用戶就可以試著制作自己的項(xiàng)目。編寫(xiě)任務(wù)代碼, 與以前在前后臺(tái)系統(tǒng)中基本相同, 不同

的是要把每個(gè)任務(wù)獨(dú)立編寫(xiě)成一個(gè)文件, 最后由主程序統(tǒng)一調(diào)度。為了測(cè)試是否移植成功, 用STaskCreateExt ( ) 創(chuàng)建了兩個(gè)任務(wù)。一個(gè)任務(wù)使板上LED 每一秒閃動(dòng)一次, 另一個(gè)任務(wù)是用片內(nèi)A/ D 采樣板上的加速度傳感器信號(hào), 并在數(shù)碼管上顯示出當(dāng)前加速度數(shù)值。最后調(diào)用OSStar t( ) 啟動(dòng)多任務(wù)調(diào)度。

3. 1 定義每個(gè)任務(wù)的堆棧大小

OS_STK

TaskStartStk[ T ASKSTART ST K_SIZE] ;

OS_STK ADT askStk[ T ASKSTK_SIZE] ;

然后在main( ) 函數(shù)里系統(tǒng)初始化:

OSInit( ) ;

3. 2 創(chuàng)建任務(wù)

OST askCreateEx t( TaskStart, ( void * ) 0, ( OS _ ST K * )

& T askStar tSt k[ T ASKSTARTST K_SIZE1] , T ASK _START _

PRIO, TASK_START_PRIO, ( OS_ST K* ) & T askStart St k[ 0] ,

TASK_ST ART_ST K_SIZE, ( vo id * ) 0, OS_TASK_OPT _ST K_

CH K| OS_TASK_OPT_STK_CLR) ;

OSTaskCreateExt ( ADT ask, ( vo id * ) 0, ( OS _ STK * )

& ADTaskStk[ TASKST K_SIZE1] , ADTASK_PRIO, ADT ASK

_ PRIO, ( OS _ ST K * ) & ADTaskStk [ 0] , TASK _ ST K _SIZE,

( vo id * ) 0, OS_TASK_OPT_STK_CHK) ;

3. 3 系統(tǒng)啟動(dòng)運(yùn)行

OSStart( ) ;

3. 4 測(cè)試結(jié)果

測(cè)試代碼經(jīng)過(guò)編譯下載到實(shí)驗(yàn)板上運(yùn)行后, 通過(guò)實(shí)驗(yàn)板上顯示的信息, 表示兩個(gè)任務(wù)在交替運(yùn)行, 說(shuō)明移

植工作是成功的, 如圖5 所示。

 

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

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

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

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

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

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

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

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

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

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

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

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

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

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

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

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

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

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

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

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

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