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





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









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





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

نمایش نتایج: از 1 به 6 از 6
  1. #1
    2010/03/05
    3,251
    70

    پروژه تکمیل شده دماسنج پیشرفته

    سلام
    یکی از دوستان درخواست کرده بود این پروژه رو
    امکان تعیین دمای بالا و پایین و منو برای تعیین ان
    ذخیره دمای بالا و پایین در ای تو پیرام میکرو
    نمایش کلمات cold و warm و hot با توجه به بازه دمایی تعیین شده و دمای محیط
    دوستان توجه کنید که من خودم عملی تستش نکردم هنوز و اگر کسی ساخت و با مشکل مواجه شد اعلام کنه همین جا تا تحصیح بشه
    موفق باشید
    فايل هاي پيوست شده فايل هاي پيوست شده
  2. #2
    2010/03/05
    3,251
    70

    پاسخ : پروژه تکمیل شده دماسنج پیشرفته

    در ضمن پسورد فایل فشرده www.eca.ir میباشد و شامل شماتیک در پرتوس و فایل برنامه در بسکام میباشد
    با تشکر
  3. #3
    2010/08/03
    30
    0

    پاسخ : پروژه تکميل شده دماسنج پيشرفته

    اگر ممکنه يه سري کليات هم راجع به برنامه اي که نوشتي بدي ممنون ميشم
  4. #4
    2010/03/05
    3,251
    70

    پاسخ : پروژه تکمیل شده دماسنج پیشرفته

    چشم فقط یه قمدار کمبود وقت دارم الان
    امشب یا فردا میزارم واست البته تو خود برنامه هم هلپ گزاشتم
  5. #5
    2010/03/05
    3,251
    70

    پاسخ : پروژه تکمیل شده دماسنج پیشرفته

    خوب اولین اشکال رو خودم پیدا کردم
    در برنامه کانفیگ adc رو نزاشته بودم که لطفا اضافه کنید
    CONFIG ADC = single, PRESCALER = AUTO, REFERENCE = internal
    توضیحات رو هم بزودی میزارم
  6. #6
    2010/03/05
    3,251
    70

    پاسخ : پروژه تکمیل شده دماسنج پیشرفته

    خوب بریم سر وقت برنامه
    $regfile = "m16def.dat"
    $crystal = 8000000
    اینا که واضح هست و نوع میکرو و فرکانس کاری رو تعیین میکنند
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''&#039 ;
    Config Adc = Single , Prescaler = Auto , Reference = Internal
    اینم که کانقیگ ای دی سی هست و ولتاژ مرجع رو 2.56 ولت داخلی تنظیم شده
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Portc.2 , Db5 = Portc.1 , Db6 = Portc.0 , Db7 = Portd.7 , E = Portc.3 , Rs = Portc.4
    اینم که کانفیگ ال سی دی هست
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '
    Config Portb.0 = Input : Upk Alias Pinb.0 'up key
    Config Portb.1 = Input : Downk Alias Pinb.1 'down key
    Config Portb.3 = Input : Cohk Alias Pinb.3 'chenge betwen cold and hot in chengeing menu
    اینم کانفیگ چند پایه به عنوان ورودی و تعیین هم نام برای اونها و استفاده از اونا به عنوان کلید های تنظیم و منو و ...
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '
    Enable Interrupts
    Enable Int2
    On Int2 Int2isr 'menu / exit key
    این چند خط هم اینتراپت ها رو فعال میکنه و از اینتراپت خارجی 2 به عنوان کلید رفتن به منوی تنظیم استفاده میکنه
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''
    Dim A As Word
    Dim B As Word
    Dim C0 As Integer
    Dim C1 As Integer
    Dim C2 As Integer
    Dim C3 As Integer
    Dim C4 As Integer
    Dim C5 As Integer
    Dim C6 As Integer
    Dim Cf As Integer
    این متغییر های دما هستند که چند بار از adc خونده میشه و سر اخر میانگینشون نمایش داده میشه
    Dim Mio As Bit 'menu is open
    این متغییر هم برای فهمیدن اینکه منو الان باز هست یا بسته استفاده میشه
    Declare Sub Menu
    این ساب منو رو نمایش میده
    Dim Cold As Integer
    Dim Hot As Integer
    این هم متغییر های دمای مینیمم و ماکسیمم هستند
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '''
    Readeeprom Cold , 0
    Readeeprom Hot , 10
    این دو خط مقدار رو از ای ای پیرام میکرو میخونه و میریزه تو متغییر های مینیمم و ماکسیمم
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '''
    If Cold = -1 Then Cold = 10
    If Hot = -1 Then Hot = 40
    این خط میاد برسسی میکنه مقدار این دو متغییر رو و اگه -1 بود یعنی میکرو اولین بار هست که بعد از پروگرم داره کار میکنه میاد مقدار اولیه میده بهشون
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '''
    Deflcdchar 0 , 3 , 3 , 32 , 30 , 16 , 16 , 30 , 32
    این خط یه کاراکتر اختصاصی به شکل درجه سانتیگراد تعریف میکنه
    Cursor Off
    Cls
    Lcd "Ali Alipoor.R"
    Wait 1
    Cls
    این چند خط هم lcd رو اماده میکنه
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''

    Start Adc
    قسمت انالوگ به دیجیتال رو روشن میکنه
    Main:
    Do
    ''''''''&# 039;'''''''&#03 9;'''''''
    A = Getadc(3)
    B = Getadc(4)
    C0 = A - B
    C0 = C0 / 4

    A = Getadc(3)
    B = Getadc(4)
    C1 = A - B
    C1 = C1 / 4

    A = Getadc(3)
    B = Getadc(4)
    C2 = A - B
    C2 = C2 / 4

    A = Getadc(3)
    B = Getadc(4)
    C3 = A - B
    C3 = C3 / 4

    A = Getadc(3)
    B = Getadc(4)
    C4 = A - B
    C4 = C4 / 4

    A = Getadc(3)
    B = Getadc(4)
    C5 = A - B
    C5 = C5 / 4

    A = Getadc(3)
    B = Getadc(4)
    C6 = A - B
    C6 = C6 / 4
    ''''''''&# 039;'''''''&#03 9;'''''''' ''
    Cf = C0 + C1
    Cf = Cf + C2
    Cf = Cf + C3
    Cf = Cf + C4
    Cf = Cf + C5
    Cf = Cf + C6
    Cf = Cf / 7
    ''''''''&# 039;'''''''&#03 9;'''''''' '''
    Locate 1 , 1
    Lcd Cf ; Chr(0)
    Waitms 100
    این چند خط بالا هم میاد از adc میخونه و میریزه توی متغییر ها و سر اخر میانگین میگیره و رو ال سی دی نمایش میده دما و پشت سرش کاراکتر سانتیگراد رو که تعریف کرده بودیم
    ''''''''&# 039;'''''''&#03 9;'''''''' '''
    Locate 2 , 1
    If Cf < Cold Then Lcd "cold"
    If Cf > Hot Then Lcd "hot "
    If Cf > Cold And Cf < Hot Then Lcd "warm"
    Loop
    End
    این چند خط دما رو بررسی میکنه با مقدار ماکسیمم و مینیممم و میگه وضعیت دما چیه
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;''''''
    Int2isr:

    If Mio = 1 Then
    Mio = 0
    Goto Main
    Else
    Mio = 1
    Call Menu
    End If
    Return
    اینم مال قسمت دکمه منو هست که میاد بررسی میکنه اگه منو باز نبود منو رو باز میکنه
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''
    Sub Menu
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '''''
    Coldmenu:
    Cls
    Lcd "cold:" ; Cold
    Do
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    If Upk = 1 Then
    Waitms 100
    If Upk = 1 Then
    Cold = Cold + 1
    Goto Coldmenu
    End If
    End If

    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    If Downk = 1 Then
    Waitms 100
    If Downk = 1 Then
    Cold = Cold - 1
    Goto Coldmenu
    End If
    End If
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    If Cohk = 1 Then
    Waitms 100
    If Cohk = 1 Then
    Writeeeprom Cold , 0
    Goto Hotmenu
    End If
    End If
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    Loop
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '''''
    Hotmenu:
    Cls
    Lcd "hot:" ; Hot
    Do
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    If Upk = 1 Then
    Waitms 100
    If Upk = 1 Then
    Hot = Hot + 1
    Goto Hotmenu
    End If
    End If

    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    If Downk = 1 Then
    Waitms 100
    If Downk = 1 Then
    Hot = Hot - 1
    Goto Hotmenu
    End If
    End If
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    If Cohk = 1 Then
    Waitms 100
    If Cohk = 1 Then
    Writeeeprom Hot , 10
    Goto Main
    End If
    End If
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;''''
    Loop
    ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' ''''''''&# 039;'''''''&#03 9;'''''''' '''''
    Return
    End Sub
    بعد از باز شدن منو برنامه اول مقدار کولد رو میخواد که میشه با دکمه های اپ و دون کم و زیادش کرد میکرو تو یک حلقه بررسی میکنه دائم وضعیت کلید ها رو و اگه کلیدی فشترده شد کمی صبر میکنه و اگه باز هم همون کلید فشرده شده باشه(برای جلوگیری از اثر نویز محیط روی برنامه) میاد مقدار رو کم و زیاد میکنه و اگر کلید chenge فشرده شده باشه مقدار cold رو ثبت میکنه تو ای پی رام و میره سرو وقت گرفتن هات و بعد از مقدار گرفتن اون و .. کاربر میکتونه با فشردن دوباره کلید چنج بره به قسمت اصلی برنامه و نمایش دما و ....
    اگه باز نکته مبهمی بود خط های مورد نظر رو کپی کنید و بگید تا مفصل توضیح بدم
    با تشکر
نمایش نتایج: از 1 به 6 از 6

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

  1. پروژه تکمیل شده پرقدرت آمپلی فایر 100W rms
    توسط aswhu600 در انجمن مدارات صوتي
    پاسخ: 51
    آخرين نوشته: 2019/12/06, 19:20
  2. پاسخ: 3
    آخرين نوشته: 2015/12/02, 18:14
  3. پاسخ: 20
    آخرين نوشته: 2015/08/15, 14:56
  4. کمک برای تکمیل پروژه aubtm-22
    توسط mohamad majhol در انجمن مباحث دیگر علم الکترونیک
    پاسخ: 0
    آخرين نوشته: 2012/05/28, 16:50
  5. چرا تشکر در انجمن های پروژه های تکمیل شده غیر فعاله؟
    توسط shahryarrajabzadeh در انجمن گفتگو درباره ECA
    پاسخ: 7
    آخرين نوشته: 2011/09/24, 01:20

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

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

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

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

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