اطلاعیه

Collapse
No announcement yet.

عدم اجرای صحیح برنامه

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

    عدم اجرای صحیح برنامه

    با سلام خدمت دوستان و اساتید عزیز. من از یک برد آردینو MEGA2560 استفاده می کنم. برنامه زیر از طریق یک شیفت رجیستر 74595 اعداد 1 تا 6 را بر روی یک سون سگمنت نمایش می دهد. (البته به طرز کاملا ناشیانه!!!). اما زمانی که برنامه را بر روی برد پلود می کنم یک یا دو بار شمارش صحیح انجام می شود اما در دفعات بعدی کلا سگمنت خاموش بوده و بعد از حدود چند ثانیه از وسط برنامه شروع به شمارش می کند. لطفا راهنمایی بفرمایید.
    -- خطوط دیتای شیفت رجیستر با 10K پول پ شده.
    -- برق برد آردینو از طریق USB و منبع تغذیه جانبی (به صورت جدا) تامین شد و در هر دو حالت پاسخ یکسان بود.
    -- در ابتدای خط برق 74595 از خازن 104 استفاده شده است.

    برنامه
    [code=c]
    //IN THE NAME OF ALLAH
    int latchPin = 6;
    int clockPin = 5;
    int dataPin = 7;
    byte data;
    byte dataArray[10];

    void setup() {

    pinMode(latchPin, OUTPUT);
    pinMode(clockPin, OUTPUT);
    pinMode(dataPin, OUTPUT);

    dataArray[0] = 0b00111111;
    dataArray[1] = 0b00000110;
    dataArray[2] = 0b01011011;
    dataArray[3] = 0b01001111;
    dataArray[4] = 0b01100110;
    dataArray[5] = 0b01101101;
    dataArray[6] = 0b01111101;
    dataArray[7] = 0b00000111;
    dataArray[8] = 0b01111111;
    dataArray[9] = 0b01101111;



    }

    void loop() {
    // put your main code here, to run repeatedly:
    digitalWrite(latchPin, LOW);

    shiftOut(dataPin, clockPin, MSBFIRST, dataArray[0]);

    digitalWrite(latchPin, HIGH);
    delay(500);
    digitalWrite(latchPin, LOW);

    shiftOut(dataPin, clockPin, MSBFIRST, dataArray[1]);
    digitalWrite(latchPin, HIGH);
    delay(500);

    digitalWrite(latchPin, LOW);
    shiftOut(dataPin, clockPin, MSBFIRST, dataArray[2]);
    digitalWrite(latchPin, HIGH);
    delay(500);

    digitalWrite(latchPin, LOW);
    shiftOut(dataPin, clockPin, MSBFIRST, dataArray[3]);
    digitalWrite(latchPin, HIGH);
    delay(500);

    digitalWrite(latchPin, LOW);
    shiftOut(dataPin, clockPin, MSBFIRST, dataArray[4]);
    digitalWrite(latchPin, HIGH);
    delay(500);

    digitalWrite(latchPin, LOW);
    shiftOut(dataPin, clockPin, MSBFIRST, dataArray[5]);
    digitalWrite(latchPin, HIGH);
    delay(500);

    digitalWrite(latchPin, LOW);
    shiftOut(dataPin, clockPin, MSBFIRST, dataArray[6]);
    digitalWrite(latchPin, HIGH);
    delay(500);
    }
    [/code]

    اضافه شده در تاریخ :
    یه جوون مردی نبود جواب بده؟؟؟ :angry:
    STM32 واقعا یه چیز دیگه است...
لطفا صبر کنید...
X