Arduino CD4067 16通道模拟量采集

本文介绍了一个小项目中如何利用CD4067模拟开关芯片替代昂贵的16通道ADC,通过ArduinoIDE进行编程控制,实现通道切换并读取模拟信号。通过简单的IO操作,实现了对CD4067的通道选择,并给出了相应的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

更多内容,请访问我的网站:https://jiangge12.github.io/

有个小项目需要用到16通道ADC,速度精度倒是没什么要求。

单片机 IO 尤其是支持ADC的不太够,考虑外接16通道ADC芯片,但成本较高。

想来想去,CD4067 16通道模拟切换 凑合一下吧。

Arduino IDE 可以搜到几个4017的库,不过看了看pdf,没必要,自己对付几句byte操作就够了:

byte i;
boolean S0;
boolean S1;
boolean S2;
boolean S3;

void setup() {
  Serial.begin(115200);
  pinMode(5,OUTPUT);  // CD4067 S0 
  pinMode(4,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(2,OUTPUT);  
}

void loop() { 
    for(i=0;i<16;i++){ 
        S0 = i & 0x01;
        S1 = i & 0x02;
        S2 = i & 0x04;
        S3 = i & 0x08;
        digitalWrite(5,S0);   // S0-S3设置CD4067通道号
        digitalWrite(4,S1);
        digitalWrite(3,S2);
        digitalWrite(2,S3);        
        Serial.print(analogRead(A0)); Serial.print(",");
    } 
    Serial.println("");
    delay(5000);
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值