OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4197|回复: 1

当我使用STMFLASH_Read库函数读取flah去配置wifi的sta模式后无法退出程序,

[复制链接]

2

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2016-3-27
在线时间
9 小时
发表于 2016-4-26 00:03:13 | 显示全部楼层 |阅读模式
5金钱
const u8 TEXT_Buffer[]={"192.168.43.120"};
#define SIZE sizeof(TEXT_Buffer)                 //数组长度
#define FLASH_SAVE_ADDR  0X08031000         //设置FLASH 保存地址(必须为偶数,且其值要大于本代码所占用FLASH的大小+0X08000000)

u8 netpro=0;        //网络模式
u8 atk_8266_wifista_test(void)
{
        u8 datatemp[SIZE];
        u8 ipbuf[16];         //IP缓存
        u8 *p;       
        p=mymalloc(32);                                                        //申请32字节内存
        /****************************链接到112的函数**********************************************/
        atk_8266_send_cmd("AT+CWMODE=1","OK",50);                //设置WIFI STA模式
        atk_8266_send_cmd("AT+RST","OK",20);                //DHCP服务器关闭(仅AP模式有效)
        delay_ms(1000);         //延时3S等待重启成功
        delay_ms(1000);
        delay_ms(1000);
        delay_ms(1000);
        Show_Str(40,55,200,16,"w2222!",16,0);
        //设置连接到的WIFI网络名称/加密方式/密码,这几个参数需要根据您自己的路由器设置进行修改!!
        sprintf((char*)p,"AT+CWJAP=\"%s\",\"%s\"",wifista_ssid,wifista_password);//设置无线参数:ssid,密码
        while(atk_8266_send_cmd(p,"WIFI GOT IP",300));                                        //连接目标路由器,并且获得IP
        delay_ms(1000);
/****************************************配置服务器**************************************************/*
                       STMFLASH_Write(FLASH_SAVE_ADDR,(u16*)TEXT_Buffer,SIZE);
                        STMFLASH_Read(FLASH_SAVE_ADDR,(u16*)datatemp,SIZE);                                  //问题所在
       
                        atk_8266_send_cmd("AT+CIPMUX=0","OK",20);   //0:单连接,1:多连接
                        sprintf((char*)p,"AT+CIPSTART=\"TCP\",\"%s\",%s","192.168.43.120",(u8*)portnum);    //配置目标TCP服务器               
                        while(atk_8266_send_cmd(p,"OK",200));
                        atk_8266_send_cmd("AT+CIPMODE=1","OK",200);      //传输模式为:透传       
                Show_Str(40,55,200,16,"3333!",16,0);
/**************************************************************************************************/*       
               
                        LCD_Clear(WHITE);
                        POINT_COLOR=RED;       
                //        Show_Str(120+30,80,200,12,(u8*)ATK_ESP8266_WORKMODE_TBL[netpro],12,0);                 //连接状态
                        USART2_RX_STA=0;
                        atk_8266_quit_trans();
                        atk_8266_send_cmd("AT+CIPSEND","OK",20);         //开始透传  
               
                        myfree(p);                //释放内存                
                        Show_Str(40,55,200,16,"55555!!!",16,0);
                        return 1;
}

本人测试不使用flsh去配置wifi就可以正常使用执行以后的程序,但是读取了flash之后就无法跳出循环卡在了显示 “55555!!!”那去了。求教这是为什么,怎么解决

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2016-5-1 12:48:48 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-23 01:01

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表