ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 5 از 5

موضوع: برنامهAVR

  1. #1
    2009/06/07
    11
    0

    برنامهAVR

    تشکر بابت آموزش زبان بیسیکAVR

    من توانستم چند برنامه ساده را به زبان بیسیک بنویسم.حالا برنامه ای را منویسم که در آن از میکرو مگا8 و محیط بسکام استفاده می کنم ولی به اشکالاتی برخورد کرده ام که امیدوارم با کمک شما رفع گردد.بدین صورت که یک برنامه یا بهتر بگویم زیر برنامه تحت نام GREEN یا سبز و یک برنامه تحت عنوان RED یا قرمز نوشته ام .مدار شامل یک کلید سه پایه دو حالته الاکلنگی (حالت1وحالت2) میباشد که پایه وسط این کلید به پین شماره 23 مگا8 وصل است وLCD2X16 بعد از روشن شدن ابتدا عبارت NAME OF GOD را مینویسد و پاک میشود سپس کلمه GREEN نوشته می شود و 2 ثانیه بعد پاک می شود و بعد کلمه RED نوشته شده و 2 ثانیه بعد پاک می شود و دوباره کلمه GREEN و بعدRED و دوباره(حالت DO-LOOP).می خواهم با زدن کلید از حالت 1 به2 زمانی که کلمه GREEN روی LCD وجود دارد برنامه GREEN اجرا شود و مدار را که خاموش کردم و دوباره روشن کردم و سیکل تکرار شد و کلمه RED روی LCD نوشته شد با زدن کلید برنامه RED اجرا شود.آیا لازم است برای همه حالات این برنامه میکرو و کریستال را تعریف کنم.لطفا مر راهنمایی کنید. فایل هر دو زیر برنامه را در این متن نیز فرار میدهم.با تشکر
    RED:

    $regfile = "m8def.dat"
    $crystal = 8000000
    Config Timer1 = Timer , Prescale = 1
    Stop Timer1
    Config Portb = Output
    Config Portd = Output
    Portb.1 = 0
    Portd.6 = 0
    Portd.7 = 0
    Dim A As Word

    Startline1:
    Start Timer1
    A = 0
    Portb.1 = 1
    Do
    A = A + 1
    Loop Until A = 100
    Portb.1 = 0
    A = 0
    Do
    A = A + 1
    Loop Until A = 45
    A = 0
    Portd.6 = 1
    Do
    A = A + 1
    Loop Until A = 45
    A = 0
    Portd.6 = 0
    Do
    A = A + 1
    Loop Until A =300
    A = 0
    Portd.7 = 1
    Do
    A = A + 1
    Loop Until A = 45
    A = 0
    Portd.7 = 0
    Do
    A = A + 1
    Loop Until A = 465
    Stop Timer1
    Goto Startline1



    GREEN:


    $regfile = "m8def.dat"
    $crystal = 8000000
    Config Timer1 = Timer , Prescale = 1
    Stop Timer1
    Config Portb = Output
    Config Portd = Output
    Portb.1 = 0
    Portd.6 = 0
    Portd.7 = 0
    Dim A As Word

    Startline1:
    Start Timer1
    A = 0
    Portb.1 = 1
    Do
    A = A + 1
    Loop Until A = 27
    Portb.1 = 0
    A = 0
    Do
    A = A + 1
    Loop Until A = 4
    A = 0
    Portd.6 = 1
    Do
    A = A + 1
    Loop Until A = 12
    A = 0
    Portd.6 = 0
    Do
    A = A + 1
    Loop Until A = 53
    A = 0
    Portd.7 = 1
    Do
    A = A + 1
    Loop Until A = 12
    A = 0
    Portd.7 = 0
    Do
    A = A + 1
    Loop Until A = 158
    Stop Timer1
    Goto Startline1
  2. #2
    2009/01/19
    553
    0

    پاسخ : برنامهAVR

    سلام.

    بهتر بود که سوال را در قسمت AVR مطرح میکردی!

    زیر برنامه و/یا توابع جزئی از برنامه هستند. اگر میخواهید که سبز و قرمز دو زیر برنامه در برنامه شما باشند، نباید کریستال و میکرو و تمامی تنظیمات را در هر قسمت تعریف کنی. فقط یه بار اون هم بالای برنامه.

    یا از sub استفاده کن (برای ایجاد سابروتین) یا اینکه میتونی از دستور Gosub/Return استفاده کنی. اگه از زیر برنامه ای استفاده نمیکنی، هیچ نام برچسبی (Lable) نباید تکراری باشه! (همون Startline1 در برنامه شما)

    موفق باشید

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  3. #3
    2009/06/07
    11
    0

    پاسخ : برنامهAVR

    با تشکر از شما

    در این برنامه کلید به پایه 24 (PC1) مگا 8 وصل است و LCD 2.16 نیز به port d میکرو متصل است.گر مقدور است برنامه آن را برایم بنویسید.مننون میشوم.
  4. #4
    2009/01/19
    553
    0

    پاسخ : برنامهAVR

    نقل قول نوشته اصلی توسط mahmud4532
    با تشکر از شما

    در این برنامه کلید به پایه 24 (PC1) مگا 8 وصل است و LCD 2.16 نیز به port d میکرو متصل است.گر مقدور است برنامه آن را برایم بنویسید.مننون میشوم.

    برنامه چی رو بنویسم؟؟؟ :surprised:

    شما شروع به نوشتن برنامه کنید و هرجا که گیر کردین من و دوستان در خدمت هستیم....

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  5. #5
    2009/06/07
    11
    0

    پاسخ : برنامهAVR

    با سلام به آقا بهنام و سایر دوستان

    »ن برنامه را اینجا قرار می دهم تا با کمک دوستان به ایرادهای برنامه ام پی ببرم.
    $regfile=M8def.dat$
    crystal=8000000$
    configLCD=16x2
    configLCD pin=pin,Db4=PORTD.3,Db5=PORTD.2,Db6=PORTD.1,Db7=PO RTD.0,RS=PORTD.5,E=POD.4
    DO
    CLS
    LOCATE 1,1
    "LCD"IN THE NAME OF GOD
    LOCATE 2,1
    "LCD"WELCOME
    CLS
    DO
    LOCATE1,1
    "LCD"RED
    WAITMS500
    Config pinB.1=input
    Config portc1(کلید)=output
    DO
    DEBOUNCE pinc1=1,RED
    RED:

    Config Timer1 = Timer , Prescale = 1
    Stop Timer1
    Config Portb = Output
    Config Portd = Output
    Portb.1 = 0
    Portd.6 = 0
    Portd.7 = 0
    Dim A As Word

    Startline1:
    Start Timer1
    A = 0
    Portb.1 = 1
    Do
    A = A + 1
    Loop Until A = 100
    Portb.1 = 0
    A = 0
    Do
    A = A + 1
    Loop Until A = 45
    A = 0
    Portd.6 = 1
    Do
    A = A + 1
    Loop Until A = 45
    A = 0
    Portd.6 = 0
    Do
    A = A + 1
    Loop Until A =300
    A = 0
    Portd.7 = 1
    Do
    A = A + 1
    Loop Until A = 45
    A = 0
    Portd.7 = 0
    Do
    A = A + 1
    Loop Until A = 465
    Stop Timer1
    Goto Startline1
    loop
    END
    locate1,1
    "lcd"GREEN
    waitms500
    config pinB1=input
    configpinc1(کلید)=output
    Do
    DEBOUNCEpinB1=1 GREEN
    GREEN:

    Config Timer1 = Timer , Prescale = 1
    Stop Timer1
    Config Portb = Output
    Config Portd = Output
    Portb.1 = 0
    Portd.6 = 0
    Portd.7 = 0
    Dim A As Word

    Startline1:
    Start Timer1
    A = 0
    Portb.1 = 1
    Do
    A = A + 1
    Loop Until A = 27
    Portb.1 = 0
    A = 0
    Do
    A = A + 1
    Loop Until A = 4
    A = 0
    Portd.6 = 1
    Do
    A = A + 1
    Loop Until A = 12
    A = 0
    Portd.6 = 0
    Do
    A = A + 1
    Loop Until A = 53
    A = 0
    Portd.7 = 1
    Do
    A = A + 1
    Loop Until A = 12
    A = 0
    Portd.7 = 0
    Do
    A = A + 1
    Loop Until A = 158
    Stop Timer1
    Goto Startline1
    loop
    END
نمایش نتایج: از 1 به 5 از 5

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •