اطلاعیه

Collapse
No announcement yet.

مولد پالس

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

    مولد پالس

    باسلام خدمت اساتید 8051

    یه برنامه ای میخواهم بنویسم که خودم خیلی تخصص ندارم برای همین از شما کمک میخواهم

    سه پایه از میکرو که یکی از اونا هر 1 ثانیه تغییر و ضعیت بده
    و یکی هر 60 ثانیه " "
    و یکی هر 1 ساعت
    در کل مانند یک ساعت باشه که یکی ثانیه و یکی دقیقه و دیگری ساعت ((( هر یک از این سه پایه را توسط led بشه تغیراتش رو دید )))


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

    #2
    پاسخ : مولد پالس

    نوشته اصلی توسط علیرضا
    باسلام خدمت اساتید 8051
    یه برنامه ای میخواهم بنویسم که خودم خیلی تخصص ندارم برای همین از شما کمک میخواهم
    سه پایه از میکرو که یکی از اونا هر 1 ثانیه تغییر و ضعیت بده
    و یکی هر 60 ثانیه " "
    و یکی هر 1 ساعت
    در کل مانند یک ساعت باشه که یکی ثانیه و یکی دقیقه و دیگری ساعت ((( هر یک از این سه پایه را توسط led بشه تغیراتش رو دید )))

    با تشکر از همه دوستان لطف کنید منو پیش دوستم ضایع نکنید((نمی خواهم به اسم خودم جا بزنم-- چون قول دادم))
    با سلام
    ساخت ساعت با 8051 زیاد دقیق نخواهد بود ، دلایل بماند برای بعد ، بهترین راه اینه که شما از یه چیپ ساعت نظیر ds1307 بهمراه 8051 استفاده نمایید .
    و از خروجی پالس ساز ds1307 برای شمارش ، ثانیه ، دقیقه و ساعت استفاده و در پورتهای مورد نظر ، نمایش بدید .


    دیدگاه


      #3
      پاسخ : مولد پالس

      سلام
      شما باید از Rtc(real time clock استفاده کنی مثلا ds1307 :
      این تاپیک رو یکی نگاه بنداز اطلاعاتی در این مورد دستت می یاد:
      http://www.eca.ir/forum2/index.php?topic=22842.0

      دیدگاه


        #4
        پاسخ : مولد پالس

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

        من که گفتم تخصص زیادی ندارم به تاپیک های گفته شده هم سر زدم ولی چیز مورد نظر که مشکلم رو حل کنه نیافتم

        برنامه ای که میخواهم یه برنامهع ساده است و فقط میخواهم این نوع پالس با این وقفه ها را تولید کند نه ساعت با تاریخ و ماه و ....

        ممنون میشم اگر مشکلم را حل کنید((( بابا اینجا این همه برنامه نویس خبره داره یکی نیست این برنامه ساده رو بنویسه))) به خدا گیرم
        [move]کمک کمک کمک کمک کمک کمک کمک[/move]
        آنچه به پروردگار مدیونیم دوست داشتن دیگران است.

        دیدگاه


          #5
          پاسخ : مولد پالس

          با سلام

          لطفا کمکم کنید به خدا کارم گیره (( نیخواهد اینقدر دقیق باشه فقط این خروجی ها را بدهد کافی است )) :cry: :cry: :cry:
          آنچه به پروردگار مدیونیم دوست داشتن دیگران است.

          دیدگاه


            #6
            پاسخ : مولد پالس

            نوشته اصلی توسط علیرضا
            با سلام

            لطفا کمکم کنید به خدا کارم گیره (( نیخواهد اینقدر دقیق باشه فقط این خروجی ها را بدهد کافی است )) :cry: :cry: :cry:
            باشه من برات مینویسم.
            تا 11/11.5 میذارم همینجا.

            دیدگاه


              #7
              پاسخ : مولد پالس

              بفرمایید:
              ;----------------------------------------------------------------------
              ORG 0000
              MAIN:
              CALL DELAY
              CALL ISR
              JMP MAIN
              ;----------------------------------------------------------------------
              ISR:
              INC 30H
              CPL P1.0
              MOV R6,30H
              CJNE R6,#3CH,EXIT
              MOV 30H,#00
              CPL P1.1
              INC 31H
              MOV R6,31H
              CJNE R6,#3CH,EXIT
              MOV 31H,#00
              CPL P1.2
              INC 32H
              MOV R6,32H
              CJNE R6,#0CH,EXIT
              MOV 32H,#00
              EXIT:
              RET
              ;----------------------------------------------------------------------
              DELAY:
              MOV R2,#100
              THERE:
              MOV R1,#100
              HERE:
              MOV R0,#100
              DJNZ R0,$
              DJNZ R1,HERE
              DJNZ R2,THERE
              RET
              END
              امتحانش هم کردم. :smile:

              دیدگاه


                #8
                پاسخ : مولد پالس

                در ضمن کریستال 24 مگاهرتز.
                LED ها هم به پورتهای P1.0,P1.1,P1.2 وصل میشن.ضمن اینکه واسه کم و زیاد کردن سرعت چشمک زدن LED ها میتونید در این خط از برنامه بجای 100 هر مقدار دیگه ای بذارید:
                MOV R0,#100

                دیدگاه


                  #9
                  پاسخ : مولد پالس

                  نمیدانم با چه زبانی از شما تشکر کنم واقعا ممنونم :job: :applause: :wow:
                  :nice:[move]خیلی مخلصیم به خدا [/move] :nice:
                  آنچه به پروردگار مدیونیم دوست داشتن دیگران است.

                  دیدگاه


                    #10
                    پاسخ : مولد پالس

                    من هم تست کردم درست بود فقط یه مشکل کوچولو

                    P1.1 بعد از 30 تا پالس که P1.0 زد روشن و بعد از 30 تا پالس بعدی که P1.0 میزند خاموش میشود

                    در حالی که باید P1.0 بعد از 60 پالس که زد P1.1 یک پالس بزند (یک لحظه روشن و بعد خاموش شود مانند پالسهایی که P1.0 میزند) و P1.2 هم همینطور

                    ممنونم میثاق جان اگه این مشکل راهم حل کنی واقعا ممنونت میشم

                    آنچه به پروردگار مدیونیم دوست داشتن دیگران است.

                    دیدگاه


                      #11
                      پاسخ : مولد پالس

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

                      P1.1 بعد از 30 تا پالس که P1.0 زد روشن و بعد از 30 تا پالس بعدی که P1.0 میزند خاموش میشود

                      در حالی که باید P1.0 بعد از 60 پالس که زد P1.1 یک پالس بزند (یک لحظه روشن و بعد خاموش شود مانند پالسهایی که P1.0 میزند) و P1.2 هم همینطور

                      ممنونم میثاق جان اگه این مشکل راهم حل کنی واقعا ممنونت میشم

                      سلام:
                      توی پست اول نوشته بودین "تغییر وضعیت" و روی همین حساب هم من اینجوری طراحی کردم.تغییر وضعیت یعنی اینکه وضعیتش معکوس بشه و توی همون حالت بمونه.
                      چشم اونجوری هم طراحی میکنم.

                      دیدگاه


                        #12
                        پاسخ : مولد پالس

                        بفرمایید:
                        ;----------------------------------------------------------------------
                        ORG 0000
                        MAIN:
                        CALL DELAY
                        CALL ISR
                        JMP MAIN
                        ;----------------------------------------------------------------------
                        ISR:
                        INC 30H
                        CPL P1.0
                        CALL DELAY_2
                        CPL P1.0
                        MOV R6,30H
                        CJNE R6,#3CH,EXIT
                        MOV 30H,#00
                        CPL P1.1
                        CALL DELAY_2
                        CPL P1.1
                        INC 31H
                        MOV R6,31H
                        CJNE R6,#3CH,EXIT
                        MOV 31H,#00
                        CPL P1.2
                        CALL DELAY_2
                        CPL P1.2
                        INC 32H
                        MOV R6,32H
                        CJNE R6,#0CH,EXIT
                        MOV 32H,#00
                        EXIT:
                        RET
                        ;----------------------------------------------------------------------
                        DELAY:
                        MOV R2,#100
                        THERE:
                        MOV R1,#100
                        HERE:
                        MOV R0,#100
                        DJNZ R0,$
                        DJNZ R1,HERE
                        DJNZ R2,THERE
                        RET
                        ;----------------------------------------------------------------------
                        DELAY_2:
                        MOV R2,#100
                        THERE_2:
                        MOV R1,#1
                        HERE_2:
                        MOV R0,#1
                        DJNZ R0,$
                        DJNZ R1,HERE_2
                        DJNZ R2,THERE_2
                        RET
                        END

                        برای کم و زیاد کردن زمان روشن بودن led ها میتونید توی delay_2 مقادیر R0,R1,R2 رو عوض کنید.
                        سخت افزار مدار هم همون قبلیه.

                        دیدگاه


                          #13
                          پاسخ : مولد پالس

                          قربونه هی چی با مرامه
                          عیدت هم مبارک :applause:
                          آنچه به پروردگار مدیونیم دوست داشتن دیگران است.

                          دیدگاه


                            #14
                            پاسخ : مولد پالس

                            ببخشید
                            اگه ممکنه یکبار برنامه را تست کنید چون من که تست کردم جواب نداد تشکر oo:
                            آنچه به پروردگار مدیونیم دوست داشتن دیگران است.

                            دیدگاه


                              #15
                              پاسخ : مولد پالس

                              راستش من امتحانش نکردم گذاشتم اینجا.چشم امتحانش میکنم نتیجه رو مینویسم.

                              دیدگاه

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