اطلاعیه

Collapse
No announcement yet.

ذخیره ساعت

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

    ذخیره ساعت

    سلام
    توی بیسیکام چطور میشه ساعت رو ذخیره کرد؟درواقع من برنامه ای دارم که میخوام با فعال کردن ساعت avr و نشون دادن آن توی خط اول lcd ،توی خط دوم زمان یه رویداد {مثلا یک شدن portc.1}را نمایش و آنرا در ram یا eeprom خود avr ذخیره کنم،(فقط دستور ذخیره ساعت رو میخام البته توی بیسیک)

    #2
    پاسخ : ذخیره ساعت

    :eek:
    این چه فونت ی هستش ؟
    ذخیره ساعت تو بیسیک ؟
    یعنی چی ؟
    خوب سااعت از کجا وارد میکرو شده که ذخیره بشه ؟
    ساعت داخلی خود میکرو رو میخواین راه اندازی کنید ؟
    [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

    دیدگاه


      #3
      پاسخ : ذخیره ساعت

      نوشته اصلی توسط حامد رحیمی
      :eek:
      این چه فونت ی هستش ؟
      ذخیره ساعت تو بیسیک ؟
      یعنی چی ؟
      خوب سااعت از کجا وارد میکرو شده که ذخیره بشه ؟
      ساعت داخلی خود میکرو رو میخواین راه اندازی کنید ؟
      سلام
      ببخشید دوست عزیز - منظورم اینه که با بیسکام یک برنامه ساعت برای atmega32 نوشته شده که توی خط اول ال سی دی 2*16 این ساعت رو نمایش میده حالا میخام برنامه رو توسعه بدم به اینصورت که یک اتفاق خاص مثلا روشن شدن یک چراغ که در ساعت 50/45/11 اتفاق افتاده و بوسیله سنسور مربوطه آشکار شده و به یکی از پایه های avr مثلا portc.1 وصل شده ، ضمن نمایش زمان این اتفاق در خط دوم ال سی دی ، در ایپرام خود میکرو ذخیره هم بشه،

      دیدگاه


        #4
        پاسخ : ذخیره ساعت

        سلام
        برای ذخیره زمان در ایپرام میتونی ساعت و دقیقه و ثانیه رو بصورت dim sec as eram byte تعریف کنی
        برای اینکه زمان 1 شدن یه پورت رو ذخیره کنی هم میتونی از پایه های اکسترنال اینتراپت استفاده کنی ...
        Share OR Die

        دیدگاه


          #5
          پاسخ : ذخیره ساعت

          نوشته اصلی توسط Mahdi.N
          سلام
          برای ذخیره زمان در ایپرام میتونی ساعت و دقیقه و ثانیه رو بصورت dim sec as eram byte تعریف کنی
          برای اینکه زمان 1 شدن یه پورت رو ذخیره کنی هم میتونی از پایه های اکسترنال اینتراپت استفاده کنی ...

          سلام
          اگه امکان داره این چند خط از برنامه رو با مثال توضیح بدید

          دیدگاه


            #6
            پاسخ : ذخیره ساعت

            Dim Saat As Eram Byte
            Dim Dagige As Eram Byte
            Dim Sanuye As Eram Byte

            If Bin A.1 = 1 Then:
            Esaat = Saat
            waitms 4
            Edagige = Dagige
            waitms 4
            Esaniye = Saniye
            Waitms 4

            End If
            Locate 1 , 1
            Lcdesaniye ; Edagige ; Esaat ; " "
            [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

            دیدگاه


              #7
              پاسخ : ذخیره ساعت

              حامد جان میشه توضیح بدی که چرا بین این دستورات 4 میلی ثانیه فاصله دادی ؟
              Share OR Die

              دیدگاه


                #8
                پاسخ : ذخیره ساعت

                به نکته ی خوبی اشاره کردی :mrgreen:
                با تشکر از نوه ی عزیزم :mrgreen:
                بله علت این استش که برای نوشتن توی حاضظه eeprom باید 4 الی 9 میلی ثانیه زمان بزاری چون سرعت حافظه کمه البته تعداد دفعات نوشتن هم محددود هستش تا 100هزار بار
                [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

                دیدگاه


                  #9
                  پاسخ : ذخیره ساعت

                  از توضیحت ممنونم بابا بزرگ ... :mrgreen:
                  اما من همیشه متغییر های eeprom رو پشت هر هم مینوشتم و مشکلی هم پیش نمی اومد ... چرا ؟؟؟؟؟؟؟؟/
                  Share OR Die

                  دیدگاه


                    #10
                    پاسخ : ذخیره ساعت

                    نوشته اصلی توسط حامد رحیمی
                    به نکته ی خوبی اشاره کردی :mrgreen:
                    با تشکر از نوه ی عزیزم :mrgreen:
                    بله علت این استش که برای نوشتن توی حاضظه eeprom باید 4 الی 9 میلی ثانیه زمان بزاری چون سرعت حافظه کمه البته تعداد دفعات نوشتن هم محددود هستش تا 100هزار بار
                    سلام
                    خود کامپایلر این زمان را در نظر نمیگیره و اعمال نمیکنه؟

                    دیدگاه


                      #11
                      پاسخ : ذخیره ساعت

                      2تا علت داره
                      1 یا فرکانس کلاک بالایی داری
                      که cpu
                      تو اون فرکانس میتونه تا قبل دستور بعدی این تاخیرو جبران کنه
                      یا برنامت دستور پیچیده ای نداره که cpu فول بشه
                      واسه این مواقع یه دستور هست فکر کنم
                      delay باشه
                      که خود میکرو این عمل رو انجام میده
                      البته من خودم رو این زمینه زیاد مطالعه ای نداشتم و به خاطر همینه که خوب نمی تونم قانع تون کنم
                      تو کتاب های زیادی نوشته باید این زمان باشه
                      بین علما هم اختلاف هستش که در چه حدی باشه ؟
                      10 میلیی ثانیه بیشترین مقدار شنیدم
                      4 میلی ثانیه کمترین مقدار
                      ابته من هم حرف شما رو قبول دارم
                      تو یه مدار که متغیرم بزرگ بود و از جنس استرینگ بود من به این مشکل برخوبردم که دیتای من تو ee ذخیره میشد ولی اون دیتایی که من میدادم نبود
                      پس اگه حتی دیتا شما هم بزرگ تر از بیت بود این دستور رو بنویسید
                      خیلی خوب میشه
                      بازم مراجع عالی قدر سایت میتونند نظر خودشون رو اعلام کنن :biggrin:
                      [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

                      دیدگاه


                        #12
                        پاسخ : ذخیره ساعت

                        نوشته اصلی توسط kavosh83
                        سلام
                        خود کامپایلر این زمان را در نظر نمیگیره و اعمال نمیکنه؟
                        به نظر نمیاد خود کامپایلر اینکارو بکنه ... احتمالا این تفاوت در پروژه ها یه علتی داره که هنوز برای ما معلوم نیست ....
                        Share OR Die

                        دیدگاه


                          #13
                          پاسخ : ذخیره ساعت

                          نوشته اصلی توسط Mahdi.N
                          به نظر نمیاد خود کامپایلر اینکارو بکنه ... احتمالا این تفاوت در پروژه ها یه علتی داره که هنوز برای ما معلوم نیست ....
                          این زمان رابطه مستقیم با طول متغیرت داره
                          یه مثال خوب
                          چقدر طول میکشه یه اهنگ تو فلش ریخت ؟
                          حالا تو همون فلش چقدر طول میکشه یه فیلم رو کپی کرد ؟ :read:خوب طول متغیر بیشتر زمان بیشتر طول متغیر کمتر زمان کمتر
                          [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

                          دیدگاه


                            #14
                            پاسخ : ذخیره ساعت

                            البته تو خوندن از حافظه eeprom نیاز به وقفه نیست
                            البته بنا به دلایل علمی میگم که کلا سعی کنید از خود حافظه به صورت مستقیم دیتای رو نخونید
                            چون عمر حافظه ee2 کم میشه
                            من خودم فرصت کردم حتما یه حافظه ee2 داخل میکرو رو تست میکنم ببینم میسوه یا نه چون اگه بینهایت عمر داشت هرگز شرکت این نقص رو تو دیتا شیت نمی نوشت که نهایت نوشتن در حافظه 100000 بار است
                            اگه تو هر ثانیه 100 بار نوشته بشه تو یه ربع میشه حافظه رو سوسوند :eek:
                            و حتما دفعات خواندن محدودی هم داره :rolleyes:
                            [move][img width=133 height=100]http://bargiri.persiangig.com/aks/0.306310001356499787_taknaz_ir.gif[/img][/move]

                            دیدگاه

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