AW2013芯片讲解
文章目录
- 前言
- 一、AW2013芯片介绍
- 二、AW2013从机地址
- 三、AW2013读写时序
- AW2013写时序
- AW2013读时序
- 四、AW2013的INT引脚
- 五、LED作用和配置
- 描述
- LED控制
- PWM控制模式
- 简短编程模式
- 六、AW2013寄存器讲解
- 总结
前言
本篇文章将带大家学习AW2013芯片的使用。
一、AW2013芯片介绍
AW2013是AWINIC LED驱动器产品线中支持自动呼吸模式的3通道LED驱动器产品。它可以驱动3个独立的LED或一个RGB LED组。
AW2013通过常阳极恒定电流驱动LED。亮度可以通过256级PWM调制。输出电流可以在4个级别配置:15mA、10mA、5mA、0mA(默认)。
AW2013支持渐变的亮度控制效果,有两种模式:直接PWM控制模式和单次编程模式。在单次编程模式中,可以灵活设置呼吸速度、时序、亮度和重复次数。
工作温度范围为-40℃至85℃,封装为2mmx2mm的DFN-101。
应用领域
移动电话、手持设备
家用电器中的LED
MCU通过IIC协议和AW2013进行通信,AW2013可以驱动LED0~LED2这三个LED灯。
二、AW2013从机地址
AW2013的默认I2C设备地址(7位)是45h,后跟R/W位(Read=1/Write=0),形成一个从设备地址字节。
AW2013的设备地址可以通过设置内部配置寄存器lADR(地址为77H)进行修改。
三、AW2013读写时序
AW2013写时序
1.主机发送起始信号
2.主机发送从设备地址(7位)+ 读写位(r/w = 0)
3.从设备如果收到正确的从设备地址,则发送应答信号
4.主设备发送控制寄存器地址(8位)
5.从设备发送应答信号
6.主设备发送要写入到指定寄存器的数据字节
7.从设备发送应答信号。如果主设备要发送更多的数据字节,则控制寄存器地址将在应答信号后递增一(重复步骤6、7)
8.如果主设备不再发送数据字节,则从设备继续发送应答信号
9.主设备生成停止条件,表示写入周期结束
AW2013读时序
1.主机发送起始信号
2.主机发送从设备地址(7位)+ 读写位(r/w = 0)
3.如果从设备地址正确,从设备发送应答信号。
4.主设备发送控制寄存器地址(8位)。
5.从设备发送应答信号。
6.主设备生成停止条件,接着是起始条件或重复起始条件。
7.主设备发送从设备地址(7位)和数据方向位(r/w = 1)。
8.如果从设备地址正确,从设备发送应答信号。
9.从设备从指定寄存器读取数据字节。
10.如果主设备发送应答信号,从设备将控制寄存器地址增加一,然后从新的寄存器地址读取下一个数据。
11.如果主设备生成停止条件,读取周期结束。
四、AW2013的INT引脚
1.INTN引脚特性: INTN引脚是一个开漏输出,其活动状态为低电平。该信号被用来通知主设备某个已编程的操作已经完成。
2.GCR寄存器的最高3位: GCR寄存器的地址为01h,其中的最高3位是中断使能控制位。每个通道有一个独立的中断使能位,总共有三个位。这些位用于分别控制各个通道的中断使能状态。
3.INTN端口状态: 如果没有产生中断,INTN端口将保持高阻态输出,并且引脚应该通过外部连接到电源的上拉电阻上。如果发生中断,INTN端口将被拉低。
4.中断处理: 一旦发生中断,主设备可以读取ISR寄存器来确定中断的来源。ISR寄存器在读取操作后会自动清除,而INTN引脚将恢复为高阻态输出。
五、LED作用和配置
描述
AW2013是一款具有3个独立LED控制通道的芯片,可驱动3个单独的LED或一个RGB LED组。AW2013通过恒定电流驱动LED,可调节4个电流水平:0mA、5mA、10mA、15mA。此外,AW2013支持256个步骤的PWM占空比控制,以简化亮度控制。
LED控制
在AW2013中,每个通道可以独立配置。通过设置"LCTR.LEx"(其中x=0~2)的控制位,可以启用相应的通道。 "LCTR.LEx"位于寄存器LCTR(地址30h)的最低3位。
当"LCTR.LEx"等于0时,LEDx通道被禁用。
当"LCTR.LEx"等于1时,LEDx通道被启用。
PWM控制模式
AW2013可以通过将PWM模式控制位LCFGx.MD(其中x=0-2,地址31h~33h)设置为“0”而在PWM控制模式下工作。
在这种模式下,亮度由寄存器PWMx(其中x=0-2)直接控制。通过不断向寄存器PWMx写入不同的值,可以实现不同类型的亮度效果,从而调制LED的亮度。PWMx的值可以设置为0-255,不同的值对应不同的亮度。"0"对应于较暗,“255”对应于最大亮度。
AW2013还支持通过分别设置LCFGx.FILCFGx.FO来实现淡入/淡出效果。如果启用了这种效果,当设置到PWMx的值发生跳跃时,AW2013可以自动平滑亮度变化。
淡入/淡出的速度由寄存器LEDxT1/LEDxT3决定。
简短编程模式
AW2013可以通过将模式控制位LCFGx.MD(其中x=02,地址31h33h)设置为“1”而工作在单次编程模式。
在这种模式下,AW2013可以根据在呼吸循环中编程的时序来调制LED的亮度。TOT4定义了呼吸循环中的4个关键时序。TO是启动时的延迟时间。T1T4组成了一个完整的循环。通过为三个通道设置不同的TO~T4值,可以实现不同的RGB呼吸效果,包括自动颜色变化。
自动呼吸的重复次数可以通过LEDxT2.REPEAT进行配置。如果LEDxT2.REPEAT设置为“0”,自动呼吸将循环进行,永不停止。否则,它将重复LEDxT2.REPEAT次然后停止。
呼吸效果完成后,中断状态位ISR.LISx将自动设置为""。并且在主设备读取此寄存器后,此位将被清除。
在这种模式下,每个通道可以独立配置。呼吸效果将在写入LEDxT2后启动。如果用户希望同步三个通道同时开始,请按照以下步骤操作:
a) 将LCTR设置为0
b) 将PWMxMD设置为“0”
c) 配置TO~T4
d) 将PWMx.MD设置为“1”
六、AW2013寄存器讲解
寄存器作用:
寄存器映射:
寄存器具体描述:
总结
本篇文章就讲解到这里,下篇文章再继续为大家讲解更多精彩内容。
相关文章:

AW2013芯片讲解
文章目录 前言一、AW2013芯片介绍二、AW2013从机地址三、AW2013读写时序AW2013写时序AW2013读时序 四、AW2013的INT引脚五、LED作用和配置描述LED控制PWM控制模式简短编程模式 六、AW2013寄存器讲解总结 前言 本篇文章将带大家学习AW2013芯片的使用。 一、AW2013芯片介绍 AW…...
Spring JdbcTemplate Junit 测试 - ResultSetExtractor/RowMapper
Spring JdbcTemplate Junit 测试覆盖率 - 以 ResultSetExtractor / RowMapper 为例 1、RowMapper Mockito 测试 (1)创建实体类 User Data public class User {private Integer id;private String name;private String applicant;private String addre…...

RabbitMQ实战
文章目录 1、简介2、MQ优点缺点MQ的应用场景AMQP工作原理市面上常见的MQ 3、Linux安装RabbitMQ3.1 版本对应3.2 安装socat3.3 下载 Erlang/OTP、安装、验证 erlang方法一:1. 下载2. 将下载的Erlang服务上传到服务器上面3. 解压4. 编译erlang的依赖环境5. 安装Erlang…...

UI游戏设计模板大放送:7种别具匠心的创意!
随着游戏产业的快速发展,UI游戏设计已经成为一个热门的设计行业,但与之前的设计相比,UI游戏设计还是比较特殊的,主要体现在UI游戏设计难度大,需要大量的手绘内容和对游戏玩法的理解上。这些门槛需要大量的时间去学习&a…...

酷开系统 酷开科技,将家庭娱乐推向新高潮
在当今数字化时代,家庭娱乐已经成为人们日常生活中不可或缺的一部分。如果你厌倦了传统的家庭娱乐方式,想要一种全新的、充满惊喜的娱乐体验,那么,不妨进入到酷开科技的世界,作为智能电视行业领军企业,酷开…...
我精心制作的 python 一小时极简课程来了 ≧◠◡◠≦ 免安装程序+精简核心概念
我精心制作的 python 一小时极简课程来了 ≧◠◡◠≦ 免安装程序+精简核心概念 用过我的软件的朋友应该知道,目前我发布的所有的软件都是 python 写的,例如: 发票批量识别软件点云格式转换软件亲人微信消息记录提取软件批量 WORD-MD 文档中英翻译软件批量 TXT 文本转音频软件…...

220V交流转直流的简易电源设计
220V交流转直流的简易电源设计 设计简介设计原理电路图变压器电路交流转直流电路3.3V电源接口电路 PCB3D图 实践检验 设计简介 通过模拟电路的相关知识,尝试将220V的交流电转化为我们指定电压的直流电。 设计原理 将220V交流电转化为直流电的方法常用的有通过变压器…...

使用Nginx和uwsgi在自己的服务器上部署python的flask项目
Nginx 是一个高性能的 HTTP 和反向代理服务。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。 Nginx 专为性能优化而开发,性能是其最重要的考量指标,实现上非常注重效率,能经受…...

【Windows 开发环境配置——NVIDIA 篇】CUDA、cuDNN、TensorRT 三件套安装
CUDA 从CUDA Toolkit Archive下载相应版本的离线安装包,这里以11.7为例。 打开安装包,在安装选项选择自定义模式,点击下一步。 在自定义安装选项中,仅选择CUDA组件(其中Nsight相关组件用于代码调试与性能分析ÿ…...

【C++】【Opencv】cv::GaussianBlur、cv::filter2D()函数详解和示例
本文通过函数详解和运行示例对cv::GaussianBlur和cv::filter2D()两个函数进行解读,最后综合了两个函数的关系和区别,以帮助大家理解和使用。 目录 cv::GaussianBlur()函数详解运行示例 filter2D()函数详解运行示例 总结两个函数联…...

【数据分享】1961—2022年全国范围的逐日降水栅格数据
降水数据是我们在各项研究中最常用的气象指标之一!之前我们给大家分享过来源于国家青藏高原科学数据中心发布的1901-2022年1km分辨率逐月降水栅格数据以及1901-2022年1km分辨率逐年降水栅格数据(均可戳我跳转)!很多小伙伴拿到数据…...

[Linux] 网络文件共享服务
一、存储类型 存储类型可分为三类:DAS(直连式存储),NAS(网络附加存储),SAN(存储区域网络)。 1.1 DAS 定义: DAS是指直连存储,即直连存储,可以理解为本地文…...

二十七、W5100S/W5500+RP2040树莓派Pico<iperf 测速示例>
文章目录 1 前言2 简介2 .1 什么是网络测速技术?2.2 网络测速技术的优点2.3 网络测速技术数据交互原理2.4 网络测速应用场景 3 WIZnet以太网芯片4 示例概述以及使用4.1 流程图4.2 准备工作核心4.3 连接方式4.4 主要代码概述4.5 结果演示 5 注意事项6 相关链接 1 前言…...

非常经典的一道SQL报错注入题目[极客大挑战 2019]HardSQL 1(两种解法!)
题目环境: 没错,又是我,这群该死的黑客竟然如此厉害,所以我回去爆肝SQL注入,这次,再也没有人能拿到我的flag了 做了好多这个作者出的题了,看来又要上强度了 判断注入类型 username:a…...

创建一个用户test且使用testtab表空间及testtemp临时表空间并授予其权限,密码随意
文章目录 1、连接到数据库2、创建表空间3、创建用户4、授予权限5、测试 1、连接到数据库 sqlplus / as sysdba2、创建表空间 创建testtab表空间 CREATE TABLESPACE testtab DATAFILE /u01/app/oracle/oradata/orcl/testtab.dbf SIZE 50M AUTOEXTEND ON NEXT 5M MAXSIZE …...

Linux网络应用层协议之http/https
文章目录 目录 一、http协议 1.URL 2.http协议格式 3.http的方法 4.http的状态码 5.http常见header 6.实现一个http服务器 二、https协议 1.加密 2.为什么要加密 3.常见的加密方式 对称加密 非对称加密 4.https的工作过程探究 方案1 只使用对称加密 方案2 只使…...

LLM(四)| Chinese-LLaMA-Alpaca:包含中文 LLaMA 模型和经过指令微调的 Alpaca 大型模型
论文题目:《EFFICIENT AND EFFECTIVE TEXT ENCODING FOR CHINESE LL AMA AND ALPACA》 论文地址:https://arxiv.org/pdf/2304.08177v1.pdf Github地址:https://github.com/ymcui/Chinese-LLaMA-Alpaca 一、项目介绍 通过在原有的LLaMA词…...

虚拟机CentOS 8 重启后不能上网
情况说明:原本虚拟机是可以上网的,然后嘚一下,重启后,连接不上网络,完了,上网查找一堆质料,我的连接方式是桥接模式(复制物理网络连接状态)。 好,有人说是vmn…...

让AI拥有人类的价值观,和让AI拥有人类智能同样重要
编者按:2023年是微软亚洲研究院建院25周年。25年来,微软亚洲研究院探索并实践了一种独特且有效的企业研究院的新模式,并以此为基础产出了诸多对微软公司和全球社会都有积极影响的创新成果。一直以来,微软亚洲研究院致力于创造具有…...

《C++避坑神器·十七》找到程序崩溃Bug的一个实用方法:dump调试
在检查程序报错除了断点调试,生成log日志,还有种直接的方法,调试dump文件,该调试方法可以在运行exe程序崩溃时进行调试。文章末尾有下载链接。 头文件 #include "crashdump.h"在mainWindow或主程序最开始处加下面代码…...

【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)
笔记整理:刘治强,浙江大学硕士生,研究方向为知识图谱表示学习,大语言模型 论文链接:http://arxiv.org/abs/2407.16127 发表会议:ISWC 2024 1. 动机 传统的知识图谱补全(KGC)模型通过…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...

Chrome 浏览器前端与客户端双向通信实战
Chrome 前端(即页面 JS / Web UI)与客户端(C 后端)的交互机制,是 Chromium 架构中非常核心的一环。下面我将按常见场景,从通道、流程、技术栈几个角度做一套完整的分析,特别适合你这种在分析和改…...

MySQL的pymysql操作
本章是MySQL的最后一章,MySQL到此完结,下一站Hadoop!!! 这章很简单,完整代码在最后,详细讲解之前python课程里面也有,感兴趣的可以往前找一下 一、查询操作 我们需要打开pycharm …...