一站式电子元器件采购平台

华强商城公众号

一站式电子元器件采购平台

元器件移动商城,随时随地采购

华强商城M站

元器件移动商城,随时随地采购

半导体行业观察第一站!

芯八哥公众号

半导体行业观察第一站!

专注电子产业链,坚持深度原创

华强微电子公众号

专注电子产业链,
坚持深度原创

电子元器件原材料采购信息平台

华强电子网公众号

电子元器件原材料采购
信息平台

DS3514上10位伽马寄存器的编程技术方案

来源:analog 发布时间:2023-08-08

摘要: DS3514伽马寄存器具有10位分辨率,这意味着有1024个可能的输出电平。这些伽玛寄存器的设置范围为十进制0-1023 (000h到3FFh)。在DS3514中,这个10位值被左对齐存储在两个8位寄存器中。

DS3514可编程伽马和V(COM)电压发生器具有提供10位分辨率的伽马缓冲器。这10位存储在两个8位寄存器中。这个应用笔记解释了如何计算伽马寄存器的寄存器值。

介绍

DS3514可编程伽马和V(COM)电压发生器具有10位分辨率的伽马缓冲器。这意味着有1024个可能的伽马输出级别。这些伽马寄存器的设置范围是0到1023 (000h到3FFh)。这个10位值左对齐存储在两个8位寄存器中。

下面的示例显示了如何将10位分配给两个寄存器。本例使用GM1的锁存器A寄存器,地址为02h和03h。最高有效字节(MSB)是地址02h,最低有效字节(LSB)是地址03h。LSB中的6个“不关心”位被读回为0。

Reg添加位7





位0
02 h位9位8位7位6位5位4位3位2
03 h位1位0XXXXXX

下面两种方法可以用来获得正确的数据来写入这些寄存器。

方法1

第一种方法同时计算MSB和LSB。首先,将所需的十进制设置(0到1023)乘以64,或者将十六进制设置(000h-3FFh)乘以40h。或者,二进制值可以左移六次。

示例1

期望设置:dec = 472;hex = 1D8h;bin = 01 1101 1000 472 × 64 = 30208 = 0111 0110 0000 0000 1d8h × 40h = 7600h = 0111 0110 0000 0000 shift二进制左6位= 0111 0110 0000 0000

示例2

期望设置:dec = 799;hex = 31Fh;bin = 110001 1111799 × 64 = 51136 = 11000111 1100000 31fh × 40h = C7C0h = 11000111 1100000 shift二进制左6位= 11000111 1100000


这个16位字现在可以分解成两个字节,MSB和LSB。从例1中,最高位字节是76h,它将被写入寄存器02h;最低有效字节是00h,它将被写入寄存器03h。

方法2

该方法独立计算MSB和LSB。这个方法在代码中的实现方式取决于所使用的编程语言。

MSB的数据是通过将十进制值除以4获得的,没有余数或四舍五入。这相当于将十六进制值除以04h或将二进制值右移2位。LSB的数据是通过用0x003(00 0000 0011)和原始期望设置来获得的,然后将结果移出6位(乘以64或40h)。

示例3

期望设置:dec = 799;hex = 31Fh;本= 11 0001 1111 msb计算:799/4 = 199 = C7h = 1100 0111 31fh / 04 h = C7h = 1100 0111数据转移对2位= 1100 0111 lsb计算:数据与03 h 31fh和003 h = 003 h 11 0001 1111 00 0000 0011 = 00 0000 0011数据左移6位(乘以64或40小时)3×64 = 192 = 0000 003h C0h = 1100×0011 h = C0h = 1100 0000 0000左移6位= 1100 0000

伽马数据编程

下图显示了如何使用I²C通信将示例3中的数据写入DS3514的寄存器02h和03h。此编程假设A0引脚接地,从而使DS3514从地址为C0h。在本例中,寄存器02h被写入C7h,寄存器03h被写入C0h。也可以使用单字节写入来写入该数据。


图1所示



声明:本文观点仅代表作者本人,不代表华强商城的观点和立场。如有侵权或者其他问题,请联系本站修改或删除。

社群二维码

关注“华强商城“微信公众号

调查问卷

请问您是:

您希望看到什么内容: