MSP430F149串口发送P1口状态给电脑MSP430F149串口发送P1口状态给电脑
/*程序,验验验验验P2口四位控制RS485命令送格式,验验验验验P1口有高平,验验验验
接P3.0口的灯一直,否不亮,同送示验验验验验验验验验验验验验验验验验P1口的状验*/
#include
unsigned char start=0,addright=0,flag=0,Dflag=0,Fflag=0,Buffer[30];unsigned i=0, bufferi=0,stop=0,stop1=0,aa[5],ADbit[5],j;
////////////////////...
MSP430F149串口发送P1口状态给电脑
/*程序,验验验验验P2口四位控制RS485命令送
,验验验验验P1口有高平,验验验验
接P3.0口的灯一直,否不亮,同送示验验验验验验验验验验验验验验验验验P1口的状验*/
#include
unsigned char start=0,addright=0,flag=0,Dflag=0,Fflag=0,Buffer[30];unsigned i=0, bufferi=0,stop=0,stop1=0,aa[5],ADbit[5],j;
/////////////////////////////////////////////////////////////////////////////////////////void Init(void)
{
BCSCTL1&=~0X80; //Xt2 is on
BCSCTL2 |=0X88; //SMCLK=XT2
P1DIR=0X00;
P2DIR=0X00;
UCTL0 &=~SWRST; //reset swrst and usart0 enable
UCTL0 = CHAR; // 8-bit character
UTCTL0 = SSEL1; // U0CLK = SMCLK=TX2
URCTL0 = 0x00;
UBR00 = 0x41; // 8MHz 9600
UBR10 = 0x03; // 8MHz 9600
UMCTL0 = 0x54; // 8MHz 9600 modulation 2.67----3
ME1 |= UTXE0 + URXE0; // Enable USART0 TXD/RXD
IE1 |= URXIE0; // Enable USART0 RX interrupt
P3SEL |= 0x30; // enable P3.4,5 USART0 TXD/RXD
P3DIR |= 0x10; // P3.4 output direction
UCTL1 &=~SWRST; //reset swrst and usart1 enable
UCTL1 = CHAR; // 8-bit character
UTCTL1 = SSEL1; // U1CLK = SMCLK=TX2
URCTL1 = 0x00;
UBR01 = 0x8A; // 8MHz 57600
UBR11 = 0x00; // 8MHz 57600
UMCTL1 = 0xEF; // 8MHz 57600 modulation 7.11111----4
ME2 |= UTXE1 + URXE1; // Enable USART1 TXD/RXD
IE2 &= ~URXIE1; // Enable USART1 RX interrupt
P3SEL |= 0xC0; // enable P3.6,7 USART1 TXD/RXD
P3DIR |= 0x40; // P3.6 output direction
P3DIR |=0X01; // P3.0 output direction to Usart1 for T
P3OUT |=0X01;
P4DIR=0XCF; //P4.0,1,2,3 AND P4.6,7 in out direction
P4OUT |=0X0F;
P5DIR |= 0x0F;
P5OUT &=~BIT0;
P5OUT |=BIT1;
}
/////////////////////////////////////////////////////////////////////////////////////////////
void delay(unsigned long DELAY)
{
unsigned long i;
for(i=DELAY;i>0;i--);
}
/////////////////////////////////////////////////////////////////////////////////////////////
int Hex2ASCII(int hex) // hexadecimal to ASCII conver
{ int result;
if (hex<=9)
{ result=hex+'0'; }
else if (hex==22)
{
result=46;
}
else
{ result=hex+('A'-10); } return result;
}
int Digit0(int Register) { int result;
result = Hex2ASCII(0x0F & Register);return result;
}
int Digit1(int Register) { int result;
result = Register >> 4;
result = Hex2ASCII(0x0F & result);return result;
}
void main(void)
{
int i=0;
int Data;
int number;
int mask;
unsigned jump_in,ADDRESS;
WDTCTL=WDTPW+WDTHOLD; //Stop WDT
Init(); //UART1 inition
_EINT();
jump_in= P2IN;
ADDRESS= jump_in + 'a'; //
number=ADDRESS-'a';
for(i=0;i>1; //移位验验验验8位
}
TXBUF1=13;
while ((UTCTL1&0x01)==0);
P5OUT &=~BIT0;
P5OUT &=~BIT1;
P4OUT &= ~0xC0;
delay(0x00FFF);
P3OUT |=BIT0; //验验
//delay(0x10FFF);
P4OUT |= 0xC0;
delay(0x00FFF);
}
}
本文档为【MSP430F149串口发送P1口状态给电脑】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。