控制ESP8266的代碼- #include <msp430.h>
- unsigned char a1[]="AT+CIPMUX=1";
- unsigned char a2[]="AT+CIPSERVER=1,8080";
- unsigned int r[3]={0};
- unsigned char x='0';
- unsigned int m,n,b=0,p=0,o=0;
- void Port_Mapping(void);
- void USCI_A0_putchar(char i) //發(fā)送一個字符
- {
- UCA0TXBUF = i;
- while(!(UCA0IFG & UCTXIFG)); //等待該字節(jié)發(fā)送完畢
- }
- void sendString(unsigned char *p) //發(fā)送字符串
- {
- short t;int i,j;
- while(*p !='\0')
- {
- UCA0TXBUF=*p++;
- t=5;while(t--);
- while(!(UCA0IFG & UCTXIFG));
- }
- t=5;
- while(t--);//us_delay 5us
- USCI_A0_putchar('\r');
- t=5;
- while(t--);//us_delay 5us
- USCI_A0_putchar('\n');
- for(i=5000;i>0;i--)
- for(j=110;j>0;j--);//ms_delay 5000ms
- }
- void delay()
- {
- for(m=0;m<5000;m++)
- {
- for(n=0;n<30;n++);
- }
- }
- char USIC_A0_getchar() //接收一個字符
- {
- return(UCA0RXBUF); //返回接收值
- }
- int main(void)
- {
- WDTCTL = WDTPW + WDTHOLD; // Stop WDT
- P2SEL = BIT0+BIT1; //引腳配置
- P9DIR |= BIT0;
- P9OUT &= ~BIT0;
- while(BAKCTL & LOCKBAK) // Unlock XT1 pins for operation
- BAKCTL &= ~(LOCKBAK);
- UCSCTL6 &= ~(XT1OFF); // XT1 On
- UCSCTL6 |= XCAP_3; // Internal load cap // Loop until XT1 fault flag is cleared
- do
- {
- UCSCTL7 &= ~(XT2OFFG + XT1LFOFFG + DCOFFG); // Clear XT2,XT1,DCO fault flags
- SFRIFG1 &= ~OFIFG; // Clear fault flags
- }while (SFRIFG1&OFIFG); // Test oscillator fault flag
- Port_Mapping();
- UCA0CTL1 |= UCSWRST; // **Put state machine in reset**
- UCA0CTL1 |= UCSSEL_2; // SMCLK
- UCA0BR0 = 9; // 1MHz 115200 (see User's Guide)
- UCA0BR1 = 0; // 1MHz 115200
- UCA0MCTL |= UCBRS_1 + UCBRF_0; // Modulation UCBRSx=1, UCBRFx=0
- UCA0CTL1 &= ~UCSWRST; // **Initialize USCI state machine**
- UCA0IE |= UCRXIE; // Enable USCI_A0 RX interrupt
- delay();delay();delay();delay();delay();
- sendString(a1);
- delay();
- sendString(a2);
- _EINT();
- while(1);
- }
- #pragma vector=USCI_A0_VECTOR
- __interrupt void USCI_A0_ISR(void)
- {
- switch(__even_in_range(UCA0IV,4))
- {
- case 0:break; // Vector 0 - no interrupt
- case 2:
- x=USIC_A0_getchar();
- if(x==1) P9OUT |= BIT0;
- break;
- case 4: break;
- default: break;
- }
- }
- void Port_Mapping(void)
- {
- // Disable Interrupts before altering Port Mapping registers
- __disable_interrupt();
- // Enable Write-access to modify port mapping registers
- PMAPPWD = 0x02D52;
-
- #ifdef PORT_MAP_RECFG
- // Allow reconfiguration during runtime
- PMAPCTL = PMAPRECFG;
- #endif
-
- P2MAP0 = PM_UCA0TXD;
- P2MAP1 = PM_UCA0RXD;
- // Disable Write-Access to modify port mapping registers
- PMAPPWD = 0;
- #ifdef PORT_MAP_EINT
- __enable_interrupt(); // Re-enable all interrupts
- #endif
- }
復制代碼
全部資料51hei下載地址:
ESP8266.rar
(334.34 KB, 下載次數(shù): 32)
2018-11-2 21:20 上傳
點擊文件名下載附件
|