اطلاعیه

Collapse
No announcement yet.

پروژه اوپن سورس ساعت دیجیتال , سون سگمنت

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

    #31
    پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

    سلام
    بچه ها من همون ساعت با ال سی دی رو که ساده بود تبدیل به سون سگمنتش کردم که می تونید دانلود ش کنید
    :NO:
    http://my-zoo.persiangig.com/amozesh/saat.ba.7seg.bads.mamule.rar
    از مزایای این ساعت : دقتش مثل ساعت های دیگه خوبه و اینکه برنامه اش ساده یه
    از معایبش : ساعت همه پورت ها رو اشغال کرده در نتیجه شما واسه ساخت pcb کلی اذیت میشین
    پیشنهاد من : من به شما پیشنهاد میدم دانلودش کنید برای تماشا و یاد گیری ولی برای ساخت اینو نسازین چون خیلی شلوغ پلوغه

    انشالله که یک ساعت که سون سگمنت هاش به یک پورت وصل شده باشه میسازیم بعدش اگر خواستین اونو بسازین بسازین چون که پی سی بی راحتتر میشه و شما پورت هاتون کمتر اشغال میشه
    فعلا
    یادتون باشه مارو راهنمایی کنید
    فعلا سعی کنید دستوراتی رو که کمک می کنه به جاروب کردن یاد بگیرین چون منم احساس می کنم که بهتره از شیف رجیستر ها استفاده نکنیم و از خود پینها برای جاروب استفاد ه کنیم البته این فقط نظر منه .
    باز میام اگر خدا بخواد
    تشکر از همگی دوستان
    مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .

    دیدگاه


      #32
      پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

      ببخشید من فایل شما رو دانلود نکردم، اما یه مساله ای رو در مورد جاروب می گم، شاید به درد بچه هایی که هنوز درست متوجه نشدن سیستم کار چطوره به درد بخوره :read::

      فرض کنیم روی 5 تا سون سگمنت می خوایم عدد های 1 تا 5 رو به ترتیب نشون بدیم (یعنی روی اولی 1، روی دومی 2 و ...)، و سگمنت ها کاتد مشترک هستند. اما مشکل کار اینه که تمام 5 سون سگمنت پایه های آندشون به هم وصل شده (یعنی مثلاً 1 سیم به آند سگمنت شماره 1 هر پنج سگمنت وصل شده)، اما کاتدهای هر سون سگمنت جدا از بقیست.

      حالا وقتی بخوایم مدل جاروب رو انجام بدیم، کافیه عدد 1 رو روی آندها بذاریم. در این شرایط هر کدوم که کاتدش زمین شده باشه روشن میشه و عدد 1 رو نشون میده، اگه همه کاتدها وصل باشه، همه سون سگمنت ها 1 رو نشون میدن. حالا این کار رو می کنیم، عدد 1 رو فعال می کنیم، سون سگمنت شماره 1 رو هم فعال می کنیم، عدد 2 رو روشن می کنیم، سون سگمنت شماره 2 رو روشن می کنیم، ....

      این کار رو با میکرو با فرکانس 4 مگ مثلاً انجام میدیم. نکته مهمی که وجود داره اینه که چشم اگه روشن و خاموش شدن با فرکانس بیشتر از 50 هرتز باشه، نمیتونه فرقی بین روشن و خاموش بذاره. بنابراین اگه ما این کار تکرار رو با فرکانس بیشتر از 50 هرتز انجام بدیم، همیشه سون سگمنت ها رو روشن می بینیم. در صورتی که در واقع در هر لحظه فقط یکی از اونها روشنه...

      این رو بهش میگن جاروب (یا همون سیستم رفرشی، یا هر اسم دیگه ای که مشابه با این اسما هست)
      دانش فنی تا به عمل تبدیل نشده، ذره ای ارزش نداره. اما بعضی وقت ها باید از دانش برای باز کردن مرزهای جدیدی در علم استفاده کرد، نه اینکه اونها رو صرفاً فقط به عمل تبدیل کرد.

      دیدگاه


        #33
        پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

        همونطور که حامد جان گفتن جاروب کردن اصلا مشکل نیست (مشکلی نیست که اسان نشود مرد ان است که هراسان نشود ! :mrgreen

        درباره فرکانس جاروب باید دو موضوع رو در نظر بگیرین حداکثر وحداقل این فرکانس !
        حداکثر فرکانس جاروب:
        ببینید وسیله ای که دارید جاروبش میکنید led یا seven segment یا هر چیزی ..
        یه سرعت خاموش و روشن شدن خاصی داره که فرکانس جاروب شما نباید از اون مقدار بیشتر بشه

        حداقل فرکانس جاروب :
        درباره حداقل فرکانس جاروب هم همونطور که حامد عزیز گفتن باید از سرعت دید انسان بیشتر باشه که 50 یا 60 هرتز بود فکر کنم
        مثلا شما فرکانس جاروب رو بزار رو حدود 120 هرتز ببین چطوری میشه
        من فردا میرم ds1307 بگیرم ببینم چجور جانوریه ! :biggrin:
        من نمىآ‌توانم فرضیه «بىآ‌اخلاقى انسان» را بپذیرم، و من اخلاق را منحصرا امرى انسانى و متعلق به انسان مىآ‌دانم که هیچ نوع قدرت مافوق انسانى در پشت آن وجود ندارد
        آلبرت اینشتین
        منبع: http://fa.wikiquote.org

        دیدگاه


          #34
          پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

          سپاس از توضیحاتی که گذاشته اید
          حالا اگر فرکانس خیلی بالا باشه اشکال داره ؟
          بعدش خواستم بدونم که چطوری میشه بدون تایمر کانتر و شیفت رجیستر و لچ و ... جاروب کرد ؟
          یا اینکه بهتره با یکی از موارد بالا جاروب کنم ؟
          آیا باید در یک حلقه قرار بدیم بعدش از دستور rotete استفاده کنیم ؟
          سپاس گذاریم
          مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .

          دیدگاه


            #35
            پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

            نوشته اصلی توسط iranesabz
            حالا اگر فرکانس خیلی بالا باشه اشکال داره ؟
            بله، اگر فرکانس از یه حدی بالاتر باشه، مدت زمانی که LED روشن میشه انقدر کمه که اصلاً روشن دیده نمیشه. یعنی خاموش دیده میشه یا نهایتاً یه نور خیلی کم دیده میشه. یه بار به نظرم بهتره خودتون تست کنید تا در عمل ببینید.

            نوشته اصلی توسط iranesabz
            بعدش خواستم بدونم که چطوری میشه بدون تایمر کانتر و شیفت رجیستر و لچ و ... جاروب کرد ؟
            یا اینکه بهتره با یکی از موارد بالا جاروب کنم ؟
            آیا باید در یک حلقه قرار بدیم بعدش از دستور rotete استفاده کنیم ؟
            برای جاروب کردن اصلاً نیازی به هیچ قطعه اضافی نیست. شما فقط کافیه یکی از بیت ها رو روشن کنید، یه مقدار صبر کنید (این همون فرکانس رو مشخص میکنه) و بعد با یه عمل شیفت ساده (در c با عمل >> یا << انجام میشه) بیت بعدی رو روشن کنید.
            این یه نمونه کد که به زبون c برای کدویژن نوشته شده هست، این کد بیت فعال سازی را یکی یکی روشن میکند:

            کد:
            for (int a=0; a<8; a++)
            {
            	Porta = ((0x01)<<i);
            	delay_ms(50);
            }

            البته این کد ناقصه، فقط برای شیفت دادن درستش کردم. کافیه شما این رو به همراه بقیه کدها توی برنامه قرار بدید. در ضمن توی فروم کدها بد نشون داده میشه، اگه می خواید کد رو درست ببینید می تونید اون رو انتخاب کنید و در notepad پیست کنید.
            دانش فنی تا به عمل تبدیل نشده، ذره ای ارزش نداره. اما بعضی وقت ها باید از دانش برای باز کردن مرزهای جدیدی در علم استفاده کرد، نه اینکه اونها رو صرفاً فقط به عمل تبدیل کرد.

            دیدگاه


              #36
              پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

              سلام
              حامد جان من متاسفانه سی یاد ندارم
              دوستان من یک مدار ساده که فقط ثانیه رو میشماره طراحی کردم به صورت رفرشی ولی تا 40 بیشتر نمیشماره در صورتی که باید تا 59 بشماره بعدش صفر بشه
              اگر میشه دانلودش کنید و مشکل منو حل کنید
              فایل بسکام و پروتوئوسش هست :NO:
              http://my-zoo.persiangig.com/moshkelateamozeshe/moshkel.saat.ba.ds.refreshe.rar
              مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .

              دیدگاه


                #37
                پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                سلام
                من این برنامه رو با rtc داخلی میکرو نوشتم.
                امیدوارم بدردتون بخوره!

                http://www.4shared.com/file/T8QMuf1m/saat.html

                دیدگاه


                  #38
                  پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                  نوشته اصلی توسط iranesabz
                  حامد جان من متاسفانه سی یاد ندارم

                  یه توصیه، به نظر من بهتره بری c یاد بگیری. نمی خوام بگم بیسیک محدوده، اما c هم برنامه های قوی تری میشه باهاش نوشت، هم اینکه میکروهای سطح بالاتر اصلاً کامپایلر بیسیک ندارن، و اون وقت تو مجبور میشی از اول همه راه و چاره های c رو یاد بگیری.

                  نوشته اصلی توسط iranesabz
                  دوستان من یک مدار ساده که فقط ثانیه رو میشماره طراحی کردم به صورت رفرشی ولی تا 40 بیشتر نمیشماره در صورتی که باید تا 59 بشماره بعدش صفر بشه
                  من زیاد بیسیک یادم نیست، اما فایل bas رو دیدم. یه مساله ای توش هست، من اصلاً جایی که نشون دهنده صبر باشه نمی بینم. البته من خیلی قدیم با بیسیک کار کردم و اصلاً یادم نیست.
                  دانش فنی تا به عمل تبدیل نشده، ذره ای ارزش نداره. اما بعضی وقت ها باید از دانش برای باز کردن مرزهای جدیدی در علم استفاده کرد، نه اینکه اونها رو صرفاً فقط به عمل تبدیل کرد.

                  دیدگاه


                    #39
                    پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                    نوشته اصلی توسط lostlord
                    سلام
                    من این برنامه رو با rtc داخلی میکرو نوشتم.
                    امیدوارم بدردتون بخوره!

                    http://www.4shared.com/file/T8QMuf1m/saat.html
                    دوست من ممنون ولی دانلود نمیشه
                    آیا کسی هست مشکل منو حل کنه به سه پاسخ قبل مراجعه کنید
                    سپاس
                    جالبه الان دانلود شد
                    حتما می بینمش
                    سپاس
                    مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .

                    دیدگاه


                      #40
                      پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                      لینک راپید گذاشتم
                      اگه دانلود نشد برو به www.rapidbaz.com آدرس رو کپی کن بزار اونجا بعد دانلود کن
                      http://rapidshare.com/files/455705223/saat.rar

                      دیدگاه


                        #41
                        پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                        اینم اصلاح شده فایل شما
                        http://www.persiangig.com/pages/download/?dl=http://zavar.persiangig.com/document/moshkel.saat.ba.ds.refreshe.rar

                        دیدگاه


                          #42
                          پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                          اول اینکه بعد از هر دستور I2cstop حدود 10 میلی ثانیه تاخیر بزارید
                          اما یه مشکل اساسی در این مدار وجود داره اینکه شما به هر حال مجبوری در متن برنامه اصلی از تاخیر استفاده کنی (برای کاهش سرعت جاروب) ولی اینکار باعث میشه که برای نمایش ثانیه ها اختلال بوجود بیاد مخصوصا زمانی که مدار بزرگ تر بشه و تاریخ هم اضافه کنی (چون دستورات wait زمانشون دقیق نیست و ضمنا منبع کلاک اجرای دستورات با ds1307 کاملا متفاوته نسبت به هم حالت چرخشی خواهند داشت حالا تصور کنید ds1307 ثانیه رو شمرده و در خروجی قرار داده ولی میکرو هنوز اندر خم دستورات wait می باشد ! و مثلا ثانیه جدید رو 3 دهم ثانیه بعد نشون میده ! ( خب این خیلی ضایع میشه :mrgreen

                          حالا برای حل این مشکل من سه راه به فکرم رسید:

                          راه اول :
                          هنگام خوندن هر ثانیه از ds1307 به میکرو اینتراپت بدی و میکرو کارو زندگیشو ول کنه بره زیربرنامه خوندن زمان از ds1307 رو انجام بده ! (چون من با این ایسی کار نکردم نمیدونم این امکان رو داره یا نه)

                          راه دوم:
                          برای تاخیر جاروب از یکی از تایمرهای میکرو (با وقفه)استفاده کنی و برنامه جاروب بصورت زیربرنامه وقفه تایمر اجرا بشه -- اینکار جوابگو هست ولی برای بعد که بخوای قسمتهای دیگه ای به برنامه اضافه کنی مثلا دماسنج یا ... کار سخت میشه یعنی شما کلا در هیچ جای برنامه نباید تاخیر داشته باشی

                          راه سوم :
                          کلا نمایش ثانیه رو بیخیال بشی و هر چی دوست داشتی از دستور wait تو برنامه استفاده کنی !

                          ===========================
                          در ضمن شما باز هم با همه داستانهایی که ما سرودیم !
                          زمان خاموش شدن و روشن شدن رو برای سگمنتها در نظر نگرفتین الگوریتم اینطوریه :
                          سگمنت a روشن میشود - تاخیر - سگمنت a خاموش میشود - تاخیر - سگمنت b رو شن میشود- تاخیر - سگمنت b خاموش میشود - تاخیر
                          و این حلقه مرتب تکرار میشه :smile:
                          من نمىآ‌توانم فرضیه «بىآ‌اخلاقى انسان» را بپذیرم، و من اخلاق را منحصرا امرى انسانى و متعلق به انسان مىآ‌دانم که هیچ نوع قدرت مافوق انسانى در پشت آن وجود ندارد
                          آلبرت اینشتین
                          منبع: http://fa.wikiquote.org

                          دیدگاه


                            #43
                            پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                            راستی موقع خاموش بودن سگمنت ها پورت دیتا رو هم باید صفر کنی
                            من نمىآ‌توانم فرضیه «بىآ‌اخلاقى انسان» را بپذیرم، و من اخلاق را منحصرا امرى انسانى و متعلق به انسان مىآ‌دانم که هیچ نوع قدرت مافوق انسانى در پشت آن وجود ندارد
                            آلبرت اینشتین
                            منبع: http://fa.wikiquote.org

                            دیدگاه


                              #44
                              پاسخ : بیایید اینجا شروع به ساختن ساعت با سون سگمنت کنیم

                              با سلام درباره رفرش سون سگمنتها آقای silicon0 نکته های خوبی را گفتند بهترین راه برای رفرش استفاده از وقفه تایمر است

                              دیدگاه


                                #45
                                پاسخ : پروژه اوپن سورس ساعت دیجیتال

                                سلام
                                مثل اینه که جدی جدی باید برم تایمر کانتر ها رو یاد بگیرم
                                آخه یه برنامه نوشتم ولی توی محیط بسکام چشمک میزنه ولی بدم نمیاد روی برد برد ببینم چطوریه
                                اجازه بدید روی برد برد ببندمش اگر توی عمل مشکلی نداشت براتون میزارمش آخه توی پروتوس خیلی ضایع چشمک میزنه
                                فعلا دوستان بای
                                مولا علی (ع) میفرمایند : آسوده باش , آستین هارا بالا بزن , بر خدا توکل کن , آنگاه خدا را خواهی دید که زودتر از تو دست به کار شده است .

                                دیدگاه

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