• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      飛思卡爾單片機(jī)脈寬調(diào)制模塊用法研究

      2018-09-13 10:47:16左明偉馮江榮王邦靖曼茂立
      科技創(chuàng)新與應(yīng)用 2018年23期
      關(guān)鍵詞:寄存器單片機(jī)

      左明偉 馮江榮 王邦靖 曼茂立

      摘 要:通過對(duì)MC9S12XS128單片機(jī)脈沖寬度調(diào)制模塊(PWM)的研究,主要了解了脈沖寬度調(diào)制模塊相關(guān)寄存器的功能,并深入探討脈寬調(diào)制模塊的調(diào)制方法,此外,也設(shè)計(jì)了適用于直流電機(jī)驅(qū)動(dòng)的程序,并在此基礎(chǔ)上進(jìn)行了詳細(xì)講解,以便更為直觀的了解并熟練地使用飛思卡爾單片機(jī)的脈沖寬度調(diào)制模塊。

      關(guān)鍵詞:脈沖寬度調(diào)制模塊;寄存器;單片機(jī)

      中圖分類號(hào):TM571.6 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):2095-2945(2018)23-0035-02

      Abstract: By studying the pulse width modulation module PWM of MC9S12XS128 single chip microcomputer, the function of the registers related to the pulse width modulation module is mainly understood, and the modulation method of the pulse width modulation module is discussed in depth. In addition, the modulation method of the pulse width modulation module is discussed. In order to understand and skillfully use the pulse width modulation module of Freescale single-chip microcomputer, a program suitable for direct current (DC) motor drive is also designed and explained in detail.

      Keywords: pulse width modulation module; register; single chip microcomputer

      引言

      飛思卡爾是全球知名的半導(dǎo)體公司[1],該公司為許多行業(yè)設(shè)計(jì)和制作嵌入式半導(dǎo)體產(chǎn)品,現(xiàn)如今幾乎所有市售的單片機(jī)都集成了PWM功能模塊[2]。脈寬調(diào)制技術(shù)是利用微處理器的數(shù)字輸出來對(duì)模擬電路進(jìn)行控制的一種非常有效的技術(shù),可以通過調(diào)整方波的占空比來實(shí)現(xiàn)輸出電壓的變壓變頻效果,脈寬調(diào)制技術(shù)以其控制簡(jiǎn)單、靈活和動(dòng)態(tài)響應(yīng)好的優(yōu)點(diǎn)成為電子技術(shù)最廣泛應(yīng)用的控制方式,在電機(jī)調(diào)速等領(lǐng)域的應(yīng)用日益廣泛,所以對(duì)脈寬調(diào)制模塊的學(xué)習(xí)與應(yīng)用是十分必要的。

      1 PWM主要寄存器介紹

      飛思卡爾單片機(jī)脈沖寬度調(diào)制是通過設(shè)置其內(nèi)部寄存器來輸出相應(yīng)的波形。

      1.1 時(shí)鐘寄存器

      時(shí)鐘寄存器主要包括:PWMCLK、PWMPCLK、PWMSCLA/PWMSCLB,這三個(gè)寄存器分別是PWM時(shí)鐘選擇寄存器、模塊時(shí)鐘源A、B預(yù)分頻寄存器、模塊時(shí)鐘源SA、SB預(yù)分頻寄存器[3]。PWM時(shí)鐘選擇寄存器用來選擇PWM通道使用A、B時(shí)鐘或者SA、SB時(shí)鐘的哪一個(gè)。它和周期寄存器共同決定了PWM輸出脈沖的頻率。

      1.2 周期寄存器

      PWMPER寄存器共有8個(gè),每一個(gè)通道都有一個(gè)這樣的周期寄存器。這個(gè)寄存器的值就決定了相關(guān)PWM通道的周期。周期寄存器的值越大,PWM調(diào)制精度越高[4]。

      1.3 占空比寄存器

      PWMDTY寄存器共有8個(gè),每一個(gè)通道都有一個(gè)這樣的占空比寄存器。這個(gè)寄存器的值就決定了相關(guān)PWM通道的輸出脈沖的占空比。

      2 PWM設(shè)置步驟及程序?qū)嵗?/p>

      在了解相關(guān)寄存器,并掌握脈沖寬度輸出頻率以及占空比的計(jì)算方法后,便可以進(jìn)行設(shè)置并輸出PWM波形了。

      2.1 PWM設(shè)置步驟如下[5]

      a.選擇極性PWMPOL;

      b.選擇及設(shè)置時(shí)鐘 PWMCLK、PWMPRCLK、PWMSCLA、PWMSCLB;

      c.對(duì)齊方式 PWMCAE;

      d.是否聯(lián)級(jí)輸出 PWMCTL;

      e.周期設(shè)定 PWMPER;

      f.占空比設(shè)定 PWMDTY;

      g.打開PWM通道PWME;

      2.2 程序?qū)嵗?/p>

      在直流電機(jī)控制電子節(jié)氣門開度的控制系統(tǒng)中PWM脈沖波形的輸出頻率常為1KHz,因而我們?cè)O(shè)計(jì)了相關(guān)程序。首先是進(jìn)行初始化函數(shù)設(shè)置[6](其中晶振頻率16MHz、總線時(shí)鐘32MHz)。

      #include "main.h"

      void PWM_Init(void)

      {

      PWMCTL_CON01=1; //聯(lián)結(jié)0號(hào)和1號(hào)通道形成16位PWM通道號(hào),由PWM1輸出

      PWMPOL_PPOL1=1; //通道01的極性為高電平有效

      PWMPRCLK=0x22; //A時(shí)鐘和B時(shí)鐘的分頻系數(shù)為4,頻率=32/4=8MHz

      PWMSCLA=2; //SA時(shí)鐘設(shè)置寄存器CLOCK SA=CLOCK A/(2*PWMSCLA)=8M/2*2=2MHz

      PWMCLK=0x02; //通道01用SA時(shí)鐘作為時(shí)鐘源

      PWMPER01=2000; //通道01的頻率=CLOCK SA/2000=1KHz

      PWMDTY01=0; //通道01的占空比為0%

      PWME_PWME1=1; //使能通道01

      }

      其次,主函數(shù)調(diào)用相關(guān)初始化函數(shù),并輸出相應(yīng)占空比的脈沖。

      void main(void)

      {

      INIT_PLL(PLL32) ; //初始化PLL為32M

      PWM_Init();

      EnableInterrupts; //使能中斷

      PWMDTY01=1000; //占空比=PWMPER01/PWMDTY01=1000/2000*100%=50%

      }

      在飛思卡爾MC9S12XS128單片機(jī)中用CodeWarrior5.0編譯并燒錄后,可從示波器讀取到如圖1的脈沖波形。如果我們想輸出占空比=70%的PWM波形,只需要改變主函數(shù)居中寄存器PWMDTY01=PWMPER01*70%=2000*70%=1400即可,圖2是占空比為70%的脈沖波形。

      3 結(jié)束語

      在完成了對(duì)飛思卡爾單片機(jī)脈沖寬度模塊的分析,并設(shè)計(jì)相關(guān)程序后,總結(jié)了如下幾個(gè)常見問題:

      3.1 頻率問題

      針對(duì)直流電機(jī)脈寬調(diào)制的PWM頻率問題[7],目前尚待商榷,建議進(jìn)行多次試驗(yàn)選取讓電機(jī)正常工作的頻率。其他如S3010舵機(jī)的使用頻率是50Hz-200Hz[8],對(duì)應(yīng)周期是5ms-20ms,超出頻率的話,舵機(jī)不會(huì)線性工作。

      3.2 級(jí)聯(lián)問題

      80引腳封裝的XS128系列單片機(jī)有8個(gè)8位精度的PWM通道[9],通過級(jí)聯(lián)可以得到4個(gè)16位精度的PWM通道,當(dāng)處于級(jí)聯(lián)模式時(shí),時(shí)鐘、極性以及對(duì)齊方式等都是受級(jí)聯(lián)后的低8位對(duì)應(yīng)通道的寄存器控制的,即由通道1、3、5、7的寄存器控制,且只有這幾個(gè)通道可以輸出PWM波形。

      參考文獻(xiàn):

      [1]周鑫玲.飛思卡爾8位單片機(jī)脈寬調(diào)制模塊用法探究[D].天津大學(xué),2010.

      [2]李剛.飛思卡爾8位單片機(jī)實(shí)用教程[M].北京:電子工業(yè)出版社,2009.

      [3]邵貝貝.單片機(jī)認(rèn)識(shí)與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2006.

      [4]劉和平.DSP原理及電機(jī)控制系統(tǒng)應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2007.

      [5]李勇.汽車單片機(jī)與車載網(wǎng)絡(luò)技術(shù)[M].北京:電子工業(yè)出版社,2015.

      [6]薛濤.單片機(jī)與嵌入式系統(tǒng)開發(fā)方法-HCS12XS[M].北京:清華大學(xué)出版社,2009.

      [7]庹朝永.基于單片機(jī)的直流電機(jī)PWM調(diào)速系統(tǒng)設(shè)計(jì)與開發(fā)[J].哈爾濱煤礦機(jī)械研究所,2011.

      [8]趙開理.基于單片機(jī)設(shè)計(jì)直流電機(jī)控制系統(tǒng)[D].南京郵電大學(xué),2017.

      [9]李瑋.基于單片機(jī)控制的直流電機(jī)PWM調(diào)速系統(tǒng)設(shè)計(jì)[J].河北省科學(xué)技術(shù)學(xué)協(xié)會(huì),2018.

      猜你喜歡
      寄存器單片機(jī)
      STM32和51單片機(jī)寄存器映射原理異同分析
      Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
      基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
      電子制作(2019年13期)2020-01-14 03:15:28
      基于單片機(jī)的層次漸變暖燈的研究
      電子制作(2019年15期)2019-08-27 01:12:10
      基于單片機(jī)的便捷式LCF測(cè)量?jī)x
      電子制作(2019年9期)2019-05-30 09:42:02
      小議PLC與單片機(jī)之間的串行通信及應(yīng)用
      電子制作(2018年12期)2018-08-01 00:48:04
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      基于單片機(jī)的平衡控制系統(tǒng)設(shè)計(jì)
      電子制作(2017年19期)2017-02-02 07:08:27
      Microchip推出兩個(gè)全新PIC單片機(jī)系列
      Lx5280模擬器移植設(shè)計(jì)及實(shí)施
      科技視界(2011年5期)2011-08-22 02:22:14
      鹤庆县| 阳西县| 阳高县| 明星| 中卫市| 东莞市| 化德县| 疏勒县| 迁西县| 张家界市| 寻甸| 柞水县| 禄劝| 曲麻莱县| 九江县| 盐山县| 德阳市| 鄂温| 静宁县| 文化| 舞钢市| 溧阳市| 东阿县| 墨脱县| 潢川县| 衡山县| 府谷县| 桐乡市| 和硕县| 开化县| 赞皇县| 象山县| 景德镇市| 河津市| 平和县| 临颍县| 库车县| 江山市| 新丰县| 房产| 呼图壁县|