I2C接口18路LED呼吸灯驱动IS31FL3218互相替代SN3218替换HTR3218

I2C接口18路LED呼吸灯控制电路IC

该型号IC为QFN24接口,属于小众产品,IS31FL3218、SN3218、HTR3218S管脚兼容,需要注意的是HTR3218管脚与其他型号不兼容。
I2C接口可实现多个LED灯的呼吸灯控制,可实现单色控制18个LED灯,双色控制9个LED灯,3色全彩LED灯可控制6个。
本文以SN3218做简单介绍。
本文末尾有32 级和64级的LED亮度伽玛补偿数据,可参考,在LED呼吸灯亮度控制有较大阶跃或亮度变化不明显时,可参考。
中文规格书见绑定资源
SN3218丝印
SN3218

SN3218典型应用电路

SN3218典型应用电路
典型应用电路图
注1:REXT= 3.3kΩ 时,每路最大输出电流为21mA。每路最大电流可通过外接电阻REXT设置,详情请见第10 页。
注2:PCB 布线时,芯片需远离手机天线放置,防止天线对芯片辐射造成影响。

IS31FL3218-QFLS2-TR

IS31FL3218-QFLS2-TR QFN-24, 2500/Reel
IS31FL3218-GRLS2-TR SOP-24 1000/Reel
IS31FL3218-GRLS2 SOP-24 30/Tube
IS31FL3218-QFLS2-TR

SN3218

产品型号 封装形式
SN3218AI424E QFN-24
SN3218AIN24E SOP-24
SN3218

HTR3218S

HTR3218 HTR3218SQER QFN4×4-24L 该型号管脚与其他不兼容
HTR3218S HTR3218SSQER QFN4×4-24L
HTR3218S

SN3218简介

SN3218A 是一款 18 路呼吸灯驱动芯片,每路单独 256级细腻灰度可控。单路最大输出电流可以通过一个外部电阻设定,最大电流为 38mA。
主控器件通过 I2C 接口对 SN3218A 进行编程控制,通过将 SDB 脚拉低或软件设置可关断芯片,进入低功耗模式。SN3218A 从地址为“1010 1000”。
SN3218A 使用 QFN-24(4mm × 4mm)和 SOP-24 的封装形式。工作电压在 2.7V ~ 5.5V,可在-40°C ~+85°C 的温度范围下工作。

SN3218特性

工作电压 2.7V ~ 5.5V
I2C 接口通信,支持连续写数据,地址自加功能
内置复位寄存器
每路 LED 可独立控制
LED 亮度支持 256 级细腻调节
-40°C ~ +85°C 的工作温度
QFN-24(4mm × 4mm)、SOP-24 封装

SN3218应用

手机和其它掌上电子设备的 LED 显示家电类 LED 显示

SN3218引脚定义

引脚号 引脚名 描述
1 OUT18 输出端口。
2 R_EXT 外接电阻输入引脚,设定输出电流值。
3 VCC 电源电压输入。
4 GND 接地。
5 SDA I2C数据线。
6 SCL I2C时钟线。
7~23 OUT1~ OUT17 输出端口。
24 SDB 关断芯片,低电平有效。
底部散热片 接地。

详细介绍

I2C 通信接口

SN3218A 使用两条符合 I2C 通信协议的串行传输线SDA 和 SCL 来控制芯片的工作方式。SN3218A 使用固定的 8 位从地址“1010 1000”。
本芯片只支持写操作。
I2C 总线支持数据双向传输。SCL 为单向端口,SDA为双向端口,开漏输出驱动,需外接上拉电阻(典型值为 4.7kΩ)。最大时钟频率为 400kHz。在这种情况中,主控器件为单片机等控制器,从器件为 SN3218A。
图 2 为 I2C 的时序图,在 SCL 为稳定的高电平时,SDA为闭锁状态并且在不使用的时候应保持高电平。
“开始”信号是由 SCL 为高电平时将 SDA 拉低产生的。首先传送 8 位从地址。当 SCL 为高电平时,SDA上的每个地址位必须保持稳定。
在最 后 一 位 数 据 传 送 出 去 后 , 主 控 器 件 会 检 测SN3218A 的应答信号。主控器件通过上拉电阻释放SDA 线为高电平,然后使 SCL 发送一个脉冲。如果SN3218A 正确的接收到 8 位数据,在 SCL 的脉冲期间它将使 SDA 拉低;如果 SDA 线不为低,则表示数据没有正确接收,主控器件将会发送一个“停止”信号(稍候介绍)并且中断数据传递。
在 SN3218A 的应答信号发送之后,寄存器的地址将被发送。寄存器地址发出后,SN3218A 也必须产生一个应答位来表示寄存器地址是否被正确接收。
接下来传送的是 8 位寄存器数据。在 SCL 保持稳定的高电平时每位数据位都是有效的。8 位数据传送完后,SN3218A 同样需要产生一个应答位来表示数据的正确接收。
“停止”信号将结束数据的传送。当 SCL 信号为高电平时将 SDA 拉高就产生了“停止”信号。

地址自加

如果有多个数据要传送给 SN3218A,只需发送第一个数据写入的寄存器地址。在 SN3218A 接收数据期间,寄存器地址会自动加 1,下一个传送的数据将写入新的寄存器地址中,如此继续,在数据连续传送期间寄存器地址会一直增加,直到 I2C 写入“停止”信号

内部框图

SN3218内部框图

PWM 控制

通过设置 PWM 寄存器(01h~12h)来调节 18 路 LED的亮度值。如在 PWM 寄存器中写入“0000 0100”,则输出为第 4 级亮度。
连续写入数据使 PWM 亮度逐渐升高或降低即可实现LED 呼吸效果。

REXT 设置

SN3218A 的 18 路输出最大电流可通过外接电阻 REXT设置。
REXT 推荐使用的最小阻值为 2kΩ,最大电流达 38mA。

LED 呼吸灯非线性修正

使用 SN3218A 实现 LED 呼吸效果时,为得到更好的呼吸效果,建议对呼吸控制进行非线性修正。
SN3218A 内部实现线性的 256 级灰度的 PWM 调光。
由于人视觉对亮度的误差,电流线性增加时,视觉上会感觉到呼吸开始时亮度变化快,然后很快进入亮度饱和的问题。为了解决这个问题,在呼吸时,应该采用伽玛补偿的方法,达到视觉效果的线性。

为了显示更细腻的效果,可采取更多的输出级数,防止呼吸时产生可观察到的亮度的跳变。推荐的经验值是,从最暗到最亮的一个呼吸周期 T 内,当 T=1s,推荐采用有伽玛补偿的 32 个亮度等级;当 T=2s,推荐采用有伽玛补偿的 64 个亮度等级,以此类推。上述推荐值是 LED 没有任何遮挡的条件下,测试得到的经验值。如果采用挡光板等遮挡 LED,使 LED 发光更加柔和,可以采用更少的亮度等级实现。具体的等级数,需要根据实际的挡光材料具体测试。

采用 32 级的LED亮度伽玛补偿数据:

32级的LED亮度伽玛补偿数据

采用 64 级的LED亮度伽玛补偿数据:

64 级的LED亮度伽玛补偿数据
注意:上表的32 级伽玛补偿数据为计算出的标准值,64 级伽玛补偿数据为实验结果的推荐值。

芯片关断模式

芯片关断模式可以用于减少功耗。在芯片关断模式时,所有的寄存器保持原数据不变。

软件关断

通过对配置寄存器(00h)中的 SSD 位置“0”,SN3218A进入软件关断模式。在此模式时,芯片只消耗 3.1μA(典型的)的电流。
当 SN3218A 进入软件关断模式时,所有的电流输出端口都将关闭,18 路 LED 无显示。

硬件关断

当 SN3218A 的 SDB 脚拉低时,芯片进入硬件关断模式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/5931.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kubernetes - Dashboard 配置用户名密码方式登录

Kubernetes - Dashboard 配置用户名密码方式登录 前言: 为了 K8s 集群安全,默认情况下 Dashboard 以 Token的形式登录的,那如果我们想以用户名/密码的方式登录该怎么操作呢?其实只需要我们创建用户并进行 ClusterRoleBinding绑定即…

Educational Codeforces Round 165 (Rated for Div. 2 ABCDE 题)视频讲解

A. Two Friends Problem Statement Monocarp wants to throw a party. He has n n n friends, and he wants to have at least 2 2 2 of them at his party. The i i i-th friend’s best friend is p i p_i pi​. All p i p_i pi​ are distinct, and for every i ∈…

并发编程之线程池的设计和原理

一、线程池 提前创建一系列的线程,保存在这个线程池中,有任务要执行的时候,从线程池中取出线程来执行。没有任务的时候,线程池放回去。 二、为什么要使用线程池 线程使用上的问题: 线程的频繁创建 和 销毁 线程的数量过多&…

政安晨:【Keras机器学习示例演绎】(二十六)—— 图像相似性搜索的度量学习

目录 概述 设置 数据集 嵌入模型 测试 政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: TensorFlow与Keras机器学习实战 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 本文…

基于Pytorch深度学习——多层感知机

本文章来源于对李沐动手深度学习代码以及原理的理解,并且由于李沐老师的代码能力很强,以及视频中讲解代码的部分较少,所以这里将代码进行尽量逐行详细解释 并且由于pytorch的语法有些小伙伴可能并不熟悉,所以我们会采用逐行解释小…

Word域代码学习(简单使用)-【SEQ】

Word域代码学习(简单使用)-【SEQ】 快捷键 序号快捷键操作1 Ctrl F9 插入域代码花括号2 F9 显示域代码结果3 Shift F9 切换为域代码4 Windows Alt F9 切换全部域代码 域代码说明 域代码不区分大小写在word中,依次选择插入➡文档部件➡域即可选择插入…

Linux 学习 --- 编辑 vi 命令

1、vi 基本概念(了解) 基本上 vi 可以分为三种状态,分别是命令模式 (command mode)、插入模式 (Insert mode) 和底行模式 (last line mode),各模式的功能区分如下: 命令行模式 command mode)  控制屏幕光标的移动&a…

PotatoPie 4.0 实验教程(31) —— FPGA实现摄像头图像高斯滤波

什么是高斯滤波 高斯滤波是一种常见的图像处理技术,用于去除图像中的噪声和平滑图像。它的原理基于统计学中的高斯分布(也称为正态分布)。 在高斯滤波中,一个二维的高斯核函数被用来对图像中的每个像素进行加权平均。这个高斯核…

jvm 马士兵 01

01.JVM是什么 JVM是一个跨平台的标准 JVM只识别class文件,符合JVM规范的class文件都可以被识别

AI智能名片商城小程序:引领企业迈向第三增长极

随着数字化浪潮的席卷,私域流量的重要性逐渐凸显,为企业增长提供了全新的动力。在这一背景下,AI智能名片商城系统崭露头角,以其独特的优势,引领企业迈向第三增长极。 私域流量的兴起,为企业打开了一扇新的销…

【codeforces】Immobile Knight

Immobile Knight 我感觉自己不太适合写codeforces,简单题也比较考验思维,当时这题看了半天以为是搜索,写了20分钟暴力交了,还好对的,20个人19个人5分钟不到速通第一题,唯留我一人在第一题凌乱。下来看看这…

深度学习中的归一化:BN,LN,IN,GN的优缺点

目录 深度学习中归一化的作用常见归一化的优缺点 深度学习中归一化的作用 加速训练过程 归一化可以加速深度学习模型的训练过程。通过调整输入数据的尺度,归一化有助于改善优化算法的收敛速度。这是因为归一化后的数据具有相似的尺度,使得梯度下降等优化…

密码学基础练习五道 RSA、elgamal、elgamal数字签名、DSA数字签名、有限域(GF)上的四则运算

1.RSA #include <stdlib.h>#include <stdio.h>#include <string.h>#include <math.h>#include <time.h>#define PRIME_MAX 200 //生成素数范围#define EXPONENT_MAX 200 //生成指数e范围#define Element_Max 127 //加密单元的…

dockerfile 搭建lamp 实验模拟

一 实验目的 二 实验 环境 1, 实验环境 192.168.217.88一台机器安装docker 并做mysql nginx php 三台容器 2&#xff0c; 大致框架 3&#xff0c; php php:Nginx服务器不能处理动态页面&#xff0c;需要由 Nginx 把动态请求交给 php-fpm 进程进行解析 php有三…

LT6911UXB HDMI2.0 至四端口 MIPI DSI/CSI,带音频 龙迅方案

1. 描述LT6911UXB 是一款高性能 HDMI2.0 至 MIPI DSI/CSI 转换器&#xff0c;适用于 VR、智能手机和显示应用。HDMI2.0 输入支持高达 6Gbps 的数据速率&#xff0c;可为4k60Hz视频提供足够的带宽。此外&#xff0c;数据解密还支持 HDCP2.2。对于 MIPI DSI / CSI 输出&#xff0…

van-cascader(vant2)异步加载的bug

问题描述&#xff1a;由于一次性返回所有的级联数据的话&#xff0c;数据量太大&#xff0c;接口响应时间太久&#xff0c;因此采用了异步加载的方案&#xff0c;看了vant的官方示例代码&#xff0c;照着改了下&#xff0c;很轻松地实现了功能。正当我感叹世界如此美好的时候&a…

【C++ —— 多态】

C —— 多态 多态的概念多态的定义和实现多态的构成条件虚函数虚函数的重写虚函数重写的两个例外协变&#xff1a;析构函数的重写 C11 override和final重载、覆盖(重写)、隐藏(重定义)的对比 抽象类概念接口继承和实现继承 多态的继承虚函数表多态的原理动态绑定和静态绑定 单继…

数据库(MySQL)基础:多表查询(一)

一、多表关系 概述 项目开发中&#xff0c;在进行数据库表结构设计时&#xff0c;会根据业务需求及业务模块之间的关系&#xff0c;分析并设计表结构&#xff0c;由于业务之间相互关联&#xff0c;所以各个表结构之间也存在着各种联系&#xff0c;基本上分为三种&#xff1a;…

OceanBase开发者大会实录-陈文光:AI时代需要怎样的数据处理技术?

本文来自2024 OceanBase开发者大会&#xff0c;清华大学教授、蚂蚁技术研究院院长陈文光的演讲实录—《AI 时代的数据处理技术》。完整视频回看&#xff0c;请点击这里&#xff1e;> 大家好&#xff0c;我是清华大学、蚂蚁技术研究院陈文光&#xff0c;今天为大家带来《AI 时…

【C语言】atoi和atof函数的使用

人生应该树立目标&#xff0c;否则你的精力会白白浪费。&#x1f493;&#x1f493;&#x1f493; 目录 •&#x1f319;知识回顾 &#x1f34b;知识点一&#xff1a;atoi函数的使用和实现 • &#x1f330;1.函数介绍 • &#x1f330;2.代码演示 • &#x1f330;3.atoi函数的…