【发布时间】:2013-09-29 13:42:02
【问题描述】:
我正在 STM32 F107 上开发一个嵌入式系统,该系统通过 i2c 与 2 个从设备进行通信:一个 rfid 阅读器 rfid manual 和一个 eeprom 模块 eeprom manual。 这两个设备具有相同的从地址 A0(用于写操作)和 A1(用于读操作)。 如果只使用一个设备,它工作正常。但是如果我同时使用它们,我就有问题了。 首先,我从 rfid 读卡器读取卡 ID,然后将其写入 eeprom(直到这里一切正常),当我尝试从 rfid 读卡器再次读取时,我得到错误的输入数据,即使即使我换卡。 发生了什么,我可以做些什么来解决这个问题?
【问题讨论】:
-
不能用跳线修改其中一台设备的地址吗?
-
rfid module 你说的跳线是 jp1 和 jp2 吗?
-
是的,手册第 6 页。
-
虽然更改一个设备的地址是最好的选择,但如果由于某种原因您不能这样做,那么将其中一个设备移动到另一组引脚可能是一种选择 - 或者另一个I2C 接口引擎(如果可用),或者只是在 GPIO 上敲打(如果没有)。
标签: embedded rfid i2c stm32 eeprom