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

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀] 一、PWMPulse Width Modulation脈沖寬度調(diào)制,簡稱PWM。PWM(脈沖寬度調(diào)制)對模擬信號電平進行數(shù)字編碼的方法,計算機只能輸出0或5V的數(shù)字電壓值而不能輸出模擬電壓,而我們?nèi)绻氆@得一個模擬電壓值,則需通過使用高

 一、PWM

Pulse Width Modulation脈沖寬度調(diào)制,簡稱PWM。

PWM(脈沖寬度調(diào)制)對模擬信號電平進行數(shù)字編碼的方法,計算機只能輸出0或5V的數(shù)字電壓值而不能輸出模擬電壓,而我們?nèi)绻氆@得一個模擬電壓值,則需通過使用高分辨率計數(shù)器,改變方波的占空比來對一個模擬信號的電平進行編碼。

仍輸出數(shù)字信號,因為滿幅值的直流供電只有5V(1)和0V(0)兩種。電壓是以一種連接(1)或斷開(0)的重復(fù)脈沖序列被夾到模擬負(fù)載上去的,連接即是直流供電輸出,斷開即是直流供電斷開。通過對連接和斷開時間的控制,只要帶寬足夠,可以輸出任意不大于最大電壓值的模擬電壓。

輸出電壓=(接通時間/脈沖時間)*最大電壓值

12


二、51單片機的Timer

作者用的單片機是STC89C52,其內(nèi)部有3個16位Timer,分別為T/C0,T/C1,T/C2,通過配置相關(guān)寄存器即可實現(xiàn)Timer的功能控制。

控制PWM需要用到定時器來生成不同占空比的波形,采用定時器中斷的方式。

相關(guān)寄存器:

1.IE寄存器

名稱 功能
0 EX0 外部中斷0的中斷允許位
1 ET0 Timer0的溢出中斷允許位
2 EX1 外部中斷1的中斷允許位
3 ET1 Timer1的溢出中斷允許位
4 ES 串行口中斷允許位
5 ET2 Timer
6 - -
7 EA 中斷允許總控制位

2. TCON寄存器

名稱 功能
0 IT0 外部中斷0的觸發(fā)方式選擇位。功能和IE1類似
1 IE0 外部中斷0的中斷請求標(biāo)志位。功能和IE1類似
2 IT1 外部中斷1的觸發(fā)方式選擇位。當(dāng)IT1=1時,為下降沿觸發(fā)方式,也就是從高到低的跳變會觸發(fā)外部中斷1。當(dāng)IT1=0時,為低電平觸發(fā),也就是單片機檢測到該引腳電平為低時,會觸發(fā)外部中斷1
3 IE1 外部中斷1的中斷請求標(biāo)志位。當(dāng)IE1=1的時候,表示外部中斷1被觸發(fā),正在請求單片機處理中斷事件。當(dāng)單片機相應(yīng)中斷,處理中斷事件時,該位由單片機自動清零
4 TR0 啟動定時器/計數(shù)器0啟動位,功能和TR1類似
5 TF0 定時器/計數(shù)器T0溢出中斷請求標(biāo)志位。功能和TF1類似.
6 TR1 啟動定時器/計數(shù)器1啟動位,TR=1啟動計時,TR=0停止計時
7 TF1 定時器/計數(shù)器T1溢出中斷請求標(biāo)志位。當(dāng)T1溢出時,該位自動置1。單片機響應(yīng)相應(yīng)中斷時,系統(tǒng)自動清零TF1,也可以程序清零

3. TMOD寄存器

控制Timer0/1的工作方式

名稱 功能
0 M0 工作方式選擇位
1 M1 工作方式選擇位
2 C/T 計數(shù)器模式和定時器模式選擇位,C/T=1時,為計數(shù)器模式,C/T=0時,為定時器模式。C為counter的縮寫,T為timer的縮寫,這樣方便理解
3 GATE T1(0)的啟動源選擇位,GATE=1時,用外部中斷引腳INT1(INT0)上的高電平來啟動T1(T0);GATE=0時,用TCON里的TR1(TR0)來啟動T1(T0)。
4 M0 相似于0位
5 M1 相似于1位
6 C/T 相似于2位
7 GATE 相似于3位
M1 M0 工作方式
0 0 方式0,由TH1(TH0)的8位和TL1(TL0)的低5位組成一個13位定時器。
0 1 方式1,由TH1(TH0)的8位和TL1(TL0)的8位組成一個16位定時器。
1 0 方式2,TL1(TL0)溢出后,TH1(TH0)的數(shù)值自動填充到TL1(TL0)。
1 1 方式3,僅適用于T0,T0分成兩個8位計數(shù)器,T1停止計數(shù)。

4. Timer0/1計數(shù)寄存器

TL0

TL1

TH0

TH1

當(dāng)定時開啟后,TL0(TL1)自動跟隨機器周期加一。當(dāng)TL0(TL1)滿了后,自動清零同時向TH0(TH1)進一位,不需要手動操作.

而當(dāng)TL0(TL1)和TH0(TH1)都滿了以后,此時如果定時中斷和總中斷都已經(jīng)打開,那么就會發(fā)生溢出中斷,同時這兩個寄存器清零

三、運用PWM完成呼吸燈

1. 硬件電路


2. 軟件驅(qū)動

unsigned char PWM_COUNT; //計數(shù)

unsigned int HUXI_COUNT;    //占空比更新時間

unsigned char PWM_VLAUE;    //占空比比對值

bit direc_flag;             //占空比更新方向

 

void timer0_init()

{

    TMOD=0x02;          //模式設(shè)置,00010000,定時器0,工作于模式2(M1=1,M0=0)

    TH0=0x47;               //定時器溢出值設(shè)置,每隔200us發(fā)起一次中斷。

    TL0=0X47;

    TR0=1;                  //定時器0開始計時

    ET0=1;                  //開定時器0中斷

    EA=1;                       //開總中斷

    PWM_COUNT =0;

}

void time0() interrupt 1

{   

    PWM_COUNT++;

    HUXI_COUNT++;

    if(PWM_COUNT == PWM_VLAUE)      //判斷是否到了點亮LED的時候

        LED = 1;                    //點亮LED

    if(PWM_COUNT == 10)             //當(dāng)前周期結(jié)束

    {

        LED = 0;                    //熄滅LED

        PWM_COUNT = 0;              //重新計時

    }

    if((HUXI_COUNT == 600) && (direc_flag == 0))

    {                               //占空比增加10%

        HUXI_COUNT = 0;

        PWM_VLAUE++;

        if(PWM_VLAUE == 9)          //占空比更改方向

            direc_flag = 1; 

    }

    if((HUXI_COUNT == 600) && (direc_flag == 1))

    {                               //占空比減少10%

        HUXI_COUNT = 0;

        PWM_VLAUE--;

        if(PWM_VLAUE == 1)          //占空比更改方向

            direc_flag = 0; 

    }   

}

void main()

{

    HUXI_COUNT = 0;

    PWM_COUNT = 0;

    PWM_VLAUE = 5;

    direc_flag = 0;

    LED = 1;            //默認(rèn)LED熄滅   

    timer0_init();      //定時器0初始化

    while(1);

}

本站聲明: 本文章由作者或相關(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)閉