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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3369|回復: 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 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩一区精品 | 黄色一级大片在线免费看产 | av国产精品| 欧美成人不卡 | 91综合网 | 国产麻豆一区二区三区 | 久久91 | 青春草91| 极品销魂美女一区二区 | 麻豆一区二区三区精品视频 | 亚洲不卡在线观看 | 曰韩一二三区 | 欧美一区二区三区久久精品 | 成av在线 | 午夜精品久久久久久久久久久久久 | 国产精品久久久久久久久污网站 | 99在线精品视频 | 北条麻妃一区二区三区在线观看 | 一区二区三区四区国产 | 国产精品欧美一区二区三区不卡 | 九九伦理片 | 亚洲视频在线播放 | 99国产精品99久久久久久 | 中文字幕一区二区三区四区五区 | 日韩欧美二区 | 成人精品系列 | 无码国模国产在线观看 | 成人精品一区亚洲午夜久久久 | 中文字幕加勒比 | 香蕉久久久 | 一区二区三区影院 | 成人欧美一区二区三区黑人孕妇 | 欧美日韩一区二区三区在线观看 | 久久久精品国产 | 国产91亚洲精品一区二区三区 | 一区二区视频 | 亚洲综合在线一区二区 | 丁香婷婷在线视频 | 欧美中文字幕一区二区 | 麻豆精品国产91久久久久久 | 日韩免费福利视频 |