اطلاعیه

Collapse
No announcement yet.

مشکل ارتباط سریال بین میکرو و کامپیوتر

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

    مشکل ارتباط سریال بین میکرو و کامپیوتر

    سلام
    من یه مدار ارتباط سریال بین میکرو و کامپیوتر با max232 بستم.
    اما نمی دونم مشکل چیه که هرچی با میکرو می فرستم، ترمینال کدویژن فقط x می گیره!! هرچی میکرو می فرسته ترمینال فقط x نشون میده. تعداد xها هم با تعداد کاراکتر هایی که میکرو می فرسته فرق می کنه. کمتر بیشتر ... هر چیزی هم که تو ترمینال مینویسم انگار میکرو هیچی نمی گیره!
    تنظیمات همش 9600 data و 1 stop و no parity هست. هیچی به ذهنم نمی رسه!
    سیستمم پورت سریال نداره! بجاش یه مبدل یو اس بی به سریال گرفتم از اون استفاده میکنم. ممکنه مشکل از اون باشه؟ کسی تا حالا از اینا استفاده کرده؟
    https://www.linkedin.com/in/mohammadhosseini69

    http://zakhar.blog.ir

    #2
    پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

    من از یکی شنیدم اصلا نتونسته از این مبدل های usb به serial جواب بگیره! مشکل از همینه؟!! اگه اینطوره پس من باید چیکار کنم؟!
    https://www.linkedin.com/in/mohammadhosseini69

    http://zakhar.blog.ir

    دیدگاه


      #3
      پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

      مبدل usb -> serial شما چیه؟ Ft232؟
      من از FT232 جواب گرفتم و هیچ مشکلی ندارم. ببین کریستال مدارت با کریستال برنامه ات یکی هستش؟
      بت در بغل و به سجده پیشانی ما کافر زده خنده بر مسلمانی ما
      اسلام به ذات خود ندارد عیبی هر عیب که هست در این مسلمانی ماست

      دیدگاه


        #4
        پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

        آی سی ft232 رو می گین؟
        مبدلی که من گرفتم یه کابله! 16 تومن خریدم. نمیدونم مدار توش چیه!
        https://www.linkedin.com/in/mohammadhosseini69

        http://zakhar.blog.ir

        دیدگاه


          #5
          پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

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

          دیدگاه


            #6
            پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

            کابله درایور نصب میکنه. تو تنظیماتش سرعتش هم تنظیم میشه. پیش فرضش همون 9600 .
            خب شما میگین من که پورت سریال ندارم چیکار کنم؟ فکر نمی کنم بتونم با ft232 کار کنم. خیلی ریزه ...
            https://www.linkedin.com/in/mohammadhosseini69

            http://zakhar.blog.ir

            دیدگاه


              #7
              پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

              من اگه جای شما بودم یه نمه میزدم به کامپیوتری که پورت سریال داره ببینم مشکل واقعا از سمت PC هستش یا نه.
              بت در بغل و به سجده پیشانی ما کافر زده خنده بر مسلمانی ما
              اسلام به ذات خود ندارد عیبی هر عیب که هست در این مسلمانی ماست

              دیدگاه


                #8
                پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

                نوشته اصلی توسط spman
                آی سی ft232 رو می گین؟
                مبدلی که من گرفتم یه کابله! 16 تومن خریدم. نمیدونم مدار توش چیه!
                سلام؛

                اگر کانکتور سر کابل رو باز کنی داخلش 1 مدار هست و می تونی ببینی از چه مبدلی استفاده کرده...

                دیدگاه


                  #9
                  پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

                  من مدارو به یه سیستم قدیمی که پورت سریال داشت وصل کردم. با هایپر ترمینال امتحانش کردم بازم x می گرفت!
                  کاملا تصادفی یه بار درست شد! همون که من فرستادم رو گرفت. کلی زیر رو رو کردمش تا آخرش فهمیدم سرعتش رو 2400 بود یادم رفته بود رو 9600 تنظیمش کنم!(هایپر ترمینال رو می گم) آخه موقع برنامه نویسی میکرو سرعت رو 9600 گذاشته بودم.
                  برگشتم رو سیستم خودم(با مبدل) تو ترمینال کدویژن سرعت رو گذاشتم رو 2400 اونجا هم جواب داد!
                  پس معلوم شد مشکل از مدار من بود!
                  گفتم شاید با سرعت بالا خطا پیش میاد ...
                  برنامه میکرو تغییر دادم گذاشتم رو 2400
                  دوباره تو ترمینال مشکل داشت! یادم نمیاد x می گرفت یا هیچی نمی گرفت...
                  سرعت رو تو ترمینال آوردم پایین تا رو 600 دوباره درست شد!! یعنی الان میکرو 2400 و ترمینال 600 ... اینا رو تو vb.net هم امتحان کردم.
                  البته هنوز نتونستم از طرف کامپیوتر چیزی برای میکرو بفرستم. هرچی میفرستم انگار وقفه مربوط به دریافت میکروکار نمی کنه!

                  خب چی میگین؟ این که دو طرف با سرعت نا برابر کار می کنن طبیعیه؟
                  https://www.linkedin.com/in/mohammadhosseini69

                  http://zakhar.blog.ir

                  دیدگاه


                    #10
                    پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

                    این مشکل به خاطر اینکه مقدار واقعی اسلاتور شما با چیزی که در برنامه میکرو وارد کردید مطابقت نداره. مثلا تو برنامه زدید میکرو 1Mhz و در عمل میکرو رو 8MHz هستش.
                    در مورد وقفه هم باید تو شبیه سازی جواب بگیرید راحت تره.
                    در ضمن تو پروتئوس ابزاری به نام COMPIM وجود داره که کمتر کسی میشناسه میتونه براتون مفید باشه. البته نه تو این پروژه.
                    بت در بغل و به سجده پیشانی ما کافر زده خنده بر مسلمانی ما
                    اسلام به ذات خود ندارد عیبی هر عیب که هست در این مسلمانی ماست

                    دیدگاه


                      #11
                      پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

                      بله!
                      تو کدویزارد کلاک رو 4 بود ...
                      الان گذاشتم رو 1 مگ
                      همه حالت ها رو امتحان کردم نشد!!
                      مبکرو رو 9600 باشه ترمینال تو حالت های مختلف یه چیزایی میگیره ولی اونی که من میفرستم نه
                      میکرو زیر 9600 باشه ترمینال اصلا هیچی نمیگیره !!
                      انگار بدتر شده!
                      ممکنه کریستال میکرو رو یه مقدار دیگه باشه؟ میشه فهمید؟ البته مان تا حالا تغییرش ندادم (مگا32)
                      https://www.linkedin.com/in/mohammadhosseini69

                      http://zakhar.blog.ir

                      دیدگاه


                        #12
                        پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

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

                        دیدگاه


                          #13
                          پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

                          رو 1 مگ گذاشتم و سرعت رو آوردم پایین و درایور مبدل رو هم تغییر دادم درست شد.

                          یه مشکل دیگه هست. اطلاعات که از طرف کامپیوتر می فرستاد میکرو چیزی دریافت نمی کنه! اصلا وقفه مربوط به دریافت عمل نمی کنه.
                          بدون وقفه این کد رو امتحان کردم :
                          کد:
                          delay_ms (500);             
                          PORTA.0 = 1;
                          putsf("Hello World! testing serial port ... !!");
                          PORTA.1 = 1;
                          ch = getchar();
                          PORTA.2 = 1;
                          داده که دریافت بشه باید از دستور getchar بگذره و ال ای دی سوم هم روشن بشه! ولی فقط دو تای اول روشن میشه. سومی روشن نمیشه!
                          ولت سنج وصل کردم به پین 3 پورت سریال. اطلاعات که میفرستادم نگاه کردم ولت سنج هیچ تغییری نمی کرد. باید یه لحظه ولتاژش زیاد بشه نه؟ برای اون پایه پورت که امتحان می کردم اینطوری میشد.
                          چیکار کنم؟!
                          https://www.linkedin.com/in/mohammadhosseini69

                          http://zakhar.blog.ir

                          دیدگاه


                            #14
                            پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

                            نوشته اصلی توسط spman
                            رو 1 مگ گذاشتم و سرعت رو آوردم پایین و درایور مبدل رو هم تغییر دادم درست شد.

                            یه مشکل دیگه هست. اطلاعات که از طرف کامپیوتر می فرستاد میکرو چیزی دریافت نمی کنه! اصلا وقفه مربوط به دریافت عمل نمی کنه.
                            بدون وقفه این کد رو امتحان کردم :
                            کد:
                            delay_ms (500);             
                            PORTA.0 = 1;
                            putsf("Hello World! testing serial port ... !!");
                            PORTA.1 = 1;
                            ch = getchar();
                            PORTA.2 = 1;
                            داده که دریافت بشه باید از دستور getchar بگذره و ال ای دی سوم هم روشن بشه! ولی فقط دو تای اول روشن میشه. سومی روشن نمیشه!
                            ولت سنج وصل کردم به پین 3 پورت سریال. اطلاعات که میفرستادم نگاه کردم ولت سنج هیچ تغییری نمی کرد. باید یه لحظه ولتاژش زیاد بشه نه؟ برای اون پایه پورت که امتحان می کردم اینطوری میشد.
                            چیکار کنم؟!
                            ولتاژش زیاد بشه؟
                            نمیخوای بگی که در حالت عادی صفره؟ تو UART در حالت عادی 1 و با یه دونه صفر شدن استارت زده میشه و .... مقاومت PullUP بذار پسر خوب. 1 کیلو.
                            بت در بغل و به سجده پیشانی ما کافر زده خنده بر مسلمانی ما
                            اسلام به ذات خود ندارد عیبی هر عیب که هست در این مسلمانی ماست

                            دیدگاه


                              #15
                              پاسخ : مشکل ارتباط سریال بین میکرو و کامپیوتر

                              نوشته اصلی توسط mostafahk


                              ولتاژش زیاد بشه؟
                              نمیخوای بگی که در حالت عادی صفره؟ تو UART در حالت عادی 1 و با یه دونه صفر شدن استارت زده میشه و .... مقاومت PullUP بذار پسر خوب. 1 کیلو.
                              متوجه منظورتون نشدم! بله در حالت عادی صفره!(نباید منفی باشه؟!)
                              اصلا اینا رو بیخیال! من الان چیکار کنم؟ هیچی از طرف کامپیوتر نمیاد ! شایدم میاد من نمی تونم بگیرم! مقاومت پول پ برای چیه؟ کجا باید بذارم؟ با این درست میشه؟
                              https://www.linkedin.com/in/mohammadhosseini69

                              http://zakhar.blog.ir

                              دیدگاه

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