OpenEdv-开源电子网

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

模拟EEPROM每次要复位才能生效?

[复制链接]

14

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
194
金钱
194
注册时间
2019-6-18
在线时间
67 小时
发表于 2019-12-19 17:40:29 | 显示全部楼层 |阅读模式
5金钱
大家好,想写一个Flash模拟EEPROM的程序,串口接收到数据后保存到单片机内部,然后在读取出来,
通过串口显示到串口助手上,但是现在问题是每次都要复位后才能重新读取成功,
否则每次读取的都是上一次发送的结果

复制代码
  1. #define FLASH_SAVE_ADDR 0X08000000 + 15000          //设置FLASH 保存地址(必须为偶数,且其值要大于本代码所占用FLASH的大小+0X08000000)
  2. int main(void)
  3. {
  4.         u16 t;
  5.         u8 len = 4;
  6.         u8 datatemp[4];  //读出来的数据存放
  7.         u8 jieshou[4];  //接受到的数据存放
  8.   NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 设置中断优先级分组2
  9.         delay_init();                     //延时函数初始化          
  10.         uart_init(9600);                 //串口初始化为9600
  11.        
  12.         while(1)
  13.         {
  14.                         if(USART_RX_STA&0x8000)
  15.                 {
  16.                         len=USART_RX_STA&0x3fff;           //得到此次接收到的数据长度
  17.                        
  18.                 for(t=0;t<len;t++)                   //把BUF中的数据存到jieshou数组中去
  19.                         {  
  20.                                  jieshou[t] = USART_RX_BUF[t];
  21.                                   while((USART1->SR&0X40)==0);   //等待发送结束
  22.                         }
  23.                        
  24.                         STMFLASH_Write(FLASH_SAVE_ADDR,(u16*)USART_RX_BUF,len);  //写到内部
  25.       STMFLASH_Read(FLASH_SAVE_ADDR,(u16*)datatemp,len);  //从内部读出来
  26.                        
  27.                 for(t=0;t<len;t++)
  28.       {               
  29.                     printf("%x \r",datatemp[t]);     //把读出来的发出来
  30.                      printf("\r\n");
  31.                 delay_ms(400);
  32.       }
  33.      printf("发送完一次\r\n");
  34.                         USART_RX_STA=0;  //开启下一次接收
  35.                 }
  36.         }             
  37. }
复制代码




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

使用道具 举报

6

主题

412

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2722
金钱
2722
注册时间
2019-8-14
在线时间
415 小时
发表于 2019-12-19 21:43:13 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-27 05:40

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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