打印

怎样从PSoC 3/5 的 EEPROM 中读取数据?

[复制链接]
489|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
renyaq|  楼主 | 2017-4-14 21:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
怎样从PSoC 3/5 的 EEPROM 中读取数据?
沙发
supernan| | 2017-4-14 21:28 | 只看该作者
好热的天,好大的问题

使用特权

评论回复
板凳
houcs| | 2017-4-14 21:31 | 只看该作者
EEPROM处于PSoC3/5内存空间里,EEPROM的最大值容量是2 KB。通过SPC可以写EEPROM,而读EEPROM可以通过PHUB。此外,CPU或DMA都可以直接访问EEPROM数据。EEPROM的存储器的基本指针定义在ydevice.h 的CYDEV_EE_BASE。 该定义通过PHUB可以用来存取EEPROM数据。

使用特权

评论回复
地板
renyaq|  楼主 | 2017-4-14 21:32 | 只看该作者

不要停

使用特权

评论回复
5
yinxiangh| | 2017-4-14 21:34 | 只看该作者

1.Reading EEPROM using CY_GET_REG8 API
  for (count = 0; count < 255;i++)
    EEPROM_Data[count] = CY_GET_REG8(CYDEV_EE_BASE + count);

使用特权

评论回复
6
pangb| | 2017-4-14 21:37 | 只看该作者

2.Reading EEPROM using data Pointer                                    
A pointer can be defined for the EEPROM address as follows:
  #define EEPROM_ADDR (unsigned char *) CYDEV_EE_BASE
  for (count = 0; count < 255; i++)
    EEPROM_Data[count] = EEPROM_ADDR[count];  

使用特权

评论回复
7
chenjunt| | 2017-4-14 21:40 | 只看该作者


3.Reading using DMA
The same base address can be used while reading using DMA.
  MyCh = DMA_DmaInitialize(0,0,0,0);
  MyTd = CyDmaTdAllocate();
  CyDmaTdGetConfiguration(MyTd, 255, DMA_INVALID_TD, (TD_INC_SRC_ADR |    TD_INC_DST_ADR));
  CyDmaTdSetAddress(MyTd, (uint16) CYDEV_EE_BASE, (uint16) EEPROM_Data)

使用特权

评论回复
8
renyaq|  楼主 | 2017-4-14 21:42 | 只看该作者
唉,还是没有什么结果,算了,先结贴吧,多谢大家啦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

700

主题

10138

帖子

4

粉丝