基于MSP430F169的AD、DA控制程序
TX[18] = AD_PRE / 1000;
TX[19] = (AD_PRE - TX[18]*1000)/100;
TX[20] = (AD_PRE - TX[18]*1000 - TX[19]*100)/10;
TX[21] = (AD_PRE - TX[18]*1000 - TX[19]*100 - TX[20]*10);
}
index0 =(index0 +1)%Num_of_Results;
F_NEW=0XAA;
ADC12CTL0 |= ENC;
ADC12CTL0 |= ADC12SC; // 开始转换
}
// ADC12CTL0 |= ENC;
//DELAY(15);
}
}
#pragma vector=ADC_VECTOR
__interrupt void ADC12ISR (void)
{
//ADC12IE = 0x00;
//DELAY(2);
if(F_NEW==0XAA)
{
results0[index0] = ADC12MEM0; // Move results
results1[index0] = ADC12MEM1; // Move results
results2[index0] = ADC12MEM2;
results3[index0] = ADC12MEM3;
results4[index0] = ADC12MEM4;
F_NEW=0X55;
}
_NOP();
}
#pragma vector=UART0RX_VECTOR
__interrupt void usart0_rx (void)
{
rxdata0= RXBUF0;
//赋值前检验是否为合法首字母,合法再赋值
RX[k]=rxdata0;
if(RX[0]==0x42)
{
// TX[8+k]=rxdata0;
//输出接收到的值
TX[28+k]=rxdata0;
k++;
if(k==14)
{
k=0;
//验证接收是否有效
if(RX[0]==0x42&&RX[1]==0x52&&RX[12]==0x45&&RX[13]==0x44)//检验数据是否正确
//if(RX[0]==0x42&&RX[1]==0x72)
{
//P4OUT|=BIT0;
U0=RX[2];
U1=RX[3];
U2=RX[4];
U3=RX[5];
I0=RX[6];
I1=RX[7];
I2=RX[8];
I3=RX[9];
HV_ON=RX[10];
F_S=RX[11];
}
}
}
//熄灭指示灯
P4OUT &= ~BIT6;
}
#pragma vector=UART0TX_VECTOR
__interrupt void usart0_tx (void)
{
if(j>1&&j<=25)
{TXBUF0 = TX[j]+0x30;}
else
{TXBUF0 = TX[j];}
// TXBUF0 = TX[j];
j++;
// if(j==28)
if(j==42)
{j=0;}
//熄灭指示灯
P4OUT &= ~BIT7;
}
MSP430F169ADDA控制程 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)