اطلاعیه

Collapse
No announcement yet.

برنامه ثانیه شمار به زبان بیسیک(بسکام)

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

    برنامه ثانیه شمار به زبان بیسیک(بسکام)

    سلام دوستان
    یه برنامه ثانیه شمار میخوام که به پورت C از میکرو AVR یک LCD 16*2 با کریستال 3686400هرتز وصل شده باشه
    با8535
    ممنون میشم از لطفتون.........
    www.3ax.in

    #2
    پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

    نوشته اصلی توسط download2
    سلام دوستان
    یه برنامه ثانیه شمار میخوام که به پورت C از میکرو AVR یک LCD 16*2 با کریستال 3686400هرتز وصل شده باشه
    با8535
    ممنون میشم از لطفتون.........
    دوست گرامی به نظر من برای ثانیه شمار باید از کریستال 32.768khz استفاده بکنید.

    دیدگاه


      #3
      پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

      سلام
      ممنون از توجهتون
      نه چیزیه که استاد گفته....
      به هر حال فرقی نداره چون فقط تئوری هست.
      www.3ax.in

      دیدگاه


        #4
        پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

        ثانیه شمار کسی بلد نیست؟
        www.3ax.in

        دیدگاه


          #5
          پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

          با درود . . .
          نوشته اصلی توسط download2
          سلام دوستان
          یه برنامه ثانیه شمار میخوام که به پورت C از میکرو AVR یک LCD 16*2 با کریستال 3686400هرتز وصل شده باشه
          با8535
          ممنون میشم از لطفتون.........
          نوشته اصلی توسط download2
          سلام
          ممنون از توجهتون
          نه چیزیه که استاد گفته....
          به هر حال فرقی نداره چون فقط تئوری هست.
          نوشته اصلی توسط download2
          ثانیه شمار کسی بلد نیست؟
          oo:

          حالا که اینطوره منم یه پرس چلوکباب میخوام!
          نوشابه فراموش نشه!!
          .
          .
          .
          کسی نمیاره!!!!!

          دوست عزیز و گرامی هدف ما در این سایت کمکه. شما خودتون استارت بزنید من قول میدم همه بیان کمک. منتها اینکه بیاین بگین فلان چیزو میخوام و بجنبید بهم بدید فکر کنم از پس سوپری و یا فروشگاه سر محله تون بر بیاد!

          خب در ابتدا:
          به چه زبانی میخواهید بنویسید؟
          دانشتون از برنامه نویسی چقدره؟

          با سپاس


          درد من تنهایی نیست؛ بلكه مرگ ملتی است كه گدایی را قناعت، بی‏عرضگی را صبر، و با تبسمی بر لب این حماقت را حكمت خداوند می‏ نامند! "گاندی"

          به دلیل وجود برخی مشکلات و بی احترامی ها این اکانت رو غیر فعال کردم. همیشه سر بلند باشید.
          بدرود . . .

          دیدگاه


            #6
            پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

            زبان بیسیک
            مبتدی
            فکر میکنم باید زمان overflow شدن را توی یک ثانیه بدست اورد و به اندازه همون هر بار تایمر یک ثانیه افزایش بیابد
            www.3ax.in

            دیدگاه


              #7
              پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

              خب حله دیگه! :biggrin:
              همین که اصول کار رو میدونی خودش 50 درصد راهه
              بقیش میمونه روش استفاده از تایمر ها برای ایجاد 1 ثانیه و یا مضرب مشابه
              برای یادگیری تایمر ها میتونی اینو بخونی:

              http://dc144.4shared.com/download/Ivneqi21/learning_timers.rar?tsid=20111216-174141-f77986c1

              خیلی هم ساده توضیح دادم

              بقیش میشه راه اندازی ال سیدی و دیگه تمام

              تایمر رو بخون تا بقیش

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

              موفق باشید
              درد من تنهایی نیست؛ بلكه مرگ ملتی است كه گدایی را قناعت، بی‏عرضگی را صبر، و با تبسمی بر لب این حماقت را حكمت خداوند می‏ نامند! "گاندی"

              به دلیل وجود برخی مشکلات و بی احترامی ها این اکانت رو غیر فعال کردم. همیشه سر بلند باشید.
              بدرود . . .

              دیدگاه


                #8
                پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

                سلام
                اینم اولین پست ما.
                اگه ثانیه میخوای داشته باشی به پایه های tosc1 , tosc2 کریستال 32,768K وصل کن.
                بعد
                config clock=soft
                time$="01:01:01"

                بعد با متغیر sec_ ثانیه رو بخون

                دیدگاه


                  #9
                  پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

                  سلام
                  کجاها را اشتباه کردم و چی کم و کسر هست؟
                  $regfile = "8535def.dat"
                  $crystal = 3686400
                  Dim A As Byte
                  Config Lcd Pin = Pin , Db4 = Pinc.4 , Db5 = Pinc.5 , Db6 = Pinc.6 , Db7 = Pinc.7 , E = Pinc.3 , Rs = Pinc.2
                  Do
                  Config Timer0 = Timer , Prescale = 1024
                  Enable Interrupts
                  Enable Timer0
                  Enable Ovf0
                  On Timer0 Lable
                  Timer0 = 218
                  Start Timer0
                  Do
                  Lcd A
                  Cls
                  Waitms 50
                  Loop
                  End
                  Lable:
                  Timer0 = 218
                  Start Timer1
                  Return

                  www.3ax.in

                  دیدگاه


                    #10
                    پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

                    احسنت! :applause:
                    برنامت تقریبا خوبه
                    منتها تو محاسباتت اشتباه کردی و در زیر برنامه هم تایمر 1 رو راه انداختی oo:
                    (مقدار 10.27 میلی ثانیه ایجاد کردی!)
                    ال سی دی رو هم براش مشخص نکردی که کجاش نوشته بشه و کل صفحه با اینکار به هم میریزه. ضمنا" لازم نیست دائما" ال سی دی رو پاک کنی. بلکه رو نویسیش کن!!!

                    از این برنامه که میزارم استفاده کن

                    موفق باشید
                    فایل های پیوست شده
                    درد من تنهایی نیست؛ بلكه مرگ ملتی است كه گدایی را قناعت، بی‏عرضگی را صبر، و با تبسمی بر لب این حماقت را حكمت خداوند می‏ نامند! "گاندی"

                    به دلیل وجود برخی مشکلات و بی احترامی ها این اکانت رو غیر فعال کردم. همیشه سر بلند باشید.
                    بدرود . . .

                    دیدگاه


                      #11
                      پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

                      ممنون
                      همونو نمیشه درست کرد؟
                      این دستورات جدید داره نخوندیم
                      Cursor Off چیکار میکنه نمیشه از دستور دیگه به جاش استفاده کرد

                      $regfile = "8535def.dat"
                      $crystal = 3686400
                      Dim A As Byte
                      Config LcdPin = Pin , Db4 = Pinc.4 , Db5 = Pinc.5 , Db6 = Pinc.6 , Db7 = Pinc.7 , E = Pinc.3 , Rs = Pinc.2
                      Config Lcd = 16 * 2
                      cls
                      Config Timer0 = Timer , Prescale = 256
                      Enable Interrupts
                      Enable Timer0
                      Enable Ovf0
                      On Timer0 Lable
                      If A > 59 Then
                      A = 0 : End If

                      Locate 1 , 3
                      Lcd "secend=" ; A ; " "

                      Waitms 250
                      Loop

                      End
                      Secend:
                      Timer0 = 51135
                      Incr A
                      Return
                      www.3ax.in

                      دیدگاه


                        #12
                        پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)


                        زیاد فرقی نداره. همونه!
                        کدوم دستوراتش رو مشکل داری تا برات توضیحش بدم؟
                        cursor off برای خاموش کردن اون بلینکر داخل ال سی دی هستش که دائم چشمک میزنه
                        درد من تنهایی نیست؛ بلكه مرگ ملتی است كه گدایی را قناعت، بی‏عرضگی را صبر، و با تبسمی بر لب این حماقت را حكمت خداوند می‏ نامند! "گاندی"

                        به دلیل وجود برخی مشکلات و بی احترامی ها این اکانت رو غیر فعال کردم. همیشه سر بلند باشید.
                        بدرود . . .

                        دیدگاه


                          #13
                          پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

                          51135 چجور بدست اومده؟
                          Timer1= 51135

                          مقدار n از مقدار تایمر بیشتر شده که از دستور زیر استفاده کردین؟از تایمر صفر نمیشه استفاده کرد؟
                          If A > 59 Then
                          A = 0 : End If

                          این چیکار میکنه دقیقا؟
                          Locate 1 , 3
                          Lcd "secend=" ; A ; " "

                          اون برنامه پست قبلی که نوشتم کجاش مشکل داره؟

                          ممنون
                          www.3ax.in

                          دیدگاه


                            #14
                            پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

                            معلومه اون آموزش تایمر رو که برات گذاشتم نخوندی! :biggrin:
                            مقدار فرکانس تقسیم بر پرسکال = 14400
                            زمان = 1 تقسیم بر 14400 = 69.44444 میکرو ثانیه !

                            یعنی به ازای گذشت این زمان 1 واحد تایمر گذشته!
                            پس برای 1 ثانیه چقدر باید بشماره؟؟؟(1 ثانیه تقسیم بر 69.4444 میکرو ثانیه)
                            درسته 14400 واحد!

                            از اونجا که تایمر 1 تا 65535 میشمره و ما فقط میتونیم مبدا شمارش رو تغییر بدیم پس کل رو از خواسته کم میکنیم و به عدد 51135 میرسیم.

                            حله؟

                            از تایمر 0 هم میشه استفاده کرد منتها یوخده پیچیده تر میشه.

                            اون قضیه a>59 برمیگرده به واحد ثانیه دیگه!!!
                            تایمرت هر 1 ثانیه یک واحد به a اضافه میکنه و فقط باید مواضب باشی که از 59 بیشتر نشه.

                            اون دستوراتی هم که بهش اشاره کردی در خط اولش به ال سی دی دستور میده تا در خونه سومش شروع به نوشتن کنه الی آخر
                            در خط دومش هم گفته شده که عبارت secend= رو نشون بده و بعدش مقدار a که همون ثانیه هستش

                            اگر یوخده دقت کنی خودت به اشتباهات قبلی پی میبری
                            برای درک بهتر بهتره کتاب علی کاهه رو یه نگاهی بندازی

                            موفق باشید
                            درد من تنهایی نیست؛ بلكه مرگ ملتی است كه گدایی را قناعت، بی‏عرضگی را صبر، و با تبسمی بر لب این حماقت را حكمت خداوند می‏ نامند! "گاندی"

                            به دلیل وجود برخی مشکلات و بی احترامی ها این اکانت رو غیر فعال کردم. همیشه سر بلند باشید.
                            بدرود . . .

                            دیدگاه


                              #15
                              پاسخ : برنامه ثانیه شمار به زبان بیسیک(بسکام)

                              ممنون
                              Lcd "secend=" ; A ; " "
                              بین اون دوتا علامت " " خالیه چرا؟
                              www.3ax.in

                              دیدگاه

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