0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将AD9832/AD9835器件的输出编程为5 MHz

电子设计 来源:ADI 作者:ADI 2021-04-08 16:52 次阅读

本文将从频率寄存器(frequency register)、迟延寄存器(defer register)和命令序列(command sequence)为各位小伙伴详细说明如何将AD9832/AD9835器件的输出编程为5 MHz!

频率寄存器

AD9832含有一个32位频率寄存器。该寄存器如下所示,分解为4个字节。由于AD9832在任一命令中仅接受8位数据,为了完全编程32位寄存器,用户必须输入4条命令,每条命令仅传送8位数据。

出于寻址目的,该32位寄存器按以下方式分解:16 MSB定义为8个高位(H)和8个低位(L)。类似地,16 LSB采用相同的寻址方案,8个高位(H)和8个低位(L)。

pIYBAGBuw1yAE0d0AADsyXUB9FU700.png

频率字

频率字为32位,由用户输入至频率寄存器。该频率字决定输出频率,其依据是所需输出频率与参考时钟频率之比。在以下示例中,参考时钟为25 MHz。所需输出为5 MHz,因此,频率字的计算公式为:

(5/25) × (0xFFFFFFFF) = 0x33333333

迟延寄存器

迟延寄存器(带宽16位)充当被写入的最后一个寄存器的缓冲寄存器。迟延寄存器通过两次写操作写入。前8位将保留(迟延)于寄存器中,直到写入下8位。当全部16位均写入寄存器时,频率寄存器将被更新。迟延寄存器始终指向上次被写入的地址。

pIYBAGBuw3GANa2NAADJ4svLx4w211.png

由于迟延寄存器保存着上次被写入的16位数据,并且仍然指向上次被寻址的频率寄存器,因此,可通过一次写操作更新低8位或高8位。该操作被称为直写,实际上为正常写序列的最后部分。

请注意,如果用户希望写入到任何其他寄存器,则必须执行如上所示的完整写序列。

5 MHz程序的全部命令序列

0xF800 二进制 (1111 1000 0000 0000)

0x3333 二进制 (0011 0011 0011 0011)

0x2233 二进制 (0010 0010 0011 0011)

0x3133 二进制 (0011 0001 0011 0011)

0x2033 二进制 (0010 0000 0011 0011)

0xC000 二进制 (1100 0000 0000 0000)

命令序列说明

考虑到本文需要,16位SPI字将采用以下寻址方式:

D15, D14, D13, ..., D2, D1, D0

o4YBAGBuw5SAdumuAAGhjKYFrl4972.png

o4YBAGBuw6yAOeH5AAFBGCUysQ8097.png

现在,5 MHz将出现于输出引脚上。FSELECT引脚必须拉至GND,以选择频率寄存器0。

AD9835

AD9835是一款数控振荡器,在单个CMOS芯片内集成了一个相位累加器、一个COS查找表以及一个10位数模转换器,提供相位调制和频率调制两种调制能力。最高支持50 MHz时钟速率。频率控制精度可达40亿分之一。调制通过串行接口载入寄存器来实现。用户可使用一个关断位在不用时关断AD9835,将功耗降低至1.75 mW。

● 5 V电源

● 50 MHz速度

● 片内COS查找表

● 片内10位DAC

● 串行载入

● 关断选项

● 温度范围:−40°C至+85°C

● 200 mW功耗

● 16引脚TSSOP封装

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    30

    文章

    5025

    浏览量

    117694
  • AD9835
    +关注

    关注

    0

    文章

    7

    浏览量

    9933
  • AD9832
    +关注

    关注

    0

    文章

    5

    浏览量

    8333
  • 数控振荡器
    +关注

    关注

    0

    文章

    13

    浏览量

    10124
  • 相位累加器
    +关注

    关注

    0

    文章

    10

    浏览量

    9142
收藏 人收藏

    评论

    相关推荐

    Sensor如何将mipi端的设置YUv格式?

    我的Sensor输出是raw8图像,如何将 mipi 端的设置YUv格式,而不是UYVY格式。
    发表于 02-29 08:03

    HighTec下的TC212开发,如何将VADC设置TOM输出的PWM触发呢?

    HighTec下的TC212开发,如何将VADC设置TOM输出的PWM触发?
    发表于 02-04 09:22

    如何将TC1798器件添加到MDK KEIL?

    我正在尝试使用 KEIL MDK(µVision)英飞凌TC1798编程,但我不确定如何将TC1798器件添加到MDK KEIL。 谁能帮我拿到 .pack 或者.zip 对于 TC
    发表于 02-01 08:18

    如何将共享代码映射到DSPR5以及将其映射到其他RAM区域?

    Scratch-Pad Sram(CPU5 DSPR)相关联。 在链接器脚本中,我已经映射了每个.text 部分移至其各自的 PSPR 内核。 我想知道如何将共享代码映射到 DSPR5 以及
    发表于 01-24 07:26

    请问如何将ECO输出分配给PSoC6的GPIO?

    如何将ECO输出分配给PSoC6的GPIO
    发表于 01-16 07:56

    adv7611如何将输出的视频数据使用上升沿发送呢?

    adv7611该如何将输出的视频数据 使用上升沿发送呢
    发表于 01-15 06:24

    为什么AD9164工作在5GHz参考频率时, 输出频谱中有1250MHz和2500MHz的杂散是为什么?

    你好,我使用AD9164评估板时,使用参考时钟5GHz,在输出频率设置1254MHz时,发现输出
    发表于 12-01 12:31

    如何将AD5750接地?

    目前我正在利用AD5750-1做一个项目——“用于PLC和DCS应用的灵活、中级性能、电压和电流输出电路”。 我想询问如何将AD5750接地。AD5750有两个GND引脚,引脚5靠近DVCC,引脚
    发表于 11-27 08:25

    使用Ad9832输出Fsk信号,输出引脚的电压一直在随着时间衰减怎么解决?

    大家好,我在使用Ad9832输出Fsk信号的时候,输出引脚的电压开始是1v左右,输出频率也和我写入到寄存器的频率是一致的,但是输出引脚的电压
    发表于 11-15 07:05

    基于AD9832的高频超声波驱动电路的设计研究

    电子发烧友网站提供《基于AD9832的高频超声波驱动电路的设计研究.pdf》资料免费下载
    发表于 11-07 09:16 3次下载
    基于<b class='flag-5'>AD9832</b>的高频超声波驱动电路的设计研究

    用Keil编程如何将源文件加入到工程?

    用Keil编程如何将源文件加入到工程
    发表于 10-25 06:19

    PCB中如何将器件摆放为环形

    电子发烧友网站提供《PCB中如何将器件摆放为环形.pdf》资料免费下载
    发表于 10-20 15:10 1次下载
    PCB中<b class='flag-5'>如何将</b>元<b class='flag-5'>器件</b>摆放为环形

    如何将Git与用于DS-5 1.0版的Eclipse配合使用

    源代码管理系统(SCS)允许您对源文件进行版本设置,并与其他开发人员共享。有许多可用的源代码管理系统,既有商业的,也有开源的。 本教程介绍如何将开源Git源代码管理系统集成到Eclipse for DS-5中。它假设您已经熟悉使用Git的基本概念。
    发表于 08-10 07:11

    AN-621: AD9832/AD9835编程

    本应用笔记将详细描述如何将AD9832/AD9835器件输出编程为5
    的头像 发表于 06-16 16:27 798次阅读
    AN-621: <b class='flag-5'>AD9832</b>/<b class='flag-5'>AD9835</b>的<b class='flag-5'>编程</b>

    如何将LS1046a PCIE主机配置gen1?

    如何将LS1046a PCIE主机配置gen1
    发表于 05-18 08:44