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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

MSP430單片機(jī) 定時器TA計(jì)時 程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:108615 發(fā)表于 2016-3-14 18:52 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
本程序是《MSP430系列單片機(jī)系統(tǒng)工程設(shè)計(jì)與實(shí)踐》書里面的源碼,(包含工程文件 (例2.8.19)))完整例程下載:http://www.zg4o1577.cn/bbs/dpj-46245-1.html

  1. #include <msp430x42x.h>
  2. #include "LCD_Display.h"
  3. #define Circle  207                     /*輪圈周長,單位cm*/
  4. unsigned int TA_OverflowCnt;                //TA溢出次數(shù)存放變量
  5. unsigned long int Period;                //周期測量結(jié)果存放變量
  6. unsigned int Speed;

  7. void main( void )
  8. {
  9.   WDTCTL = WDTPW + WDTHOLD;                      // 停止看門狗
  10.   FLL_CTL0 |= XCAP18PF;                   // 配置晶振負(fù)載電容
  11.   P1DIR &=~(BIT7);                        // P1.7設(shè)為輸入(可省略)
  12.   P1IES |=  BIT7;                                // P1.7設(shè)為下降沿中斷
  13.   P1IE  |=  BIT7;                         // 允許P1.7中斷
  14.   TACTL = TASSEL_1 + MC_2 + TAIE + TACLR; // TA清零并開始計(jì)時,ACLK,開中斷
  15.   BTCTL=0;
  16.   LCD_Init();
  17.   _EINT();                                     // 總中斷允許
  18.   LPM3;
  19. }


  20. #pragma vector = PORT1_VECTOR            //P1口中斷入口
  21. __interrupt void P1_ISR(void)        
  22. {
  23.   int i;
  24.   _BIC_SR(SCG0);            //清除SR寄存器的SCG0控制位,恢復(fù)時鐘準(zhǔn)確性
  25.   for(i=0;i<600;i++);       //抗抖動,略延遲后再做判斷
  26.   if((P1IN & BIT7) == BIT7) //如果P1.7變高(斷開),則判為毛刺
  27.    {
  28.      P1IFG=0; return;       //認(rèn)為開關(guān)信號無效,不作處理直接退出
  29.    }
  30.   if(P1IFG & BIT7)             //判斷P1中斷標(biāo)志第7位(P1.7)
  31.      {
  32.        Period=TA_OverflowCnt*65536+TAR; //得到相鄰兩次中斷之間的間隔時間
  33.        TA_OverflowCnt=0;
  34.        TACTL |= TACLR;      // TA清零,重新計(jì)時
  35.        Speed=(long)32768*Circle*36/(10*Period);
  36.        LCD_DisplayDecimal(Speed,2);
  37.      }
  38.   P1IFG=0;                  //清除P1所有中斷標(biāo)志位
  39. }
  40. #pragma vector=TIMERA1_VECTOR
  41. __interrupt void TA_ISR(void)                      //計(jì)滿至65536溢出
  42. {
  43.   switch( TAIV )
  44.   {
  45.     case  2:   break;
  46.     case  4:   break;                          
  47.     case 10:  TA_OverflowCnt++;                //TA每次溢出,溢出次數(shù)變量+1
  48.                 break;
  49.   }
  50. }
復(fù)制代碼



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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲欧美日韩久久 | 欧美一级视频在线观看 | 九九av | 亚洲专区在线 | www.欧美.com| 欧美日韩一区二区电影 | 91在线精品一区二区 | 少妇午夜一级艳片欧美精品 | 国产大片一区 | 免费看一区二区三区 | 中文字幕av免费 | 成人在线免费视频 | 欧美日韩成人在线 | 一区二区三区国产好的精 | 亚洲风情在线观看 | 精品成人佐山爱一区二区 | 久久精品国产一区二区三区不卡 | 免费能直接在线观看黄的视频 | 国产精品日韩高清伦字幕搜索 | 久久婷婷国产麻豆91 | 日韩精品一区二区三区中文字幕 | 欧美激情五月 | 国产日韩精品一区二区 | 国产成人精品一区二区三区四区 | 午夜精品一区二区三区在线视频 | 日本精品久久久一区二区三区 | 欧美一级大片免费看 | 一区二区三区高清 | 99久久婷婷国产综合精品电影 | 国产精品久久久久久久久免费桃花 | 色眯眯视频在线观看 | 久久99精品久久 | 亚洲精品欧美 | 久久久91精品国产一区二区精品 | 日本不卡一区二区三区 | 毛片com| 国产精品久久久久国产a级 欧美日本韩国一区二区 | 欧洲一级毛片 | 欧美一区在线视频 | 91精品入口蜜桃 | 色综合一区二区三区 |