新闻中心

EEPW首页 > 消费电子 > 设计应用 > 基于K9F6408U0A和SPDS202A的数码录音系统

基于K9F6408U0A和SPDS202A的数码录音系统

作者: 时间:2011-09-07 来源:网络 收藏
4 复制功能的实现

本文引用地址:https://www.eepw.com.cn/article/166060.htm

  为了能够保存和备份所录信息,应当考虑实现一种拷贝功能,即将一片 上的信息完全复制到另一片上。实现这一功能的硬件接口电路如图3所示。图中,两片 除片选线分开外,其余信号线均复用。采用如下程序可实现复制功能:

  void Copy(void)

  {FCEB2=1;

  FCEB1=0; /*选中第一片FLASH*/

  For(RowAdd2=0;RowAdd264;RowAdd2+ +)

  {for(RowAdd1=0;RowAdd1256;RowAdd1+ +)

  {BlockErase ( );} /*调用块擦除子函数,将第一片FLASH内容擦除*/

  }

  for(F1RowAdd2=0,F2RowAdd2=0;(F1RowAdd264)

  (F2RowAdd264);F1RowAdd2+ +,

  F2RowAdd2+ +)

  For(F1RowAdd1=0,F2RowAdd1=0;

  (F1RowAdd1256) (F2RowAdd2256);

  F1RowAdd1+ +,F2RowAdd1+ +)

  For(F1ColAdd=0,F2ColAdd=0;(F1ColAdd256) (F2ColAdd256);F1ColAdd=F1COAdd+128;F2ColAdd=F2ColAdd+128)

  {CE1=1;

  CE2=0;

  SetPointer=0x00;

  F1RdData( ); /*调用从第一片FLASH读数据子函数*/

  CE2=1;

  CE1=0;

  SendData( );/*调用向第二片FLASH页寄存器送数据子函数*/

  CE1=1;

  CE2=0;

  SetPointer=0x01; /*设置页寄存器指针指向页寄存器后半部分*/

  F1RdData( );

  CE1=1;

  CE2=0;

  SendData( );

  FwrData( ); /*执行页编程命令,将数据写入第二片FLASH*/

  }

  }

  }

  }

  5 结束语

  该可在一片64Mbit FLASH上记录长达3.7小时的语音信息。同时,为了能够保存所记录的信息,还可利用本文介绍的拷贝方法实现两片FLASH之间的拷贝。该可广泛应用于需要长时间语音记录的场合。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭