目前有许多兼容1-Wire的外设,但对于那些缺乏1-Wire功能的外设,图1电路给出了实现它的一种方法。所示示例允许1-Wire网络通过SPI兼容的显示控制器控制远程LED显示屏。
图1.三个1-Wire开关(IC1–IC3)、三个XOR门(IC4)和相关元件使1-Wire网络能够通过SPI外设IC5控制该显示器。
为了产生MAX7221显示控制器(/CS、DIN和CLK)所需的3线SPI接口,1-Wire网络串行寻址三个1-Wire开关(DS2413)。第一个开关直接创建片选(/CS),第二个开关直接创建串行数据线(DIN),第三个开关在三个专用OR门的帮助下创建串行时钟(CLK)。
边缘检测器和单脉冲(IC4A-C)组合IC2(DATA1和DATA0)的输出,为SPI接口创建时钟信号。这种单触发时钟生成电路提高了数据速率,每个SPI位只需要一个1-Wire事务,而不是IC2输出直接用作时钟信号时所需的三个事务(数据、时钟低电平和时钟高电平)。
要向SPI输入传输数据,首先将IC1的输出设置为低电平。然后,使用以下规则传输数据位:
如果当前数据位与前一个位不同,请相应地设置IC2的DATA1输出。
如果当前数据位与前一个位相同,则切换IC3的DATA0输出。
该电路每次自动生成一个时钟脉冲,并且每个发送的数据位只需要一个1-Wire命令。数据传输完成后,发送最终的1-Wire命令,将IC1输出设置为高电平。
该电路允许1-Wire网络控制远程温度显示,但类似的技术可以提供与温度显示接口。2C 兼容器件,以及 ADC 和 DAC 等其他 SPI 外设。还可以使用额外的DS2413输出产生双向数据功能。请注意,SPI数据速率不是很快,外设的更新相对较慢,但对于许多远程监控应用来说,速度不是问题。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !