初级会员 
  
	- 积分
 - 148
 
        - 金钱
 - 148 
 
       - 注册时间
 - 2016-5-17
 
      - 在线时间
 - 29 小时
 
 
 
 | 
 
 
 楼主 |
发表于 2017-8-16 19:49:21
|
显示全部楼层
 
 
 
 
您好,有几个问题请教下您: 
#define FLASH_SAVE_ADDR   0X08020000 
#define FLASH_SAVE_ADDR1  0X08024000 
#define FLASH_SAVE_ADDR2  0X08028000 
#define FLASH_SAVE_ADDR3  0X08034000 
#define FLASH_SAVE_ADDR4  0X08010000 
 
if((STMFLASH_ReadHalfWord(FLASH_SAVE_ADDR4))==1) 
                { 
                                STMFLASH_Read(FLASH_SAVE_ADDR1,(u16*)cipsta,sizeof(cipsta)); 
                                delay_ms(1000); 
                                STMFLASH_Read(FLASH_SAVE_ADDR,(u16*)wifi,sizeof(wifi)); 
                                delay_ms(2000); 
                                STMFLASH_Read(FLASH_SAVE_ADDR3,(u16*)cipopen,sizeof(cipopen)); 
                                delay_ms(1000); 
                                STMFLASH_Read(FLASH_SAVE_ADDR2,(u16*)cipsto,sizeof(cipsto)); 
                                delay_ms(1000);         
                        while(atk_8266_send_cmd(wifi,"OK",200));          
                        while(atk_8266_send_cmd(cipsta,"OK",200));   
                        while(atk_8266_send_cmd(cipopen,"OK",200));  
                } 
我是这样定义 然后是从低地址开始写串口接收到的数据 然后从高地址开始读就不会有说第一次写的乱码的现象,不知道这是什么原因?我可以确定接收的数据并没有超过我定义的地址也没有在同一个扇区。。。   还有一个问题就是我从串口接收到的数据比如先写在FLASH_SAVE_ADDR1 然后我在接收在写在这里就不行 也不知道这是为什么呢?不应该是覆盖掉原来的吗 |   
 
 
 
 |