简 介: 利用了Infineon公司的高边LED驱动芯片TLD2131,TLD2331,来与NPN晶体管共同组成LED矩阵驱动电路,可以利用少量的GPIO来驱动LED矩阵显示。本文利用了三个TLD2131组成了3×3的LED矩阵,测试了电路的工作原理。为应用在智能车竞赛中显示电压大小的LED灯柱设计提供基础。

关键词TLD2131TLD2331LED智能车竞赛Infineon

#mermaid-svg-zXzzNOjyEeYk2dDC {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-zXzzNOjyEeYk2dDC .error-icon{fill:#552222;}#mermaid-svg-zXzzNOjyEeYk2dDC .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-zXzzNOjyEeYk2dDC .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-zXzzNOjyEeYk2dDC .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-zXzzNOjyEeYk2dDC .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-zXzzNOjyEeYk2dDC .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-zXzzNOjyEeYk2dDC .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-zXzzNOjyEeYk2dDC .marker{fill:#333333;stroke:#333333;}#mermaid-svg-zXzzNOjyEeYk2dDC .marker.cross{stroke:#333333;}#mermaid-svg-zXzzNOjyEeYk2dDC svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-zXzzNOjyEeYk2dDC .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-zXzzNOjyEeYk2dDC .cluster-label text{fill:#333;}#mermaid-svg-zXzzNOjyEeYk2dDC .cluster-label span{color:#333;}#mermaid-svg-zXzzNOjyEeYk2dDC .label text,#mermaid-svg-zXzzNOjyEeYk2dDC span{fill:#333;color:#333;}#mermaid-svg-zXzzNOjyEeYk2dDC .node rect,#mermaid-svg-zXzzNOjyEeYk2dDC .node circle,#mermaid-svg-zXzzNOjyEeYk2dDC .node ellipse,#mermaid-svg-zXzzNOjyEeYk2dDC .node polygon,#mermaid-svg-zXzzNOjyEeYk2dDC .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-zXzzNOjyEeYk2dDC .node .label{text-align:center;}#mermaid-svg-zXzzNOjyEeYk2dDC .node.clickable{cursor:pointer;}#mermaid-svg-zXzzNOjyEeYk2dDC .arrowheadPath{fill:#333333;}#mermaid-svg-zXzzNOjyEeYk2dDC .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-zXzzNOjyEeYk2dDC .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-zXzzNOjyEeYk2dDC .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-zXzzNOjyEeYk2dDC .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-zXzzNOjyEeYk2dDC .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-zXzzNOjyEeYk2dDC .cluster text{fill:#333;}#mermaid-svg-zXzzNOjyEeYk2dDC .cluster span{color:#333;}#mermaid-svg-zXzzNOjyEeYk2dDC div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-zXzzNOjyEeYk2dDC :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

TLD2131
目 录
Contents
LED矩阵
基于TLD2331
的LED矩阵
电路测试
电路设计
搭建电路
测试LED矩阵
测试总结
LED灯柱

§01 TLD2131


一、LED矩阵

  在 测试Infineon车载LED驱动芯片TLD2131 中对于1入3出的TLD2131的LED驱动芯片进行了初步测试。为了能够使用更少的MCU的IO口控制更多的LED,需要使用LED矩阵模式。这一点正好可以利用到TLD2132的高边驱动LED的特性,因此只要在辅助几个NPN三极管在底边进行选择,可以很方便组织LED的矩阵显示。

  对于N个上边输出端口,M个下边输出端口,可以形成N×MLED点阵控制。通过循环控制,可以动态形成对于单个LED的控制特性。

▲ 图1.1.1 LED 显示矩阵

二、基于TLD2331的LED矩阵

  Infineon公司的高边LED驱动芯片系列中,有三入三出的TLD2331-3EP,它的内部结构如下图所示。利用一个TLD2331-3EP便可以驱动三列LED,利用两个TLD2331便可以控制六列LED输出。因此在使用三个NPN三极管,便可以组成6×3=18个LED矩阵。

  为了验证TLD2331驱动特性,本文利用手边刚刚到手的TLD2131组成电路进行测试。

▲ 图1.2.1 TLD2131(左)TLD2331(右)内部功能图

§02 电路测试


一、电路设计1

  基于 三个 TLD2131 模拟一颗TLSD2331的高边控制,测试电路的特性。

1、电路原理图1

  利用三颗TLD2131组成3×3LED显示矩阵的电路原理图如下:

▲ 图2.1.1 利用三颗TLD2131组成3×3LED显示矩阵

2、快速制版实验PCB

  设计单面PCB实现上述原理图,可以适合使用 一分钟制版 制作实验电路。 下面是设计的相应的PCB。

▲ 图2.1.2 利用快速制版工艺制作的单面PCB设计

3、焊接PCB

  一分钟之后,通过快速制版获得PCB,进行焊接之后,形式调试电路。

▲ 图2.1.3 焊接实验电路板

二、搭建电路

1、在面包板上搭建电路

  在面包板上搭建测试电路。控制器使用 设计带有SD卡的 MM32F3277 MicroPython 实验板 来控制。控制管脚分布使用 PC0,1,2,3, PA0,1来控制。其中下载了 来自MindMotion在2021-11的版本MicroPython 。可以使用MicroPython来测试相应功能。

▲ 图2.2.1 在面包板上搭建的测试电路

2、连接关系

  MM32F3277测试电路板与LED矩阵测试控制端口之间的连接关系如下:

测试连接关系:
EN123:PC0,PC1,PC2
CN123:PC3,PA0,PA1

三、测试LED矩阵

1、整体闪烁

(1) 测试代码

from machine                import Pin
import utimerow = [Pin('PC%d'%i, Pin.OUT_PUSHPULL) for i in range(3)]
col = [Pin('PC3', Pin.OUT_PUSHPULL),Pin('PA0', Pin.OUT_PUSHPULL),Pin('PA1', Pin.OUT_PUSHPULL)]print("Light all LED.\r\n")while True:for r,c in zip(row, col):r(1)c(1)        utime.sleep_ms(250)for r,c in zip(row, col):r(0)c(0)utime.sleep_ms(250)

(2)测试结果

  软件运行后,可以看到所有(9颗)LED同时闪烁。

▲ 图2.3.1 所有LED闪烁

2、流水灯测试

(1)测试代码

from machine                import Pin
import utimerow = [Pin('PC%d'%i, Pin.OUT_PUSHPULL) for i in range(3)]
col = [Pin('PC3', Pin.OUT_PUSHPULL),Pin('PA0', Pin.OUT_PUSHPULL),Pin('PA1', Pin.OUT_PUSHPULL)]print("Light all LED.\r\n")ledrow = 0
rowbyte = [7]*3def LED1ms():global ledrow, rowbyte, row, colfor r,c in zip(row, col):r(0)c(0)rb = 0if ledrow == 0:ledrow += 1elif ledrow == 1:ledrow += 1else:ledrow = 0row[ledrow](1)rb = rowbyte[ledrow]if rb & 0x1: col[0](1)if rb & 0x2: col[1](1)if rb & 0x4: col[2](1)def SetLEDPoint(id):global rowbyterowbyte = [0]*3pp = id//3p3 = id - pp*3rowbyte[pp] = 1 << p3count = 0
position = 0
while True:LED1ms()utime.sleep_ms(1)count += 1if count >= 50:count = 0SetLEDPoint(position)position += 1if position > 8: position = 0

(2)测试结果

▲ 图2.3.2 测试流水灯的效果

3、测试LED柱

(1)测试代码

  在前面的测试代码的基础上增加SetLEDColumn()函数,并对主循环进行修改。

def SetLEDColumn(id):global rowbyterowbyte = [0]*3for i in range(id + 1):pp = i//3p3 = i - pp*3rowbyte[pp] |= 1 << p3#------------------------------------------------------------
count = 0
position = 0
dir = 0
while True:LED1ms()utime.sleep_ms(1)count += 1if count >= 50:count = 0if dir == 0:SetLEDColumn(position)else:SetLEDColumn(8 - position)position += 1if position > 8:position = 0if dir == 0: dir = 1else: dir = 0

(2)测试结果

▲ 图2.3.3 程序运行效果

 

※ 测试总结 ※


  利用了Infineon公司的高边LED驱动芯片TLD2131,TLD2331,来与NPN晶体管共同组成LED矩阵驱动电路,可以利用少量的GPIO来驱动LED矩阵显示。本文利用了三个TLD2131组成了3×3的LED矩阵,测试了电路的工作原理。为应用在智能车竞赛中显示电压大小的LED灯柱设计提供基础。

一、LED灯柱

  根据 第十七届全国大学生智能车竞赛 中要求,无线充电阻需要使用LED显示当前车模法拉电容上的电压大小。利用上面的参考设计,可以方便设计出由LED组成的发光阵列来显示。

  利用两颗TLD2331可以驱动6列LED,配合3个NPN晶体管可以控制18串LED显示。三个LED串联可以增加阵列的宽度,使得显示更加的醒目。

▲ 图3.1 18列独立控制的LED矩阵


■ 相关文献链接:

  • 测试Infineon车载LED驱动芯片TLD2131
  • TLD2131
  • 一分钟制版法
  • 设计带有SD卡的 MM32F3277 MicroPython 实验板
  • 测试MM32F3277-MicroPython 2021-11-17 版本
  • 第十七届全国大学智能汽车竞赛竞速比赛规则

● 相关图表链接:

  • 图1.1.1 LED 显示矩阵
  • 图1.2.1 TLD2131(左)TLD2331(右)内部功能图
  • 图2.1.1 利用三颗TLD2131组成3×3LED显示矩阵
  • 图2.1.2 利用快速制版工艺制作的单面PCB设计
  • 图2.1.3 焊接实验电路板
  • 图2.2.1 在面包板上搭建的测试电路
  • 图2.3.1 所有LED闪烁
  • 图2.3.2 测试流水灯的效果
  • 图2.3.3 程序运行效果
  • 图3.1 18列独立控制的LED矩阵

  1. 测试电路板AD工程文件:AD\Test\2021\TLD2131\TestTLD2131Mul.PcbDoc * ↩︎ ↩︎

利用TLD2131组成LED矩阵显示实验电路板相关推荐

  1. 升压芯片很简单(一),快速选择升压芯片+利用升压芯片设计LED电源

    升压芯片在电子电路中应用较多,但对于升压芯片,很多朋友并不了解.本文对于升压芯片的讲解,将基于两大方面:一.如何基于XL6009升压芯片设计LED闪光灯电源,二.如何快速选择直流升压芯片.如果你对本文 ...

  2. 最小系统开发板——利用STM32F103C8T6实现LED流水灯

    WeChat:[嵌入式工程师成长日记] https://mp.weixin.qq.com/s?__biz=Mzg4Mzc3NDUxOQ==&mid=2247484101&idx=3&a ...

  3. 利用74LS373对 LED 和数码管分别进行控制,数码管显示所亮 LED 的位置

      利用单片机 AT89C51 的 I/O 口,对 LED 和数码管分别进行控制.以实现 LED灯做流水运动,数码管显示所亮 LED 的位置. 使用74LS373可以节省I/O口 74LS373简介: ...

  4. 利用python-opencv对LED数码管显示数字进行有效识别

    因为项目原因,现在要搞一个LED数码管的数字识别,识别包含各种各样的数码管,需要做通用匹配的文件,主要是利用opencv的的函数调用,并结合段式数码管的发光物理特性进行有效识别. 在项目中因为需要匹配 ...

  5. 利用PWM实现LED呼吸灯

    一.实验目的 本实验使用TIM3和TIM4,分别输出一个PWM波形,PWM的占空比随时间变化,去驱动你外接的一个LED以及最小开发板上已焊接的LED(固定接在 PC13 GPIO端口),实现2个 LE ...

  6. 汇编实验1——利用8255实现LED的流水点亮实验

    前言 做这个实验耗时近半天,其中安装虚拟机5小时,编写程序3小时. 踩过不少的坑,比如说一开始一直显示不出来usb插件,最后发现是开关没开:又比如,程序逻辑没有问题,但始终显示不出正确的结果,最后发现 ...

  7. ARM裸机的知识总结(4) ------- 利用GPIO控制LED

    一.一步步点亮LED1_硬件工作原理及原理图查阅 1.LED物理特性介绍 LED本身有2个接线点,一个是LED的正极,一个是LED的负极.LED这个硬件的功能就是点亮或者不亮,物理上想要点亮一颗LED ...

  8. 利用4位led显示本机秒表时间的单片机c语言程序,基于单片机的一个2位的led数码显示作为_秒表_设计.doc...

    基于单片机的一个2位的led数码显示作为_秒表_设计 PAGE 1 PAGE 29 工程技术学院 课程设计 题 目:用单片机AT89C51设计一个2位的LED数码显示作为"秒表" ...

  9. CC2530利用中断控制LED

    #include<ioCC2530.h> #define led P1_4 #define key P1_1           /*           *延时函数           ...

最新文章

  1. Flex 布局:语法篇
  2. Action Golf 四个魔法球实战训练系列_huatuo_新浪博客
  3. 洛谷P2503 [HAOI2006]均分数据(模拟退火)
  4. (转)I,P,B帧和PTS,DTS的关系
  5. android 中的PopupWindow
  6. 转发:Hekaton:SQL Server集成的内存事务处理
  7. QQ提示应用程序并行配置不正确,绿色版QQ不能运行解决方法
  8. 10个人里有几个大学生?
  9. [react] 使用PropTypes和Flow有什么区别?
  10. NoSQL之【Redis】学习(二):配置说明
  11. 52单片机定时器2使用(C语言程序)
  12. html中怎么让字体闪烁,HTML最简单的文字闪烁代码
  13. 自己动手一步步安装Linux系统
  14. c语言:简单排序:冒泡排序法、选择排序法、插入排序法(待写)
  15. 自动跑程序vbs脚本
  16. 台式机怎么开启 无线lan服务器,台式机没有无线网卡怎么样实现上网
  17. 【笔记】【一文解决】linux - grep、sed、awk 『三剑客』
  18. huobi API使用经验整理
  19. 网络服务器配置管理综合实训项目心得体会,服务器的配置与管理实训报告.doc...
  20. python词云生成

热门文章

  1. Web开发常规调试方法与常见问题分析
  2. prototype中顶层元素的测试
  3. 关于string的一些心得体会
  4. Power Designer使用技巧
  5. web 移动端 ios 浏览器中 animation 动画异常
  6. 213. House Robber II
  7. RHEL 6.5 安装 was 8.5
  8. 中国小品演员都要卷舌?
  9. jquery插件,nocube
  10. 【已更新内测入口】阿里云宣布开放开源 AliSQL 数据库 性能可提升 70%