Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arduino 如何编写代码使LED’;sfl;按以下顺序排列?_Arduino_Arduino Uno_Arduino Ide - Fatal编程技术网

Arduino 如何编写代码使LED’;sfl;按以下顺序排列?

Arduino 如何编写代码使LED’;sfl;按以下顺序排列?,arduino,arduino-uno,arduino-ide,Arduino,Arduino Uno,Arduino Ide,如何编写这样的代码序列?小数点后4是什么意思? 为此,我们不得不在代码中添加延迟 led_Pin_1 1 0 0 0 led_Pin_2 0 1 0 0 led_Pin_3 0 0 1 0 led_Pin_4 0 0 0 1 我的代码,它正在工作。但是我需要把这个代码转换成上面的序列 int led_Pin_1 = 11; int led_Pin_2 = 10; int led_Pin_3 = 9; int led_Pin_4 = 8; void setup() { pinMod

如何编写这样的代码序列?小数点后4是什么意思? 为此,我们不得不在代码中添加延迟

led_Pin_1 1 0 0 0 
led_Pin_2 0 1 0 0 
led_Pin_3 0 0 1 0 
led_Pin_4 0 0 0 1 
我的代码,它正在工作。但是我需要把这个代码转换成上面的序列

int led_Pin_1 = 11;
int led_Pin_2 = 10;
int led_Pin_3 = 9;
int led_Pin_4 = 8;

void setup() {
  pinMode(led_Pin_1, OUTPUT);
  pinMode(led_Pin_2, OUTPUT);
  pinMode(led_Pin_3, OUTPUT);
  pinMode(led_Pin_4, OUTPUT);
}

void loop() {
  digitalWrite(led_Pin_1, HIGH);
  delay(200);
  digitalWrite(led_Pin_2, HIGH);
  delay(200);
   digitalWrite(led_Pin_3, HIGH);
  delay(200);
   digitalWrite(led_Pin_4, HIGH);
  delay(200);
  digitalWrite(led_Pin_1, LOW);
  delay(300);
   digitalWrite(led_Pin_2, LOW);
  delay(300);
   digitalWrite(led_Pin_3, LOW);
  delay(300);
   digitalWrite(led_Pin_4, LOW);
  delay(300);
}
如果发生这样的变化,那是什么意思

LED1 1 0 0 0
LED2 1 1 0 0 
LED3 1 1 1 0
LED4 1 1 1 1
我建议你使用

首先,您需要为LED创建一个阵列。然后创建一个函数来设置此数组的正确值。之后,您可以简单地在循环中指定所需的值

一个好用的数组是,您可以在不修改所有代码的情况下轻松更改大小

// Number of LEDs
#define ARRAY_SIZE 4

//Pin definitions
#define LED_PIN_1 11
#define LED_PIN_2 10
#define LED_PIN_3 9
#define LED_PIN_4 8

// Array that holds led pin numbers
const int led_pins[ARRAY_SIZE] = {LED_PIN_4, LED_PIN_3, LED_PIN_2, LED_PIN_1};

// a temp array to hold led values
int led_array_value[ARRAY_SIZE] = {0};

void display(int *input)
{
    for (int i = 0; i < ARRAY_SIZE; i++)
    {
        digitalWrite(led_pins[i], input[i]);
    }
}

void setup()
{
    for (int i = 0; i < ARRAY_SIZE; i++)
    {
        pinMode(led_pins[i], OUTPUT);
    }
}

void loop()
{
    for (int i = 0; i < ARRAY_SIZE; i++)
    {
        // reset all leds to 0
        memset(led_array_value, 0, sizeof(led_array_value));
        // turn on current led
        led_array_value[i] = 1;
        display(led_array_value);
        delay(500);
    }
}
//指示灯的数量
#定义数组大小4
//引脚定义
#定义LED_引脚_1 11
#定义LED_引脚_2 10
#定义LED_引脚_3 9
#定义LED_引脚_4 8
//保存led管脚编号的阵列
const int led_pins[阵列大小]={led_PIN_4,led_PIN_3,led_PIN_2,led_PIN_1};
//用于保存led值的临时阵列
int led_数组_值[数组_大小]={0};
无效显示(整数*输入)
{
for(int i=0;i
我建议您停下来仔细阅读
数组:如何定义它们以及如何从中存储和检索值。同样
用于循环
条件
。祝你好运。我不理解你的问题,也不理解你的两套行为描述。请详细说明一下。我可以很容易地看到您的代码在做什么,但这不符合给定的两个4行描述中的任何一行。我不明白你想要什么。