SPI接口AT93C46擦除操作详解.pdfVIP

  • 0
  • 0
  • 约小于1千字
  • 约 3页
  • 2026-01-18 发布于北京
  • 举报

在阅读本节内容前,请先参考《SPI-AT93C46介绍与操作说明》,本文只是解释程序。

AT93C46擦除时序图如下:

程序代码贴图如下:

9,12-14,16:参见spi_en的说明。

10:93c46的数据输出do。在该程序中需要检测do的输出状态来判断是否擦除完毕。低电

平表示忙,高电平表示擦除完毕。

11:待擦除单元的地址。由于在硬件中,93c46的ORG引脚接地,所以93c46的的存

储格式为128×8bits的格式。所以地址为7位。

15:擦除完毕信号。高电平表示擦除完毕。

31-76:产生擦写时序。

34-36:复位状态,cs置为0,表示无效,计数器cnt。

37-67:产生93c46的输入数据di,片选信号cs。

35:都是在clkin(即sk,见68-74的说明)的下降沿将数据输出。

39-42:产生起始位SB‘1’,并将擦除完毕标志finish置为0,表示还没擦除完毕。

43-46:产生擦除操作的操作码‘11’。

47-48:发送地址,先发送。

49-54:根据协议,拉低cs,维持至少250ns,然后再拉高cs。

55-60:通过判断do的状态一直等待擦除完毕,否则就一直死循环中这几句话里。

61-65:执行完擦除操作后,将cs置为无效状态,即低电平,将di置为低电平,finish

置为高(该信号一直为高,直到下一次启动信号的到来),表示擦除完毕,cnt置成

15,这样下一次触发这个process时,还会执行61-65句,一直这样循环,直到下

一次启动信号的到来,再执行一次擦除操作。

68-74:产生93c46的时钟信号sk。根据cnt的值,在一定的时间内将clkin赋值给sk,

形成93c46的时钟,其他的时刻使sk=0,即没有时钟脉冲。

文档评论(0)

1亿VIP精品文档

相关文档