久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4293|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

MSP430F系列單片機學(xué)習(xí)筆記_庫函數(shù)編程思想

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:101489 發(fā)表于 2016-1-4 01:34 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
     最近時間在準備TI430的電子競賽,每天早上8點開始就一直在實驗室,呆到晚上12點多才回來,雖然人已經(jīng)很疲憊,但是還是堅持每天在EDN China博客更新MSP430F系列單片機的學(xué)習(xí)筆記,也算是經(jīng)驗總結(jié)吧。:)堅持!!
              今天想講一下的就是MSP430F系列單片機的庫函數(shù)編程思想,覺得效果很好,代碼可移植性很強,實用價值很高!!
              已經(jīng)很晚了,暫時分享一個簡單的例程吧。
                                             基于MSP430F系列單片機TB的PWM輸出
  1. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

  2. /****************************************************************************
  3. *  文件名稱:
  4. *          TB.c
  5. *  文件說明:
  6. *          使用TB輸出PWM波形,可通過set_TB設(shè)定不同的模式
  7. *****************************************************************************/
  8. #include  "msp430x44x.h"
  9. /******************************************************************************
  10. * 設(shè)置TimerB輸出PWM的工作模式
  11. ********************************************************************************/
  12. void set_TB(int mode)
  13. {
  14.      if (mode==2)
  15.      {                          // 翻轉(zhuǎn)/復(fù)位模式,CCR1=25%,CCR2=75%
  16.          TBCCR0  = 11;           // PWM 周期
  17.          TBCCTL1 = OUTMOD_2;      // PWM toggle/reset
  18.          TBCCR1  = 9;           // ccr1 Pwm cycle
  19.          TBCCTL2 = OUTMOD_2;      // PWM toggle/reset
  20.          TBCCR2  = 3;           // ccr2 Pwm cycle
  21.          P2DIR |= BIT1;         // p2.1 模式設(shè)置
  22.          P2SEL |= BIT1;         // p2.1 option select
  23.          P2DIR |= BIT2;         // P2.2 output mode
  24.          P2SEL |= BIT2;         // P2.2 option select
  25.          TBCTL |= MC0;          // 設(shè)置遞增模式
  26.       }else if (mode==0x03)
  27.       {                         //置位/復(fù)位模式,CCR1=25%,CCR2=75%

  28.          TBCCR0  = 11;           // PWM 周期
  29.          TBCCTL1 = OUTMOD_3;      // PWM toggle/reset
  30.          TBCCR1  = 9;           // ccr1 Pwm cycle
  31.          TBCCTL2 = OUTMOD_3;      // PWM toggle/reset
  32.          TBCCR2  = 3;           // ccr2 Pwm cycle
  33.          P2DIR |= BIT1;         // p2.1 output mode
  34.          P2SEL |= BIT1;         // p2.1 option select
  35.          P2DIR |= BIT2;         // P2.2 output mode
  36.          P2SEL |= BIT2;         // P2.2 option select
  37.          TBCTL |= MC0;          // 設(shè)置遞增模式
  38.       }else if (mode==0x04)
  39.       {                         // 翻轉(zhuǎn)模式,CCR1=50%,CCR2=50%
  40.          TBCCR0  = 11;           // PWM 周期
  41.          TBCCTL1 = OUTMOD_4;      // PWM toggle/reset
  42.          TBCCR1  = 9;           // ccr1 Pwm cycle
  43.          TBCCTL2 = OUTMOD_4;      // PWM toggle/reset
  44.          TBCCR2  = 3;           // ccr2 Pwm cycle
  45.          P2DIR |= BIT1;         // p2.1 output mode
  46.          P2SEL |= BIT1;         // p2.1 option select
  47.          P2DIR |= BIT2;         // P2.2 output mode
  48.          P2SEL |= BIT2;         // P2.2 option select
  49.          TBCTL |= MC0;          // 設(shè)置遞增模式
  50.       }else if (mode==0x06)
  51.       {                         //翻轉(zhuǎn)/置位模式,CCR1=75%,CCR2=25%

  52.          TBCCR0  = 11;           // PWM 周期
  53.          TBCCTL1 = OUTMOD_6;      // PWM toggle/reset
  54.          TBCCR1  = 9;           // ccr1 Pwm cycle
  55.          TBCCTL2 = OUTMOD_6;      // PWM toggle/reset
  56.          TBCCR2  = 3;           // ccr2 Pwm cycle
  57.          P2DIR |= BIT1;         // p2.1 output mode
  58.          P2SEL |= BIT1;         // p2.1 option select
  59.          P2DIR |= BIT2;         // P2.2 output mode
  60.          P2SEL |= BIT2;         // P2.2 option select
  61.         TBCTL |= MC0;           // 設(shè)置遞增模式
  62.       }else if (mode==0x07)
  63.       {                         // 復(fù)位/置位模式

  64.          TBCCR0  = 11;           // P1.2--> CCR1 - 75% PWM
  65.                                 // P2.0--> CCR2 - 25% PWM
  66.                                 // PWM 周期
  67.          TBCCTL1 = OUTMOD_7;      // ccrl reset/set
  68.          TBCCR1  = 9;           // ccr1 Pwm cycle
  69.          TBCCTL2 = OUTMOD_7;      // ccr1 reset/set
  70.          TBCCR2  = 3;           // ccr2 Pwm cycle
  71.          P2DIR |= BIT1;         // p2.1 output mode
  72.          P2SEL |= BIT1;         // p2.1 option select
  73.          P2DIR |= BIT2;         // P2.2 output mode
  74.          P2SEL |= BIT2;         // P2.2 option select
  75.          TBCTL |= MC0;          // 設(shè)置遞增模式
  76.       }
  77. }
  78. /******  在Timer B的不同工作模式下輸出PWM波形  *****/
  79. void main()
  80. {
  81.      unsigned int pwm_Delay;
  82.      char tmpv,tmp[5] = {2,3,4,6,7};

  83.      WDTCTL = WDTHOLD + WDTPW;  //關(guān)閉看門狗
  84.      FLL_CTL0 |= XCAP14PF;
  85.      TBCTL = TBSSEL0 + TBCLR;  //ACLK,清除TAR
  86.      tmpv=0;
  87.      while(1)
  88.      {
  89.         set_TB(tmp[tmpv]);      //選擇 PWM 模式
  90.         tmpv = (tmpv + 1) % 5;  //改變模式
  91.         for(pwm_Delay=0;pwm_Delay<0xffff;pwm_Delay++);//delay
  92.      };
  93. }

  94. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

  95. //愿意結(jié)識愛好電子的友友

  96. // :)
復(fù)制代碼




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:46943 發(fā)表于 2016-1-7 14:27 | 只看該作者
學(xué)習(xí)了,剛學(xué)單片機
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 天天拍天天草 | 欧美自拍另类 | 亚洲久视频 | www.日韩av.com | 精品一区二区在线观看 | 中文字幕亚洲在线 | 婷婷国产一区 | 日本韩国欧美在线观看 | 一级毛片在线播放 | 久久精品男人的天堂 | 亚洲免费三区 | 久久aⅴ乱码一区二区三区 亚洲欧美综合精品另类天天更新 | 激情视频网站 | 最新国产福利在线 | 午夜免费视频 | 天堂一区二区三区 | 日韩中文字幕在线免费 | 国产亚洲精品成人av久久ww | 欧美精品一区二区在线观看 | 青青久久久 | 毛片视频网站 | 在线观看a视频 | 成人免费观看男女羞羞视频 | 久久精品视频在线观看 | 日韩成人| 男女网站在线观看 | 激情欧美一区二区三区中文字幕 | 久久青青 | 成人影视网 | 国产一级在线 | 午夜视频在线免费观看 | 综合激情久久 | 日日操网站 | 亚洲一区二区在线 | 精品乱码一区二区 | 免费看国产精品视频 | 日韩中文字幕 | 日日操日日舔 | 成人免费在线观看 | 日韩一级免费电影 | 国产精品一区视频 |