lopmn 发表于 2021-3-25 18:40

求arduino外接CD74HC4067扩展模仿输入的问题。

测试环境:
代码运行效果:
代码如下:

// 74HC4067 multiplexer demonstration (16 to 1)

// control pins output table in array form
// see truth table on page 2 of TI 74HC4067 data sheet
// connect 74HC4067 S0~S3 to Arduino D7~D4 respectively
// connect 74HC4067 pin 1 to Arduino A0
byte controlPins[] = {B00000000,
                  B10000000,
                  B01000000,
                  B11000000,
                  B00100000,
                  B10100000,
                  B01100000,
                  B11100000,
                  B00010000,
                  B10010000,
                  B01010000,
                  B11010000,
                  B00110000,
                  B10110000,
                  B01110000,
                  B11110000 };

// holds incoming values from 74HC4067                  
byte muxValues[] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,};

void setup()
{
Serial.begin(9600);
DDRD = B11111111; // set PORTD (digital 7~0) to outputs
}

void setPin(int outputPin)
// function to select pin on 74HC4067
{
PORTD = controlPins;
}

void displayData()
// dumps captured data from array to serial monitor
{
Serial.println();
Serial.println("Values from multiplexer:");
Serial.println("========================");
for (int i = 0; i < 16; i++)
{
    Serial.print("input I");
    Serial.print(i);
    Serial.print(" = ");
    Serial.println(muxValues);
}
Serial.println("========================");
}

void loop()
{
for (int i = 0; i < 16; i++)
{
    setPin(i); // choose an input pin on the 74HC4067
    muxValues=analogRead(0); // read the vlaue on that pin and store in array
}

// display captured data
displayData();
delay(2000);
}


我想实现按一个出来个,不按不输出该怎么写呢
页: [1]
查看完整版本: 求arduino外接CD74HC4067扩展模仿输入的问题。