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





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









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









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





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

صفحه 1 از 5 12345 آخرین
نمایش نتایج: از 1 به 10 از 45
  1. #1
    2007/03/08
    201
    2

    کمک در مورد برنامه نویسی

    به نام خدا
    با عرض سلام
    من یک مدار با مشخصات زیر ساخته ام
    دو تا شستی دارد یک شستی را که وقتی فشار دهیم یک رله را (که به شیر برقی وصل است) وصل میکند و با رسیدن سطح اب به الکترود ها فرمان قطع میدهد و وقتی شیلنگ تخلیه را انداختیم و سطح اب پایین تر از الکترود ها رفت رله وصل نشود بلکه مستلزم فشار شستی باشد
    شستی دوم هم برای راه اندازی موتور چپ گرد راستگرد است و وقتی شستی دوم را فشار دهیم ابتدا موتور به صورت 25 ثانیه راستگرد
    10 ثانیه استراحت 25 ثانیه چپگرد 10 ثانیه استراحت که این چرخه 9 بار انجام شود
    که برنامه ان به صورت زیر است:

    $regfile = "m8def.dat"

    $crystal = 1000000
    Dim T As Word
    Config Pind.7 = Output , Pind.6 = Output , Pinb.1 = Input , Pinb.0 = Input
    Config Pinc.0 = Output , Pind.3 = Input
    Reset Portd.7 : Reset Portd.6 : Reset Portc.0
    Set Portb.1 : Set Portb.0 : Set Portd.3
    Do
    A1:
    If Pinb.1 = 1 Then Goto A3
    Waitms 15
    If Pinb.1 = 1 Then Goto A1
    A2:
    If Pinb.1 = 0 Then Goto A2

    For T = 0 To 9
    Set Portd.6
    Wait 25
    Reset Portd.6
    Wait 10
    Set Portd.7
    Wait 25
    Reset Portd.7
    Wait 10
    Next

    A3:
    If Pinb.0 = 1 Then Goto A1
    Waitms 15
    If Pinb.0 = 1 Then Goto A3
    A4:
    If Pinb.0 = 0 Then Goto A4
    Set Portc.0
    A5:
    If Pind.3 = 0 Then Goto A5
    Reset Portc.0

    Loop
    ودر نقشه زیر هم نقشه مدار را میبینید

    حال میخواهم برنامه را کمی تغییر دهم به این صورت که من می خواهم اولا فقط زمانی شستی دوم (رله مربوط به موتور) عمل کند که الکترود ها توسط اب به یکدیگر وصل باشند یعنی موتور بدون اب هیچ وقت روشن نشود دوم این که شستی اول (شیر برقی) را وقتی برای بار دوم فشار دهیم ( فقط زمانی که دو الکترود توسط اب به هم اتنصال دارند) یک رله را به مدت معین مثلا (5 دقیقه) راه بیاندازد این رله را برای پمپ تخلیه می خواهم
    اگر امکان دارد برنامه جدید ان را برایم بنویسید
  2. #2
    2006/04/03
    172
    0

    پاسخ : کمک در مورد برنامه نویسی

    راستش من با بسکام کار نکردم و CodeVision کار می کنم ولی من اصولا توی این جور مواقع یک flag در نظر می گیرم که مثلا وقتی سطح آب به الکترود ها رسید set شود و اگر کمتر شد reset. و در برنامه ی مربوط به کلید موتور اول این flag رو چک می کنم اگر یک بود کار مورد نظر را انجام دهد !

    به هر حال باید منتظر یک بسکام کار باشی !
  3. #3
    2007/03/08
    201
    2

    پاسخ : کمک در مورد برنامه نویسی

    خوب اگر بخواهیم شستی اول را برای بار دوم فشار دهیم ویک رله دیگر را برای مدت زمانی روشن کنیم چه کار می کنیم
  4. #4
    2006/04/03
    172
    0

    پاسخ : کمک در مورد برنامه نویسی

    والا گفتم که .. من برای این مواقع یک بایت در نظر می گیرم به عنوان flag یا شمارنده .. مثلا هر بار کلید اول فشرده شد این بایت از صفر به یک تبدیل شود .. حالا اگر کلید را دوباره بزنی با چک کردن این flag و گذاشتن یک if می تونی بهش بگی اگر بار دوم هست که این کلید فشرده شده (بایت flag یک هست) فلان کار را بکن و اگر بار اول هست (بایت flag صفر است) لان کار را !
    اینا همش به نرم افزار مربوطه .. و خواهش می کنم به basic کار جواب ایشان را بده !
    شرمنده بیشتر از این کاری از دستم بر نمی یاد ..
  5. #5
    2007/03/29
    632
    24

    پاسخ : کمک در مورد برنامه نویسی

    نقل قول نوشته اصلی توسط telmak
    خوب اگر بخواهیم شستی اول را برای بار دوم فشار دهیم ویک رله دیگر را برای مدت زمانی روشن کنیم چه کار می کنیم
    سلام دوست عزيز :smile:
    من امروز اومدم برنامشو بنويسم ولي يكم گيج زدم كه شما چي مي خاي
    اگر لطف كني بگي چند تا كليد داري چند تا خروجي داري و شفافتر بگي چي مي خاي شايد بتونم كمكت كنم در ضمن اون برنامه اي كه نوشتي چرا براي ورودي ها از دستور debounce استفاده نكردي . دركل اگر ممكنه شفاف تر و بيشتر توضيح بده :smile:
    موفق باشيد
    انجمن LABVIEW
    http://www.eca.ir/forum2/index.php?board=279.0
    اموزش ميكروكنترلرهاي AVR به زبان ساده
    http://www.eca.ir/forum2/index.php/topic,7070.0.html
  6. #6
    2007/03/08
    201
    2

    پاسخ : کمک در مورد برنامه نویسی

    به نام خدا
    از این که می خواهید به من کمک کنید خیلی ممنون

    منظورم به طور واضح تر این طور است:
    ما یک مخزن لباس شویی داریم من میخواهم ابتدا توسط فشار شستی یک رله را که به شیر برقی وصل است روشن کنم زمانی که اب به الکترود ها رسید رله فرمان قطع بگیرد

    سپس توسط فشار شستی دیگر یک موتور به این صورت راه اندازی شود 25 ثانیه راست گرد 10 ثانیه خاموش
    25 ثانیه چپ گرد و دوباره 10 ثانیه خاموش که این چرخه 9 بار انجام شود

    دلیل اینکه گفتم شستی مربوط به راه اندازی موتور فقط زمانی عمل کند که الکترود ها توسط اب به یکدیگر وصل باشند این بود که موتور هیچ وقت بدون اب روشن نشود

    تا اینجا که مشکلی نیست خوب

    من به دلیل محدویت (که قصه اش دراز است ) نمیخواهم بیشتر از دو عدد شستی استفاده کنم (یک شستی مربوط به شیر برقی ویک شستی هم مربوط به موتور)

    حالا می خواهم یک پمپ تخلیه هم برای این لباس شویی نصب کنم من می خواهم این پمپ با فشار دادن شستی مربوط به شیر برقی راه بیافتد و برای مدت زمانی (3 دقیقه) روشن بماند

    پس بنابراین شستی مربوط به شیر برقی زمانی که مخزن خالی باشد اگر فشار دهیم شیر برقی روشن می شود و زمانی که اب به سطح الکترود ها رسید قطع میشود
    اگر مخزن پر بود (الکترودها در اب بودند ) شستی مربوط به شیر برقی را فشار دهیم به جای شیر برقی پمپ را راه میاندازد

    با تشکر
  7. #7
    2007/03/08
    201
    2

    پاسخ : کمک در مورد برنامه نویسی

    لطفا کمک کنید
  8. #8
    2006/04/03
    172
    0

    پاسخ : کمک در مورد برنامه نویسی

    خیلی عجله ای هست کارتون آقا telmak ?
    آخه امتحانا داره شروع میشه .. و سر بچه ها یکم شلوغه !
    صبور باش .. بچه ها مرام دارن .. جواب می دن !
  9. #9
    2006/02/12
    يزد
    250
    1

    پاسخ : کمک در مورد برنامه نویسی

    سلام
    دوست عزیز چند تا نکته:
    1.عنوان تایپیک رو درست مطرح کن تا زود تر به نتیجه برسی منم اتفاقی این تایپیک رو باز کردم
    2.برنامه رو برات نوشتم با همون چیزایی که میخواستی فقط portc.1 وصل پمپ تخلیه می شه
    http://www.4shared.com/file/17329632/18059c7c/motor_lebas_shoei.html
  10. #10
    2007/03/29
    632
    24

    پاسخ : کمک در مورد برنامه نویسی

    اينم برنامه اي كه مي خواهيد
    توضيحات مربوط به برنامه:
    برنامه بالا داراي چهار خروجي مي باشد :
    پايه A.0 مربوط به شير برقي
    پايه A.1 مربوط به راستگرد موتور
    پايه A.2 مربوط به چپگرد موترو
    پايه A.3 مربوط به همان رله اي كه بايد 5 دقيقه روشن باشد و مربوط به تخليه مي باشد.
    همچنين برنامه داراي سه ورودي به ترتيب زير مي باشد:
    پايه B.0 مربوط به استارت اوليه كه با زدن ان شير برقي راه اندازي مي شود
    پايه B.1 مربوط به راه اندازي موتور مي باشد
    پايه B.2 مربوط به الكترود مي باشد.

    در اين برنامه كه نوشتم با زدن استارت شير برقي راه اندازي مي شود و تا زماني كه اب به الكترود نرسيده باشد اين شير فعال است ولي به محض اين كه اب به الكترود رسيد شير برقي از كار مي افتد . با شرط اين كه اب به الكترود رسيده باشد و شسي مربوط به راه اندازي موتور فشرده شده باشد موتور به صورت چپگرد راستگرد به صورت چند ثانيه راستگرد چند ثانيه خاموش و چند ثانيه چپگرد راه اندازي مي شود و اين سيكل چپگرد راستگرد 9 بار تكرار مي شود و بعد از 9 بار موتور كلا خاموش مي شود.
    با شرط اين كه اب به الكترود رسيده باشد و شسي مربوط به شير برقي براي بار دوم فشرده شده باشد شير برقي راه اندازي نمي شود بلكه يك رله كه مربوط به تخليه مي باشد براي مدت زماني روشن مي شود و بعد از سپري شدن اين مدت زمان خاموش مي شود .
    برنامه بالا رو با پروتوس تست كردم و جواب داد.
    فقط يك چيز رو بگم كه WAIT ها رو گذاشتم كه خودتان تنظيم كنيد .
    اگر در قسمت سخت افزاري و قدرت هم كمك خواستيد بگيد.

    Config Porta = Output
    Config Pinb.0 = Input
    Config Pinb.1 = Input
    Config Pinb.2 = Input
    Dim A As Byte
    Dim B As Byte
    A = 0
    B = 0
    Do
    Debounce Pinb.0 , 1 , Shir , Sub
    Debounce Pinb.2 , 1 , Of , Sub
    Debounce Pinb.1 , 1 , Motor , Sub
    Loop
    End

    Shir:
    If A = 0 And Pinb.2 = 0 Then
    A = 1
    Set Porta.0
    Elseif A = 1 And Pinb.2 = 1 Then
    Set Porta.3
    Waitms 300
    Reset Porta.3
    A = 0
    Else
    End If
    Return

    Of:
    Reset Porta.0
    Reset Porta.1
    Return

    Motor:
    If Pinb.2 = 1 Then
    Goto Motor2
    Else
    End If
    Return

    Motor2:
    Do

    Set Porta.2
    Waitms 100

    Reset Porta.2
    Waitms 50

    Set Porta.1
    Waitms 100

    Reset Porta.1
    Waitms 50
    Incr B
    If B = 9 Then Return


    Loop




    انجمن LABVIEW
    http://www.eca.ir/forum2/index.php?board=279.0
    اموزش ميكروكنترلرهاي AVR به زبان ساده
    http://www.eca.ir/forum2/index.php/topic,7070.0.html
صفحه 1 از 5 12345 آخرین
نمایش نتایج: از 1 به 10 از 45

موضوعات مشابه

  1. پاسخ: 10
    آخرين نوشته: 2016/08/22, 09:16
  2. کمک در مورد برنامه نویسی C
    توسط amiri630 در انجمن C , C++ , C#
    پاسخ: 5
    آخرين نوشته: 2015/12/20, 07:11
  3. کمک در مورد برنامه نویسی ++c
    توسط hamalous در انجمن برنامه نويسي و اينترفيس
    پاسخ: 2
    آخرين نوشته: 2012/01/11, 03:35
  4. کمک در مورد برنامه نویسی
    توسط mostafa26 در انجمن میکروکنترلرهای AVR
    پاسخ: 5
    آخرين نوشته: 2009/12/06, 13:08
  5. کمک در مورد برنامه نویسی
    توسط mostafa26 در انجمن میکروکنترلرهای AVR
    پاسخ: 3
    آخرين نوشته: 2009/11/15, 21:46

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

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

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

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

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