嵌入式硬件:可调电阻/数字电位器MAX5401

背景

在放大电路中,我们需要增益可调,因此引入可变电阻。这里以MAX5401为例,介绍可变电阻驱动。

电路图

在这里插入图片描述

如上电路图所示,通过更改R1阻值,则可以更改电路放大倍数。

芯片驱动

在这里插入图片描述
在这里插入图片描述

MAX5401共有8个引脚,其中DIN和SCLK是控制引脚,其控制时序图如下:
在这里插入图片描述
其中控制的阻值变化是W到L的阻值,而W到H的阻值是100K减去控制的阻值。
在这里插入图片描述

驱动代码

void MyMAX5401::SendData(uint8_t Data)
{
    digitalWrite(pin_SCLK,0);    
    digitalWrite(pin_CS,1);
    delayMicroseconds(1);

    digitalWrite(pin_CS,0);
    delayMicroseconds(1);
    //完成了片选

    uint8_t DataCopy = Data;

    for(uint8_t i = 0; i < 8; ++ i)
    {
        if((DataCopy & 0X80) != 0)
        {
            digitalWrite(pin_DIN,1);
            digitalWrite(pin_SCLK,0);
            delayMicroseconds(1);
            digitalWrite(pin_SCLK,1);
            delayMicroseconds(1);
        }
        else
        {
            digitalWrite(pin_DIN,0);
            digitalWrite(pin_SCLK,0);
            delayMicroseconds(1);
            digitalWrite(pin_SCLK,1);
            delayMicroseconds(1);
        }
        DataCopy <<= 1;
    }

    digitalWrite(pin_CS,1);
    digitalWrite(pin_SCLK,0);
    delayMicroseconds(1);
    //取消片选
}
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天城寺电子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值