اطلاعیه

Collapse
No announcement yet.

مشکل در کد نوشته شده برای اردینو

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل در کد نوشته شده برای اردینو

    سلام دوستان
    من توی برنامه م یکسری اعداد دارم که بصورت باینری هستن میخوام به ترتیب اونا رو بخونه حالا هر متغیر شروع کنه به خوندن بیت های اون و اگر هرکدوم یک بود خروچی رو یک و صفر بود صفر کنه ولی فقط عدد اول رو میخونه و حلقه اجرا نمیشه ممنون میشم کمک کنید.
    ایا توی اردینو امکانی هست که برنامه رو مرحله به مرحله اجرا کرد؟؟




    byte a[11]={11001111,00110011,10101000,11101110,11101100,100 00001,01111110,11110000,11100001,01001001,11111111 };


    int led1=2;
    int led2=3;
    int led3=4;
    int led4=5;
    int led5=6;
    int led6=7;
    int led7=8;
    int led8=9;
    int b[8]={0,0,0,0,0,0,0,0};


    void setup() {
    // put your setup code here, to run once:
    pinMode(led1,OUTPUT);
    pinMode(led2,OUTPUT);
    pinMode(led3,OUTPUT);
    pinMode(led4,OUTPUT);
    pinMode(led5,OUTPUT);
    pinMode(led6,OUTPUT);
    pinMode(led7,OUTPUT);
    pinMode(led8,OUTPUT);
    }


    void loop() {
    // put your main code here, to run repeatedly:
    for(int i=0;i<=11;i++){


    byte c=a[i];
    for(int y=0;y<=8;y++){



    b[y]= bitRead(c,y);


    if (b[0]==1){
    digitalWrite(led1,HIGH);


    }
    if (b[1]==1){
    digitalWrite(led2,HIGH);

    }
    if (b[2]==1){
    digitalWrite(led3,HIGH);

    }
    if (b[3]==1){
    digitalWrite(led4,HIGH);


    }
    if (b[4]==1){
    digitalWrite(led5,HIGH);

    }
    if (b[5]==1){
    digitalWrite(led6,HIGH);

    }
    if (b[6]==1){
    digitalWrite(led7,HIGH);


    }
    if (b[7]==1){
    digitalWrite(led8,HIGH);

    }


    }
    delay(1500);


    }
    }

    #2
    پاسخ : مشکل در کد نوشته شده برای اردینو

    سلام

    تو آردوینو ، متغیرهای باینری باید با حرف بزرگ B در اول متغییر مشخص بشن مانند :

    کد:
    byte var = B1110011;
    کد زیر رو ببینید :



    #include <Arduino.h>

    byte a[11]={B11001111, B00110011, B10101000, B11101110,

    B11101100, B10000001, B01111110, B11110000,

    B11100001, B01001001, B11111111};




    uint8_t led[8] = {9, 8, 7, 6, 5, 4, 3, 2};


    byte b[8];

    uint8_t c;



    void setup() {

    // put your setup code here, to run once:

    Serial.begin(115200);

    for (uint8_t lp = 0; lp < 8; lp++){

    pinMode(led[lp], OUTPUT);

    }

    }



    void loop() {

    // put your main code here, to run repeatedly:

    for(int i = 0; i < 11; i++){

    c = a[i];

    for(int y = 7; y >= 0; y--){


    b[y]= bitRead(c,y);


    digitalWrite(led[y], b[y]);


    Serial.print(b[y]);


    }

    delay(1500);

    Serial.println("");


    }

    }


    جدیدترین ویرایش توسط Ahmad58; ۰۹:۲۰ ۱۳۹۶/۰۶/۰۸.

    دیدگاه

    لطفا صبر کنید...
    X