MSP430调试AT指令出错,附原代码及错误图片

2019-03-24 09:20发布

最近调试ES8266WiFi模块,发送AT指令,编译时报错Error[Pe018]: expected a ")" ,错误的那一行是“Uart1Sends("AT+CWJAP="Tenda_316","14911123649" ");”,注释掉这行程序后就没问题,请问这是怎么回事?该怎么改?O(∩_∩)O谢谢
D{ZO]G8`1HW$UTK)6L0(LAR.png
原代码我贴在下面:


#include<msp430x14x.h>
typedef unsigned char uchar;
typedef unsigned int  uint;
/*********************时钟初始化***************/

             void Int_clk()
              {
                  uchar i;
                  BCSCTL1 &= ~XT2OFF;     //打开XT振荡器
                  BCSCTL2 |= SELM1 + SELS;   //MCLK=8M ,SMCLK=1M
                  do
                  {
                    IFG1 &= ~OFIFG;    //清除振荡错误标志
                    for(i=0;i<100;i++){
                       //等待延时
                    }   
                  }
                    while((IFG1 & OFIFG) != 0);   //如果标志为1,则继续循环等待
                    IFG1 &= ~OFIFG;
                 }

/*************串口初始化:***************/
              void Init_UART1(void)
            {
                P6DIR |= BIT2;P6OUT |= BIT2;              // 关电平转换
                P3SEL |= 0x30;                            // P3.4,5选择为UART收发端口
                UCTL0 |= SWRST;
                UCTL0 |= CHAR;                            // 8-bit character
                UTCTL0 |= SSEL1;                          // select SMCLK as CLK     (要得到8M)
                UBR00=0X45;    //确定波特率的整数部分  8M/115200=69.44
                UBR10=0X00;
                UMCTL0=0x71;    //  确定波特率的小数部分
                ME1 |= UTXE0 + URXE0;                     // 使能USART0收发
                UCTL0 &= ~SWRST;                          // 初始化UART0状态机
                IE1 |= URXIE0;                            // 使能接收中断
                return;
            }

/**************************************************/
//延时函数大概是1s钟.
void DelaySec(int sec)
{
        uint i,j= 0;
        for(i=0; i<sec; i++)
           for(j=0; j<65535; j++);
}

/*****************串口1 发送字符串************************/
void Uart1Sends(uchar *str)
{
    while(*str != '')
      {
            while (!(IFG1 & UTXIFG0));                // TX缓存空闲?
            TXBUF0 = *str++;                       // 发送数据
      }
      while (!(IFG1 & UTXIFG0));
      IFG1|=UTXIFG0;   //中断挂起
}

void AT_WIFI()  
{
    Uart1Sends("AT+RST ");  //初始化
    DelaySec(3);//延时3秒
    Uart1Sends("AT+CWMODE=3 ");  
    DelaySec(3);//延时3秒
    Uart1Sends("AT+CWJAP="Tenda_316","14911123649" ");
    DelaySec(3);//延时3秒
}

void main()
{
    WDTCTL = WDTPW + WDTHOLD;
    Int_clk();
    Init_UART1();
    AT_WIFI();
}



此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
sint27
1楼-- · 2019-03-24 15:59
Uart1Sent函数只有一个形参,而你报错的那里放了两个字符串
wateras1
2楼-- · 2019-03-24 20:18
< :TI_MSP430_内容页_SA7 --> 楼主的代码即使编译出来也是无法和8266交互,你回车换行都错了,模块只会出错误。
Uart1Sends("AT+PING="baidu.com" "),看明白了吗?“前面需要,还有代码不是那样写的,最好用定时器时间片来做延时
zhangsg
3楼-- · 2019-03-24 21:08
 精彩回答 2  元偷偷看……
wateras1
4楼-- · 2019-03-25 01:38
不是,我建议你最好先用串口调试助手先测试下命令,转义字符需要。 6W~F`%6VZC]2%V[R1425]M5.png
我随便就好人做到底,送佛送到西天吧
//所有用到的AT命令结构体
AT_CMD at_cmds[] = {
    {AT_CMD_RST, "AT+RST ", AT_RST_TIMEOUT, AT_DEF_RETRIES, net_check_ready, ERR_AT_NAK},
    {AT_CMD_CWMODE, "AT+CWMODE=1 ", AT_DEF_TIMEOUT, AT_DEF_RETRIES, net_check_at_nochange, ERR_AT_NAK},

    {AT_CMD_SMARTCONFIG,"AT+CWSTARTSMART=1 ", AT_LINK_TIMEOUT, 1, net_check_smartconfig, ERR_AT_NAK},
    {AT_CMD_SMARTSTOP,"AT+CWSTOPSMART ", AT_SMARTLIK_TIMEOUT,AT_DEF_RETRIES, net_check_at, ERR_AT_NAK},
    {AT_CMD_CIPMUX, "AT+CIPMUX=0 ", AT_DEF_TIMEOUT, AT_DEF_RETRIES, net_check_at, ERR_AT_NAK},
    {AT_CMD_CIPSTART, NULL, AT_LINK_TIMEOUT, AT_DEF_RETRIES, net_check_alreay, ERR_AT_NAK},
    {AT_CMD_SENDLENGTH, NULL, AT_DEF_TIMEOUT, AT_DEF_RETRIES, net_check_send, ERR_AT_NAK},
    {AT_CMD_CIPCLOSE, "AT+CIPCLOSE ", AT_DEF_TIMEOUT, AT_DEF_RETRIES, net_check_at_error, ERR_AT_NOCARE},
    {AT_CMD_CWQAP, "AT+CWQAP ", AT_DEF_TIMEOUT, AT_DEF_RETRIES, net_check_at, ERR_AT_NAK},
    {AT_CMD_SEND, NULL, AT_DEF_TIMEOUT, AT_DEF_RETRIES, net_check_sendok, ERR_AT_NAK},
    {AT_CMD_SMARTRST,  "AT+RST ", AT_RST_TIMEOUT, AT_DEF_RETRIES, net_check_ready, ERR_AT_NAK},
    {-1,NULL,0,0,NULL,ERR_AT_NAK}
};

一周热门 更多>

相关问题

    相关文章