TI中文支持网
TI专业的中文技术问题搜集分享网站

MSP430f4152控制红外发射问题

使用的单片机是MSP430f4152,红外发射端接在P6.6(UCA0TXD),调制口接在P3.0(TA1.2)

#include  <msp430x41x2.h>
void int_uart()
{P6SEL |= BIT5+BIT6;// P6.5,6 = USCI_A0 RXD/TXDUCA0CTL0=UCPEN+UCPAR;//开校验位,偶校验UCA0CTL1 |= UCSSEL_1;// CLK = ACLKUCA0BR0 = 27;// 32k/1200UCA0BR1 = 0x00;//UCA0MCTL = 0x12;// ModulationUCA0CTL1 &= ~UCSWRST;// **Initialize USCI state machine**IE2 |= UCA0RXIE;// Enable USCI_A0 RX interrupt
}
void main(void)
{WDTCTL = WDTPW+WDTHOLD;// Stop WDTFLL_CTL0 |= XCAP11PF;// Configure load capsint_uart();P3DIR |= 0x01;// P3.0 outputP3SEL |= 0x01;// P3.0 TA1 optionCCR0 = 26;// PWM PeriodCCTL1 = OUTMOD_7;// CCR1 reset/setCCR1 = 13;// CCR1 PWM duty cycleTACTL = TASSEL_2 + MC_1;// SMCLK, up modeCCTL0|= CCIE;_EINT();//----------------------------------------------------->开总中断for(;;){LPM3;//--------------------------------------------------->进LPM3模式_NOP();}
}
#pragma vector=USCIAB0TX_VECTOR
__interrupt void USCI0TX_ISR(void)
{while(!(IFG2&UCA0TXIFG));UCA0TXBUF =0xff; 
}

查看示波器的一端,输出时正旋波,数据发送的好像不对,接收端也收不到数据

Triton Zhang:

软件看上去也没有错。程序通过UART接收到RXD的数据然后从TXD发出来。

示波器测量的哪个位置?

电路中在红外发射管的通路上需要接一个限流电阻,也就是在VCC到红外管接地的通路上。否者在导通状态时,两个三极管只有0.1V的压降,VCC直接加在红外关上,红外管的导通电压应该只有0.3V左右的压降。

你在VCC接PNP三级管的射极管脚上串一个电阻,然后用示波器量电阻下端的电压.

赞(0)
未经允许不得转载:TI中文支持网 » MSP430f4152控制红外发射问题
分享到: 更多 (0)