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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3594|回復: 5
打印 上一主題 下一主題
收起左側

msp430f149開捕獲為什么無法進入case2

[復制鏈接]
回帖獎勵 60 黑幣 回復本帖可獲得 60 黑幣獎勵! 每人限 1 次(中獎概率 50%)
跳轉到指定樓層
樓主


#include "msp430x14x.h"
#include "iic.h"

unsigned int TA_OverflowCnt;      //TA溢出次數存放變量
unsigned long int Period;       //周期測量結果存放變量
unsigned int PervCapVal;         //前一次捕獲值存放變量

void display()     //顯示
{

    // OLED_ShowString(0, 2, "haha:",16);
     //OLED_ShowString(0, 0, "20",16);
     //OLED_ShowChar(33, 0, '-',16);
     //OLED_ShowChar(57, 0, '-',16);
   //  OLED_ShowChar(78, 2,':',16);
    // OLED_ShowChar(102, 2,':',16);
     OLED_ShowCHinese(0,0,0);
     OLED_ShowCHinese( 16,0,1);
    // OLED_ShowChar(32, 4,':',16);   
     //OLED_ShowString(0, 6, "new money:",16);
    // OLED_ShowNum(0,4,TA_OverflowCnt,2,16);
     OLED_ShowString(112,0,"HZ",16);
     //OLED_ShowNum(0,6,3,5,16);      //顯示
}

void main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;

  P1SEL |= BIT2;      //P1.2設為第二功能(TA1),不同單片機可能不同
  P1DIR &= ~(BIT2);   //P1.2(TA1)設為輸入(可省略)

  TACTL= TASSEL_2+MC_2+TACLR+TAIE;

  TACCTL1 =CAP + CM_3 +CCIS_1 + SCS + CCIE;
  //捕獲模塊1啟動,選擇TA1(P1.2)管腳作為捕獲源,上升沿捕獲,同步捕獲,開啟捕獲中斷

  Initial_LY096BG30();   //OLED初始化
  OLED_Clear();
  display();
  _EINT();      //總中斷允許
  LPM0;       //因為TimerA要用SMCLK,只能進入低功耗模式0休眠

}


#pragma vector = TIMERA1_VECTOR
__interrupt void TA_ISR(void)   //Timer_A中斷入口
{
  switch(TAIV)
  {
  case 2:     //比較/捕獲模塊1中斷
            Period = TA_OverflowCnt*65536 + TACCR1-PervCapVal;    //計算周期
            PervCapVal = TACCR1;      //保存捕獲值,供下一次使用
            TA_OverflowCnt = 0;     //溢出次數清零
            OLED_ShowNum(0,2,Period,5,16);      //顯示
            OLED_ShowNum(0,6,3,5,16);      //顯示
            break;
  case 4:   break;
  case 10:  TA_OverflowCnt++;     //TA每次溢出,溢出次數變量+1
            break;  
  }
}


進入不了這個中斷,我查了一下手冊    捕獲模式:寄存器 CCRx 捕獲了定時器 TAR 值時置位。
說明沒有捕獲到定時器TAR


  case 2:     //比較/捕獲模塊1中斷
            Period = TA_OverflowCnt*65536 + TACCR1-PervCapVal;    //計算周期
            PervCapVal = TACCR1;      //保存捕獲值,供下一次使用
            TA_OverflowCnt = 0;     //溢出次數清零
            OLED_ShowNum(0,2,Period,5,16);      //顯示
            OLED_ShowNum(0,6,3,5,16);      //顯示
            break;



問題是:為什么捕獲不了TAR中的值   我的oled ,脈沖輸入沒有問題


IMG_20210719_174246(1).jpg (1.68 MB, 下載次數: 122)

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

使用道具 舉報

沙發
ID:808634 發表于 2021-7-19 18:12 | 只看該作者
已解決,謝謝admin
回復

使用道具 舉報

板凳
ID:808634 發表于 2021-7-19 18:16 | 只看該作者
CCISx:在捕獲模式中用來定義提供捕獲事件的輸入源
0: 選擇 CCIxA
1: 選擇 CCIxB
2: 選擇 GND
3: 選擇 Vcc
應該選擇 CCIS_0  選擇CCIXA
因為我使用的就是Timer_A

評分

參與人數 1黑幣 +30 收起 理由
admin + 30 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

地板
ID:954170 發表于 2021-7-20 15:36 | 只看該作者
一是查看中斷是否打開;二是查看你的標志位是否置1或置0;三是查看中斷模塊初始化;我以前也試過這種情況。
回復

使用道具 舉報

5#
ID:81196 發表于 2021-7-21 14:34 | 只看該作者
首先確定你的捕獲源對不對,然后是確定源的上升下降沿方式,確定好了來龍去脈如果還是不行的話,那就是你配置不對,這兩點對了肯定能進去
回復

使用道具 舉報

6#
ID:781863 發表于 2021-7-29 13:57 | 只看該作者
應該是你的捕獲源不對
回復

使用道具 舉報

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

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 午夜在线小视频 | 国产在线一区二区 | 欧美久久一区二区 | 国产精品视频一二三区 | 欧美特级黄色 | 亚洲精品在线视频 | 一区在线观看视频 | 国产99精品 | 男女免费观看在线爽爽爽视频 | 日韩精品一区二区三区中文字幕 | 久久久久国产精品一区二区 | 青娱乐一区二区 | 欧美日韩一二三区 | 国产美女福利在线观看 | 亚洲大片 | 国产精品国产三级国产aⅴ原创 | 久久亚洲综合 | 国产精品视频综合 | 国产在线视频一区二区董小宛性色 | 日韩有码一区 | 在线观看你懂的网站 | 99精品在线免费观看 | 国产999精品久久久 精品三级在线观看 | 成人在线免费观看视频 | 国产精品久久久99 | 五月天激情综合网 | 欧美一区二区在线观看 | 99这里只有精品 | 国产精品久久久久久久久久久久冷 | 国产精品综合色区在线观看 | 罗宾被扒开腿做同人网站 | 精品一区二区久久久久久久网精 | 99在线免费观看视频 | 国产高清精品一区二区三区 | 狠狠干狠狠操 | 国产精品毛片一区二区在线看 | 久久精品色欧美aⅴ一区二区 | 国产精品久久久久久久久免费软件 | 天天操夜夜爽 | 欧美性极品xxxx做受 | 国产精品久久久久婷婷二区次 |