eass_li

    1. 结贴。。。。 已经搞定了,谢谢各位关注。
    2. 已经参考了的,但TA与TB还是存在一些关键差异的:即定时器B无输入信号锁存功能(无SCCI);是否可通过CCI位来判断输入电平; 如下附上中断接收发送代码,劳烦各位帮忙看看,非常感谢啊: #if __VER__ < 200 interrupt[TIMERB0_VECTOR] void Timer_B (void) #else #pragma vector=TIMERB1_VECTOR __interrupt void TIMERB1_ISR (void) #endif {     // RX(接收字节)     if ( TBCCTL2 & CCIFG ) // RX on CCI2A?(如果CCI2A是捕获输入引脚)     {         TBCCR2 += Bitime;    // Add Offset to CCR2(下一定时时间为1位时间)                  if( TBCCTL2 & CAP ) // Capture mode = start bit edge(如果是在捕获模式,则是在等待起始位)         {             TBCCTL2 &= ~ CAP;        // Switch from capture to compare mode(得到起始位后改为比较模式)             TBCCR2 += Bitime_5;    //定时位置改到位的中间位置(加半个位的时间)         }         else         {             RX_DATA = RX_DATA >> 1;    //先收到的是低位             if (TBCCTL2 & CCI) // Get bit waiting in receive latch,TIMREB 无SSCI锁存位                 RX_DATA |= 0x80;    //CCI中锁存的是比较相等时的输入引脚上的信号             BitCnt --; // All bits RXed?    //位计数减1             if ( BitCnt == 0)        //接收完一个字节?             //>>>>>>>>>> Decode of Received Byte Here

最近访客

< 1/1 >

统计信息

已有44人来访过

  • 芯积分:--
  • 好友:--
  • 主题:1
  • 回复:2

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言