اطلاعیه

Collapse
No announcement yet.

مشکل ارسال سریال

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

    مشکل ارسال سریال

    دوستان خسته نباشید من تازه کار با میکرو رو شروع کردم می خوام اطلاعات یک سری سنسور رو از طریق میکرو بدم به پورت سریال کامپیوتر و اونجا روشون یک سری تحلیل ساده انجام بدم اینهم برنامه من هستش منتها موقعی که توی FRANKLIN32 رانش میکنم بعد از یک مدت یه سری از اطلاعات تکرار میشن لطفا راهنماییم کنید
    ORG 0000
    MOV SCON,#050H
    MOV TH1,#0FFH
    MOV TMOD,#020H
    ;MOV PCON,#080H
    ORG 0023
    MOV P0,#019H
    MOV P1,#025H
    MOV P2,#0B3H
    MOV P3,#00100100B
    MAIN: SETB TR1
    CLR TI
    START: MOV A,#00H
    MOV A,P0
    MOV SBUF,A
    JNB TI,$
    MOV A,#00H
    MOV A,P1
    MOV SBUF,A
    JNB TI,$
    MOV A,#00H
    MOV A,P2
    MOV SBUF,A
    JNB TI,$
    MOV A,#00H
    MOV C,P2.6
    MOV ACC.0,C
    MOV C,P2.7
    MOV ACC.1,C
    MOV C,P3.2
    MOV ACC.2,C
    MOV C,P3.3
    MOV ACC.3,C
    MOV C,P3.4
    MOV ACC.4,C
    MOV C,P3.5
    MOV ACC.5,C
    MOV C,P3.6
    MOV ACC.6,C
    MOV C,P3.7
    MOV ACC.7,C
    ;MOV A,P3
    MOV SBUF,A

    JNB TI,$
    SJMP START
    END

    #2
    مشکل ارسال سریال

    در ضمن ممنون میشم اگه در مورد نرم افزاری که باید اینور توی کامپیوتر ازش استفاده کنم راهنمایی کنید خودم MATLAB ,PASCAL به نظرم میرسه اما MATLAB کند جواب میده!!!!
    با تشکر

    دیدگاه


      #3
      مشکل ارسال سریال

      سلام . خوبی دوست عزیز؟
      برنامه شما یه چند تا اشکال کوچیک داره:

      ORG 0000
      JMP MAIN1
      ORG 0023
      JMP SRL
      MAIN1: MOV SCON,#050H
      MOV TH1,#0FFH
      MOV TMOD,#020H
      ;MOV PCON,#080H

      MAIN: SETB TR1
      CLR TI
      START: MOV A,#00H
      MOV A,P0
      MOV SBUF,A
      JNB TI,$
      MOV A,#00H
      MOV A,P1
      MOV SBUF,A
      JNB TI,$
      MOV A,#00H
      MOV A,P2
      MOV SBUF,A
      JNB TI,$
      MOV A,#00H
      MOV C,P2.6
      MOV ACC.0,C
      MOV C,P2.7
      MOV ACC.1,C
      MOV C,P3.2
      MOV ACC.2,C
      MOV C,P3.3
      MOV ACC.3,C
      MOV C,P3.4
      MOV ACC.4,C
      MOV C,P3.5
      MOV ACC.5,C
      MOV C,P3.6
      MOV ACC.6,C
      MOV C,P3.7
      MOV ACC.7,C
      ;MOV A,P3
      MOV SBUF,A

      JNB TI,$
      SJMP START

      SRL: MOV P0,#019H
      MOV P1,#025H
      MOV P2,#0B3H
      MOV P3,#00100100B
      RETI
      END

      موفق باشید .
      شأن انسان در ايمان و هجرت و جهاد است و هجرت، مقدمهآ‌ي جهاد فيآ‌سبيلآ‌الله.
      هجرت، هجرت از سنگينيآ‌هاست و جاذبهآ‌هايي كه تو را به خاك ميآ‌چسباند.
      چكمهآ‌هايت را بپوش، رهآ‌توشهآ‌ات را بردار و هجرت كن.

      دیدگاه


        #4
        مشکل ارسال سریال

        اقای نحوی عزیز خیلی ممنون که اینقدر سریع و خوب جواب دادید من توی همین چند روزه که عضو این سایت شدم خیلی استفاده کردم و به خیلیها هم معرفیش کردم.در ضمن محض اطلاع توی یکی از مقالاتتون در مورد plc نوشته بودید من ضمینه کاریم plc یه(power line carrier) .

        و اما در مورد مساله خودم اولا: من میخوام از پورتهای میکرو برای ارسال وضعیت 28 تا سنسور استفاده کنم یکی از دوستان میگفت باید روی 4 پورتم اول باید تمام مقادیر رو "یک"بدم! اگه درسته برنامم چطوری باید تغیر کنه ایا اینکار یکبار باید انجام بشه یا هر باری که میکرو دور میزنه باید این یک ها ست بشن.
        مرسی از راهنماییتون

        دیدگاه


          #5
          مشکل ارسال سریال

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

          دیدگاه


            #6
            مشکل ارسال سریال

            سلام . خوبی دوست عزیز؟
            همونطوری که رضا جان گفتن زمانی که شما یه بیت رو 1 میکنید در واقع اون رو ورودی هم میکنید . شرط لازم برای ورودی شدن پورت میکرو اینه که اول توی 1 بریزید .
            ولی در مورد پروژه شما . سنسور ها تغییراتشون با چه سرعتی هست . اگه سرعتش خیلی براتون مهم نیست میتونید از مالتی پلکسر استفاده کنید تا از بیت های کمتری برای خوندن استفاده کنید .
            موفق باشید .
            شأن انسان در ايمان و هجرت و جهاد است و هجرت، مقدمهآ‌ي جهاد فيآ‌سبيلآ‌الله.
            هجرت، هجرت از سنگينيآ‌هاست و جاذبهآ‌هايي كه تو را به خاك ميآ‌چسباند.
            چكمهآ‌هايت را بپوش، رهآ‌توشهآ‌ات را بردار و هجرت كن.

            دیدگاه


              #7
              مشکل ارسال سریال

              با سلام
              توی روش مالتی پلکس همونطورئیکه اقا محمد گفتند به شرطی که سرعت تغییرات داده های که می خواهید وارد میکرو بکنید کم باشه می تونید ازروش نمونه برداری زمانی یا همون مالتی ژلکس استفاده بکنید
              تو این روش برای مدت ثابت هروردی واردمیکرو میشه و درزمان فوق پردازش روی اون دیتا صورت می گیره
              دراین روش چند چیز مهمه سرعت مروروردی های (همون رفرش کرن وردی)که خیلی سریع تر از تغییرات ورودی باشه مشکل ایجاد خواهد شد و باید تقریبا تاحدی هماهنگ باشه
              این سرعت رو ممکنه در چند مرحله ازمون و خطا بتونید درست به دست بیارید.
              یعنی با چند بار تغیر زمان مرورعمل رفرش درسابروتین Delayمخصوص خودش
              درحالت کلی روش خوندن مقدارورودی به این صورته
              اگر فرض بکنید شما تمام سنسورها رو کلا به یک A/D
              8بیتی وصل کردید .
              بهترین کاراینکه که ازیک ADبا چند کانال ورودی آنالوگ استفاده بکنی
              تو این حالت فقط با فعال ساختن ادرس مورد نظر(چیزی شبیه مالتی پلکسرها )می تونی اطلاعات سنسور مشخص رو به ADوارد بکنی
              مثلا از AD808که دارای 10کانال آنالوگ ورودی(اگه اشتباه نکرده باشم)هستش
              شما اگه ازتعداد زیادی سنسوراستفاده می کنی
              می تونی هر 10تا رو به یه مبدل وصل بکنی
              بعد مثل کاری که تو توسعه حافظه ها وآدرس دهی اونا انجام می دند بیای واسه اونا هم دیکودر بذاری تا با دادن ادرس سنسورمورد نظردرست اون به همراه مبدل به میکرو وصل بشه
              نمی دونم اگه قروقاطی هم گفتم شرمنده
              امیدوارم مشکلتون حل بشه.

              دیدگاه


                #8
                مشکل ارسال سریال

                سلام با تشکر از توضیحات خوبتون
                من در کل 28 تا سنسور دارم که یک میله با حرکات نوسانی(تکراری) از جلوی اونها رد میشه
                حالا من باید تابع مکان -زمان حرکت میله رو با استفاده از وضعیت سنسورها بدست بیارم.
                برای این کار باید قبل از تغییر وضعیت سنسورها حداقل2یا 3بار وضعیتشون رو بین یک حرکت میله بین دو سنسور به کامپیوتر بفرستم
                تعدادسنسورها=28
                فرکانس میله=حداقل 20 هرتز=2*20*28 تغییر وضعیت در ثانیه
                3بار ارسال قبل از هر تغییر وضعیت=3*2*20*28 بیت مورد نیاز در هر ثانیه=3360بیت در ثانیه
                اگه اشتباه نکرده باشم.
                در ضمن اسرار دارم اینکارو تنها با استفاده از میکرو انجام بدم(البته از توضیحاتتون در مورد مالتی پلکسر ممنونم )


                در ضمن ممنون میشم اگه در مورد نحوه تست ارسال دیتای سریال توی پروتیوس راهنماییم کنید
                خودم که هر چی با کانکتور 9پین ور رفتم و هر چی با لاجیک آنالایزر ور رفتم چیزی دستگیرم نشد

                دیدگاه


                  #9
                  مشکل ارسال سریال

                  سلام . خوبی دوست عزیز؟
                  یه مطلب خیلی مهمی اینجا هست اونم اینم بهینه کردم تعداد سنسور ها به همراه بهترین خروجی هست .
                  شما دقیقا شرایط رو توضیح بدید شاید تصویری باشه بهتره بعد بگید میشه روی میله سنسور متصل کرد یا خیر بعدشم اینکه محیط چه محیطی هست از نظر نویز چطوریه و ...
                  شاید بتونیم راه حل مختصر تر و راحتری رو پیدا کنیم .
                  نمیدونم تا چه حد با کد نویسی سنسور آشنایی دارید ولی 28 سنسور میدونید چند حالت رو پیش میاره؟ 2 به توان 28 حالت رو ایجاد میکنه اصلا امکان بررسیشون وجود نخواهد داشت .
                  هر چه تعداد سنسور ها کمتر باشه بهتر هست .
                  موفق باشید .
                  شأن انسان در ايمان و هجرت و جهاد است و هجرت، مقدمهآ‌ي جهاد فيآ‌سبيلآ‌الله.
                  هجرت، هجرت از سنگينيآ‌هاست و جاذبهآ‌هايي كه تو را به خاك ميآ‌چسباند.
                  چكمهآ‌هايت را بپوش، رهآ‌توشهآ‌ات را بردار و هجرت كن.

                  دیدگاه


                    #10
                    مشکل ارسال سریال

                    سلام
                    نه اونقدر پیچیده نیست چون تنها حالتهای خاصی پیش میاد همونطور که قبلا گفتم یک میله میاد و به ترتیب از اینها رد میشه و خیلی حالتهای پیچیده پیش نمیاد.مثلا یک سیلندر ماشین رو فرض کنید که در راستای ارتفاعش سنسور چیده باشیم (فرض کنید جنسش شیشه س )و قراره پیستون بیاد سنسور ها رو تغییر وضعیت بده.
                    با تشکر[/b]

                    دیدگاه


                      #11
                      مشکل ارسال سریال

                      سلام . خوبی دوست عزیز؟
                      نه اینطوری نمیشه . شما توی قسمت اول گفتید که حرکت نوسانی داره حرکت نوسانی یعنی در 2 بعد حرکت داره ولی حرکت یه پستون فقط در بعد ارتفاع هست .
                      اگه پروژه تون بحث مالی توش داره که نمی خواهید توی سایت مطرح کنید و فکر میکنید من میتونم کمکتون کنم یه PM به من بدید تا همفکری کنیم .
                      موفق باشید.
                      شأن انسان در ايمان و هجرت و جهاد است و هجرت، مقدمهآ‌ي جهاد فيآ‌سبيلآ‌الله.
                      هجرت، هجرت از سنگينيآ‌هاست و جاذبهآ‌هايي كه تو را به خاك ميآ‌چسباند.
                      چكمهآ‌هايت را بپوش، رهآ‌توشهآ‌ات را بردار و هجرت كن.

                      دیدگاه


                        #12
                        مشکل ارسال سریال

                        سلام
                        نه اصلا قضیه مالی نیست خب منم منظورم اینه که در یک بعد نوسان داره دقیقا مثل پیستون میره و میاد اینم نوسانه دیگه در ضمن در مورد پروتیوس هم کمک خواسته م لطف می کنید راهنمایی کنید
                        با تشکر

                        دیدگاه


                          #13
                          مشکل ارسال سریال

                          سلام . خوبی دوست عزیز؟
                          بسیار خوب اگه اینطوری باشه شما مثلا از پایین ترین سنسور چک میکنید تا به بالا ترین سنسور برسید و در واقع فقط ارتفاع پیستون رو می خواهید . حق با شما هست این کار مشکلی نیست .
                          شما یه راه حل خیلی ساده دارید .
                          نیازی نیست که داده تمام سنسور ها رو بفرستید فقط میکرو تمام سنسور ها رو میخونه از یه سطحی به بعد همه صفر هستن و از یه سطحی به بعد همه یک هستن . شما دقیقا شماره این سنسور رو که خودش یک هست و سنسور بعدیش صفر هست رو میفرستید و به طرف کامپیوتر میگید که زیر این سنسور رو یک فرض کن بالاش رو صفر . دیگه نیازی نیست دونه دونه سنسور ها رو بفرستید با اینکار سریع تر میتونید سنسور ها رو چک کنید .
                          در مورد ارتباط سریال هم یه ابزاری هست به نام virtual terminal باد ریت رو براش مشخص میکنید و خروجی ارسال میکرو رو به RXD این وصل می کنید . براتون داده ها رو نشون میده فقط دقت کنید که عددی که میفرستید رو نشون نمیده بلکه کد اسکی منتاظرش رو نشون میده .
                          موفق باشید .
                          شأن انسان در ايمان و هجرت و جهاد است و هجرت، مقدمهآ‌ي جهاد فيآ‌سبيلآ‌الله.
                          هجرت، هجرت از سنگينيآ‌هاست و جاذبهآ‌هايي كه تو را به خاك ميآ‌چسباند.
                          چكمهآ‌هايت را بپوش، رهآ‌توشهآ‌ات را بردار و هجرت كن.

                          دیدگاه

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