本实用新型涉及一种led灯驱动控制,特别涉及一种使用i2c总线控制多个led灯的电路。
背景技术:
现有技术中,使用控制芯片去控制点亮多个led灯时,led灯的数量较多时会使用控制芯片大量的控制引脚,当led灯的数量多于控制芯片引脚数量时则无法实现控制。面对控制芯片引脚数量有限,又要控制多个led灯的问题,成为本发明需要解决的技术问题。
技术实现要素:
鉴于现有技术存在的问题,本实用新型提供一种基于pca9505控制多个led灯的电路,使用控制芯片的两个引脚作为i2c控制总线,通过i2c控制8个pca9505芯片,进而控制320个led灯。具体技术方案是,一种使用i2c总线控制多个led灯的电路,包括一个控制芯片、i2c数据线、8片pca9505芯片、320个led灯,其特征在于:电路连接为控制芯片的i2c引脚引出scl和sda两根数据线,八个pca9505芯片的scl和sda端口依次并接在两根i2c数据线上,两根i2c数据线分别各经一个4.7k电阻外接vdd,控制芯片和八个pca9505芯片的vdd端口外接vdd、gnd端口外接gnd,pca9505芯片a2、a1、a0端口并联外接gnd;pca9505芯片a1和a2端口并联外接gnd,a0端口串接4.7k电阻外接vdd;pca9505芯片a0和a2端口并联外接gnd,a1端口串接4.7k电阻外接vdd;pca9505芯片a2端口外接gnd,a0和a1端口分别串接4.7k电阻外接vdd;pca9505芯片a1、a0端口并连外接gnd,a2端口串接4.7k电阻外接vdd;pca9505芯片a1端口外接gnd,a0、a2端口分别串接4.7k电阻外接vdd;pca9505芯片a0端口外接gnd,a1、a2端口分别串接4.7k电阻外接vdd;pca9505芯片a2、a1、a0端口分别串接4.7k电阻外接vdd,按照上述规则依次连接为000~111即为pca9505的地址配置,每个pca9505的io端口地址为从io0_0~io0_7、io1_0~io1_7、io2_0~io2_7、io3_0~io3_7、io4_0~io4_7共40个,各连接led灯的正极,各led灯的负极经330ω电阻接外接gnd,八片pca9505芯片共连接320个led灯。
所述的控制芯片的i2c线路一个,即可控制320个led灯。
本实用新型的技术效果是,控制芯片使用i2c通信协议控制pca9505芯片,可实现任意多个led灯控制,节约控制芯片资源,且绝大多数控制芯片都支持i2c通信,使用i2c通信协议控制pca9505,实际应用范围广泛。
附图说明
图1是本实用新型的pca9505芯片与led灯电路连接图;
图2是本实用新型的pca9505芯片地址配置电原理图;
图3是本实用新型的i2c数据线与八个pca9505芯片电路连接图。
具体实施方式
下面结合附图对本实用新型进一步加以说明。
如图1所示,将vdd电源与pca9505芯片的vdd引脚相连接,保证芯片供电,将控制芯片的scl和sda引脚分别于pca9505芯片的scl和sda相连接,并上拉4.7k的电阻到vdd。
如图2所示,将pca9505的a2、a1、a0引脚分别连接到gnd或上拉4.7k电阻连接到vdd。连接到gnd时表示0,上拉4.7k电阻到vdd时表示1,将8片pca9505的a2、a1、a0,按照上述规则依次连接为000~111即为pca9505的地址配置。
如图3所示,每个pca9505的io端口从io0_0~io0_7,io1_0~io1_7,io2_0~io2_7,io3_0~io3_7,io4_0~io4_7共40个接口,连接led灯的正极。8片pca9505共连接320个led灯,并串联330ω电阻到gnd。
控制方法为,
(1)、控制芯片通过i2c选择出要控制的pca9505芯片;
(2)、控制芯片通过i2c控制已选出的pca9505寄存器,将pca9505的io端口设置为输出端口;
(3)、通过i2c控制已选出的pca9505寄存器,将pca9505的输出端口拉高或拉低。端口拉高点亮对应led灯,端口拉低熄灭对应led灯;
(4)、循环步骤(1)~(3)实现对320个led灯亮/灭的控制。
本发明有如下优点:
(1)使用i2c通信协议控制pca9505,绝大多数控制芯片(例如c8051,stm32,zynq等等)都支持i2c通信,因此实际应用范围广泛。
(2)与现有技术相比,只使用两个控制引脚即可实现最大数量为320个的led灯的控制,节约控制芯片资源。
1.一种使用i2c总线控制多个led灯的电路,包括一个控制芯片、i2c数据线、8片pca9505芯片、320个led灯,其特征在于:电路连接为控制芯片的i2c引脚引出scl和sda两根数据线,八个pca9505芯片的scl和sda端口依次并接在两根i2c数据线上,两根i2c数据线分别各经一个4.7k电阻外接vdd,控制芯片和八个pca9505芯片的vdd端口外接vdd、gnd端口外接gnd,pca9505芯片a2、a1、a0端口并联外接gnd;pca9505芯片a1和a2端口并联外接gnd,a0端口串接4.7k电阻外接vdd;pca9505芯片a0和a2端口并联外接gnd,a1端口串接4.7k电阻外接vdd;pca9505芯片a2端口外接gnd,a0和a1端口分别串接4.7k电阻外接vdd;pca9505芯片a1、a0端口并连外接gnd,a2端口串接4.7k电阻外接vdd;pca9505芯片a1端口外接gnd,a0、a2端口分别串接4.7k电阻外接vdd;pca9505芯片a0端口外接gnd,a1、a2端口分别串接4.7k电阻外接vdd;pca9505芯片a2、a1、a0端口分别串接4.7k电阻外接vdd,按照上述规则依次连接为000~111即为pca9505的地址配置,每个pca9505的io端口地址为从io0_0~io0_7、io1_0~io1_7、io2_0~io2_7、io3_0~io3_7、io4_0~io4_7共40个,各连接led灯的正极,各led灯的负极经330ω电阻接外接gnd,八片pca9505芯片共连接320个led灯。
2.如权利要求1所述的一种使用i2c总线控制多个led灯的电路,其特征在于:所述的控制芯片的i2c线路一个,即可控制320个led灯。