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

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

3天内不再提示

为DS1845/DS1855数字电位器构建按钮接口

星星科技指导员 来源:ADI 作者:ADI 2023-02-09 13:54 次阅读

本应用笔记说明了使用Microchip PIC1845F1855微控制器实现DS12或DS509非易失数字电位器按钮接口的方法。

硬件设置

图1中的原理图说明了如何将按钮连接到微控制器。它还显示了IC接口是如何实现的。

其中三个开关为瞬时按钮型,用于递增 (UP)、递减 (DWN) 和设置中间电位值 (MID)。按下时,这些开关会强制微控制器的三个通用I/O(GP0、GP1和GP3)为低电平。之所以明确选择这些I/O,是因为它们具有内部(可选)上拉电阻,如果启用低电流SLEEP模式,它们会产生唤醒中断。另一个输入开关是分配给GP2的DPDT开关。此开关可用于选择 POT0 或 POT1 进行编程

SDA、SCL 和 LED 上的输出信号分配给 GP5、GP4 和 GP0。SDA和SCL具有4.7kΩ上拉电阻,并直接连接到数字电位器的通信引脚。LED 和 MID 瞬时开关均使用 GP0 引脚作为资源。GP0引脚大部分时间用作输入,轮询由MID按钮引起的低电平。但是,如果按下一个或两个其他瞬时按钮,则PIC输出低电平,导致LED被驱动。这样,只要按下 MID 按钮,LED 就会被驱动,每当按下另一个按钮开关时,PIC 就会驱动 LED。R1、R2 和 R3 是可选的上拉电阻,使用 PIC12F509 时无需填充。

图2给出了DS1845/DS1855用于评估的特定连接。提供跳线用于选择地址引脚,分隔共享的V抄送(五DD),以及隔离 SDA 和 SCL。

pYYBAGPkioKAeR68AABDzNaSznM000.gif?imgver=1

图1.PIC12F509接口电路。

poYBAGPkioOAOoT9AABACzJdSZk150.gif?imgver=1

图2.DS1845/DS1855数字电位器连接到PIC控制器

固件说明

该项目的固件是用MPLAB IDE(版本7.31)编译的汇编语言编写的。该工具目前可从Microchip免费获得。整个程序由程序空间(闪存)中的不到512条指令和数据空间(RAM)中的14个位置组成。

指令分为五个块:初始化、读取、UP、DWN 和 MID。固件只是在循环中连续轮询输入引脚。由于程序的固有延迟和逻辑流程,开关去波化会自动合并到软件中。

初始化模块在 PIC 上电时或唤醒后运行一次(如果启用了 SLEEP)。运行 Initialize 块中的指令后,操作寄存器、标志和变量将加载到已知状态。执行这些指令后,其余模块串行形成无限循环,以轮询开关,通过IC读取或写入新的电位器值。

电位器值的IC读取仅在设置RD_FLAG时发生。此标志在初始化期间设置一次,然后在按钮调用将电位器寄存器写入新值时设置一次。通过在电位值变化期间和启动时仅执行IC READ,当UP、DWN或MID按钮未按下时,总线上不会发生多余的通信突发。例如,如果电位器已经在使用中控制电源微调参数,则连接按钮控制器以执行在线编程。在对电位器值执行IC写入之前,将读取当前的电位器值。IC写入完成后,再次设置RD_FLAG以生成新电位器值的最终IC读取。

UP、DWN 和 MID 块在读取块之后按顺序运行。在每个模块中,相应的引脚被轮询为低状态。如果找到HIGH状态,则程序将快速退出该块,而不会导致发生任何IC通信。如果检测到 LOW,则程序按照逻辑框图中的说明进行。

功能说明

该项目的固件和硬件允许在DS1845/DS1855上对电位器值进行编程时执行多种不同的操作。开关和 LED 功能包括:

POT0/1(选择拨动开关) 此开关选择在下一次循环迭代中控制哪个电位器(如有必要)。此开关上的状态更改会选择 POT0 或 POT1,导致 IC 读取,并且对 LED 没有影响。²
点击 MID、UP或 DWN 按钮(< 400 毫秒) 通过轻触其中一个开关,所选电位器将递增 (UP)、递减 (DWN) 或直接加载中间位置 (MID)。执行IC写入时,LED将短暂亮起;IC读取将在下一次循环迭代中进行。²²
按住 UP 或 DWN 按钮(> 400 毫秒) 通过按住UP或DWN按钮,所选电位器将进入快速递增或递减模式。现在,电位器值将继续变化,直到松开按钮或达到最大/最小位置。执行 IC 写入时,LED 将亮起;它将保持亮起,直到松开按钮。按钮释放后,IC读取将在下一次循环迭代中进行。²²
按住 UP,然后点击 DWN 按钮 通过按住UP按钮,所选的电位器将开始递增。然后,在仍然按下UP按钮的同时,点击DWN按钮,使所选电位器直接加载到最大位置。LED 将亮起,直到松开开关。释放按钮后,IC读取将在下一次循环迭代中发生。²
按住 DWN,然后点击向上按钮 通过按住DWN按钮,所选电位器将开始递减。然后,在仍然按下DWN按钮的同时,点击UP按钮,使所选电位器直接加载到最小位置0x00。LED 将亮起,直到松开开关。释放按钮后,IC读取将在下一次循环迭代中发生。²
指示灯闪烁三次 每当上电期间初始化PIC或看门狗定时器导致系统复位(如果启用)时,LED将闪烁三次。
LED 持续快速闪烁 每当发生IC错误时,LED将持续快速闪烁。纠正错误后,指示灯将恢复正常功能。通过检查设备地址是否正确以及IC总线是否已连接来进行故障排除。²²

结论

本应用笔记介绍如何为DS1845/DS1855非易失数字电位器使用和构建简单、高性价比的控制器。按钮输入转换为IC命令,以递增、递减或设置中间位置,而无需主机。

审核编辑:郭婷

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

    关注

    48

    文章

    6809

    浏览量

    147636
  • led
    led
    +关注

    关注

    237

    文章

    22449

    浏览量

    645876
  • 数字电位器
    +关注

    关注

    4

    文章

    258

    浏览量

    82910
收藏 人收藏

    评论

    相关推荐

    体验MAXIM的数字电位器DS1801

    体验MAXIM的数字电位器DS1801
    发表于 10-09 21:44

    一种DS1845/DS1855接口方案介绍

    引言   本应用笔记介绍了一种DS1845DS1855非易失数字电位器的简单接口方案,利用Microchip?的PIC12F509实现。硬
    发表于 06-05 05:00

    构建DS1803/DS1805数字电位器的按键控制器

    构建DS1803/DS1805数字电位器的按键控制器 摘要:本应用笔记介绍了一种通过几个按键和一个微控制器控制
    发表于 08-19 12:23 2768次阅读
    <b class='flag-5'>构建</b><b class='flag-5'>DS</b>1803/<b class='flag-5'>DS</b>1805<b class='flag-5'>数字</b><b class='flag-5'>电位器</b>的按键控制器

    DS1845/DS1855数字电位器接口方案

    本应用笔记介绍了一种DS1845/DS1855接口方案,利用简单的高性价比控制器实现。按键输入将被转化成I?C命令,无需主机控制,即可实现数字电位器
    发表于 08-09 12:02 2377次阅读
    <b class='flag-5'>DS1845</b>/<b class='flag-5'>DS1855</b><b class='flag-5'>数字</b><b class='flag-5'>电位器</b>的<b class='flag-5'>接口</b>方案

    DS1855双路非易失性(NV)数字电位器

    DS1855双路非易失性(NV)数字电位器和安全存储器由一个100级线性变化电位器、一个256级线性变化电阻器、256字节EEPROM存贮器、和2线
    发表于 02-19 16:53 2453次阅读
    <b class='flag-5'>DS1855</b>双路非易失性(NV)<b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1855双路、非易失数字电位器及安全存储器

    The DS1855 dual nonvolatile (NV) digital potentiometer and secure memory consists of one
    发表于 02-19 17:06 35次下载
    <b class='flag-5'>DS1855</b>双路、非易失<b class='flag-5'>数字</b><b class='flag-5'>电位器</b>及安全存储器

    DS1845E-100+ 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1845E-100+相关产品参数、数据手册,更有DS1845E-100+的引脚图、接线图、封装手册、中文资料、英文资料,DS1845E-100+真值表,
    发表于 01-21 19:26
    <b class='flag-5'>DS1845</b>E-100+ 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1855E-010+ 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1855E-010+相关产品参数、数据手册,更有DS1855E-010+的引脚图、接线图、封装手册、中文资料、英文资料,DS1855E-010+真值表,
    发表于 01-21 19:29
    <b class='flag-5'>DS1855</b>E-010+ 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1845B-050 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1845B-050相关产品参数、数据手册,更有DS1845B-050的引脚图、接线图、封装手册、中文资料、英文资料,DS1845B-050真值表,
    发表于 01-21 19:51
    <b class='flag-5'>DS1845</b>B-050 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1845B-010 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1845B-010相关产品参数、数据手册,更有DS1845B-010的引脚图、接线图、封装手册、中文资料、英文资料,DS1845B-010真值表,
    发表于 01-21 19:52
    <b class='flag-5'>DS1845</b>B-010 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1845B-100 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1845B-100相关产品参数、数据手册,更有DS1845B-100的引脚图、接线图、封装手册、中文资料、英文资料,DS1845B-100真值表,
    发表于 01-21 19:52
    <b class='flag-5'>DS1845</b>B-100 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1845E-100 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1845E-100相关产品参数、数据手册,更有DS1845E-100的引脚图、接线图、封装手册、中文资料、英文资料,DS1845E-100真值表,
    发表于 01-22 18:17
    <b class='flag-5'>DS1845</b>E-100 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1855E-050+ 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1855E-050+相关产品参数、数据手册,更有DS1855E-050+的引脚图、接线图、封装手册、中文资料、英文资料,DS1855E-050+真值表,
    发表于 01-22 18:56
    <b class='flag-5'>DS1855</b>E-050+ 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1845E-050 数据采集 - 数字电位器

    电子发烧友网为你提供Maxim(Maxim)DS1845E-050相关产品参数、数据手册,更有DS1845E-050的引脚图、接线图、封装手册、中文资料、英文资料,DS1845E-050真值表,
    发表于 01-30 18:41
    <b class='flag-5'>DS1845</b>E-050 数据采集 - <b class='flag-5'>数字</b><b class='flag-5'>电位器</b>

    DS1845/DS1855温度系数分析

    数字电位器的温度特性与传统的机械电位器不同。在使用这些类型的器件进行设计时,必须考虑温度对电位计绝对电阻的影响,因为数字
    的头像 发表于 02-24 13:45 601次阅读
    <b class='flag-5'>DS1845</b>/<b class='flag-5'>DS1855</b>温度系数分析