新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 詳細注解的PWM c程序初學者適用

        詳細注解的PWM c程序初學者適用

        作者: 時間:2013-04-07 來源:網(wǎng)絡 收藏

        #include "stc2052.h"

        unsigned int pulse_width_MAX = 0xF0; // ; 脈寬最大值, 占空比 = 93.75%

        unsigned int pulse_width_MIN = 0x10; // ; 脈寬最小值, 占空比 = 6.25%

        unsigned int step =0x38;

        unsigned int pulse_width;

        unsigned int i,j;

        unsigned char state;

        void PCAinit(); //PCA模塊初始化

        void delay1ms(unsigned int TIME); //1ms延時程序(大概是1ms)

        void zhankongbi(); //調(diào)節(jié)占空比

        void st(); //用來表示pulse_width的狀態(tài)函數(shù)

        void main(void)

        {

        EA=0;

        PCAinit(); //初始化PCA定時器

        zhankongbi();

        }

        void PCAinit()

        {

        CMOD=0x80; //PCA 在空閑模式下停止 PCA 計數(shù)器工作

        //PCA 時鐘模式為fosc/12

        //禁止 PCA 計數(shù)器溢出中斷

        CCON=0x00; //禁止 PCA 計數(shù)器工作, 清除中斷標志、計數(shù)器溢出標志

        CL=0X00; //清0計數(shù)器

        CH=0X00;

        //下面設置模塊0為 8 位 輸出模式, PWM 無需中斷支持。脈沖在P3.7(第11腳)輸出

        CCAPM0=0x42; //PCA(計數(shù)器陣列)模塊0的工作模式 :8位PWM工作模式

        PCA_PWM0=0x00; //賦值為0,pwm才能有高電平輸出

        //下面設置模塊1為 8 位 PWM 輸出模式, PWM 無需中斷支持。脈沖在P3.5(第9腳)輸出

        CCAPM1=0x42; //PCA(計數(shù)器陣列)模塊1的工作模式 :8位PWM工作模式

        PCA_PWM1=0x00; //賦值為0,pwm才能有高電平輸出

        EPCA=1; // 開 PCA 中斷

        EA =1; // 開總中斷

        CR=1; //將PCA 計數(shù)器打開

        }

        pwm相關(guān)文章:pwm原理



        上一頁 1 2 下一頁

        關(guān)鍵詞: PWM c程序 初學者

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 丰宁| 交城县| 拉孜县| 大渡口区| 卢氏县| 松原市| 花莲县| 泸水县| 北票市| 安图县| 卢龙县| 饶河县| 武夷山市| 阿坝县| 沙坪坝区| 罗山县| 福清市| 东丰县| 左云县| 巍山| 阳东县| 沐川县| 临安市| 文昌市| 乡宁县| 葵青区| 临高县| 英超| 广安市| 汉沽区| 象山县| 龙门县| 彩票| 阿尔山市| 沐川县| 彭山县| 砚山县| 贵德县| 冀州市| 辽阳县| 兴安盟|