اطلاعیه

Collapse
No announcement yet.

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

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

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

    سلام دوستان
    در مورد ارتباط سریال کمک میخواستم چون که واقعا گیر کردم. :angry: در ضمن تو تایپکا هم خیلی گشتم
    من میخوام از میکرو اطلاعات بصورت سریال به کامپیوتر بدم و اونجا با نرمآ‌افزار هایپر ترمینال دریافت کنم
    برنامه کدویژن رو نوشتم با فرکانس 8 مگ(از کریستال خارجی استفاده نکردم) و باودریت 9600 به این صورت که اسم خودم رو ارسال کنه.
    برنامه رو توی پروتئوس و تو ویژال ترمینالش چک کردم و درست بوده.
    وقتی مدار ارتباط سریال رو با MAX232 وصل کردم به پورت COM سیستمم و نرمآ‌افزار هایپر ترمینال رو باز کردم هیچی روی صفحه نیومد.در ضمن تنظیمات هایپر ترمینال با برنامم یکی هست.
    همین رو روی یه نرمآ‌افزار دیگه(Real term) امتحان کردم، داده از پورت COM دریافت میکرد اما کاراکتر نامفهوم تو خروجی میداد و این یعنی داده به درستی ارسال میشه
    میخواستم راهنمایم کنید که برای اینکه بتونم داده ها رو درست دریافت کنم چکارای رو باید انجام بدم


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

    با سلام
    اکثر اشکالاتی که در usart پیش می اد ناشی از تنظیم نادرست کلاک هست. به خصوص این که میگین کاراکتر های نامفهوم ارسال میشه یقین من بیشتر میشه.
    شاید فیوز بیت ها رو درست تنظیم نکردین.یه بار دیگه چک کنین. :agree:
    The healthy human mind doesn't wake up in the morning thinking this is his last day on earth.

    دیدگاه


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

      شما یک بار تو ترمینال کدویژن این کار رو انجام بدید. ببینید اونجا هم مشکل دارید یا نه ؟
      ---------
      .
      .
      ...........

      دیدگاه


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

        نوشته اصلی توسط Mahdi 7S
        سلام دوستان
        در مورد ارتباط سریال کمک میخواستم چون که واقعا گیر کردم. :angry: در ضمن تو تایپکا هم خیلی گشتم
        من میخوام از میکرو اطلاعات بصورت سریال به کامپیوتر بدم و اونجا با نرمآ‌افزار هایپر ترمینال دریافت کنم
        برنامه کدویژن رو نوشتم با فرکانس 8 مگ(از کریستال خارجی استفاده نکردم) و باودریت 9600 به این صورت که اسم خودم رو ارسال کنه.
        برنامه رو توی پروتئوس و تو ویژال ترمینالش چک کردم و درست بوده.
        وقتی مدار ارتباط سریال رو با MAX232 وصل کردم به پورت COM سیستمم و نرمآ‌افزار هایپر ترمینال رو باز کردم هیچی روی صفحه نیومد.در ضمن تنظیمات هایپر ترمینال با برنامم یکی هست.
        همین رو روی یه نرمآ‌افزار دیگه(Real term) امتحان کردم، داده از پورت COM دریافت میکرد اما کاراکتر نامفهوم تو خروجی میداد و این یعنی داده به درستی ارسال میشه
        میخواستم راهنمایم کنید که برای اینکه بتونم داده ها رو درست دریافت کنم چکارای رو باید انجام بدم
        از کریستال خارجی استفاده کن . درست میشه .
        باد می وزد ...
        میتوانی در مقابلش هم دیوار بسازی ، هم آسیاب بادی
        تصمیم با تو است ...

        دیدگاه


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

          نوشته اصلی توسط hessam2013
          با سلام
          اکثر اشکالاتی که در usart پیش می اد ناشی از تنظیم نادرست کلاک هست. به خصوص این که میگین کاراکتر های نامفهوم ارسال میشه یقین من بیشتر میشه.
          شاید فیوز بیت ها رو درست تنظیم نکردین.یه بار دیگه چک کنین. :agree:
          سلام آقا حسام
          تا قبل این من از فرکانس داخلی 8MHZ استفاده میکردم و باود ریت هر دو طرف هم یکسان بود.
          ولی امروز دیگه از کریستال خارجی 11.0592MHZ استفاده کردم.فیوز بیت ها رو هم بصورت زیر تنظیم کردم
          CKSEL = 1111 و SUT = 11
          برنامه رو هم با همین فرکانس پروگرام کردم
          تنها پیشرفتی که نسبت به حالت قبل داشت این بود که توی هایپرترمینال کاراکترایی مثل C میومد،اما توی نرمآ‌افزار Real term مثل حالت قبل بود
          به نظرت کجای کار میآ‌لنگه؟

          دیدگاه


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

            نوشته اصلی توسط ajapyy
            شما یک بار تو ترمینال کدویژن این کار رو انجام بدید. ببینید اونجا هم مشکل دارید یا نه ؟
            توی ترمینال کدویژن هم چک کردم.اونجا اصلا هیچی نمیومد :angry:

            دیدگاه


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

              نوشته اصلی توسط ATROBOT
              از کریستال خارجی استفاده کن . درست میشه .
              کریستال 11.0592MHZ هم گذاشتم اما فرق چندانی نکرد.تنها پیشرفتش این بود که ایندفعه تو هایپرترمینال کاراکترآ‌های نامفهومی شبیه C میومد

              دیدگاه


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

                نوشته اصلی توسط Mahdi 7S
                توی ترمینال کدویژن هم چک کردم.اونجا اصلا هیچی نمیومد :angry:
                اینکه تو کدویژن هیچی نمیاد یعنی یک جای کار می لنگه
                شما یک کاری کنید. اول فقط یک کارکتر یا کدهگز بفرستید. ببینید بازم میاد یا نه ؟
                بعدش اگر کار نکرد پایه ها تون رو چک کنید، ببینید اصلا سیگنال میره اون طرف یا نه ؟
                اگر هیچ کدوم کار نکرد، شماتیک مدارتو بزار اینجا
                ---------
                .
                .
                ...........

                دیدگاه


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

                  نوشته اصلی توسط ajapyy
                  اینکه تو کدویژن هیچی نمیاد یعنی یک جای کار می لنگه
                  شما یک کاری کنید. اول فقط یک کارکتر یا کدهگز بفرستید. ببینید بازم میاد یا نه ؟
                  بعدش اگر کار نکرد پایه ها تون رو چک کنید، ببینید اصلا سیگنال میره اون طرف یا نه ؟
                  اگر هیچ کدوم کار نکرد، شماتیک مدارتو بزار اینجا
                  سلام شما یه کریستال 8 خارجی بگذارید .

                  تنظیمات ارتباط سریال هم این شکلی بگذارید .

                  کد:
                  UCSRA=0x00;
                  UCSRB=0x08;
                  UCSRC=0x86;
                  UBRRH=0x00;
                  UBRRL=0x33;
                  باد می وزد ...
                  میتوانی در مقابلش هم دیوار بسازی ، هم آسیاب بادی
                  تصمیم با تو است ...

                  دیدگاه


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

                    نوشته اصلی توسط Mahdi 7S
                    سلام دوستان
                    در مورد ارتباط سریال کمک میخواستم چون که واقعا گیر کردم. :angry: در ضمن تو تایپکا هم خیلی گشتم
                    من میخوام از میکرو اطلاعات بصورت سریال به کامپیوتر بدم و اونجا با نرم‌افزار هایپر ترمینال دریافت کنم
                    برنامه کدویژن رو نوشتم با فرکانس 8 مگ(از کریستال خارجی استفاده نکردم) و باودریت 9600 به این صورت که اسم خودم رو ارسال کنه.
                    برنامه رو توی پروتئوس و تو ویژال ترمینالش چک کردم و درست بوده.
                    وقتی مدار ارتباط سریال رو با MAX232 وصل کردم به پورت COM سیستمم و نرم‌افزار هایپر ترمینال رو باز کردم هیچی روی صفحه نیومد.در ضمن تنظیمات هایپر ترمینال با برنامم یکی هست.
                    همین رو روی یه نرم‌افزار دیگه(Real term) امتحان کردم، داده از پورت COM دریافت میکرد اما کاراکتر نامفهوم تو خروجی میداد و این یعنی داده به درستی ارسال میشه
                    میخواستم راهنمایم کنید که برای اینکه بتونم داده ها رو درست دریافت کنم چکارای رو باید انجام بدم

                    سلام

                    1-یه بار یادم رفته بود پایه زمین پورت سریال (فکر کنم پایه شماره پنج) رو به زمین مدارم وصل کنم. مشابه همین حالت شما بود.
                    2-rxd و txd پورت سریال کامپیوتر رو به هم ببندید ببینید اطلاعاتی که تایپ می کنید در هایپر ترمینال 2 بار دیده میشه(یکی اونی که شما تایپ کردید دیگری اونی که برگشته). این کار رو برای rxd و txd طرف MAX232 هم انجام بدید که از صحت عملکرد MAX232 هم مطمئن شید.
                    3-از تنظیمات نرم افزاری کاملا مطمئن شید مثلا:
                    اگر کلاک رو در برنامه 8 مگ انتخاب کردید آیا موقع پروگرم کردن فیوز بیتا این رو هم درست تنظیم کردید یا نه
                    ایا تنظیمات دوطرف کاملا یکسانه یا نه(باود ریت و استاپ بیت و ...)
                    4-اگر همه تنظیمات درست بود با باود ریت های خیلی کم هم تست کنید مثلا 600
                    5-یک بار هم با مبدل usb به سریال آماده مدارتون رو چک کنید شاید مفید واقع شد.
                    6- به روشی چک کنید که آیا هنگام ارسال و دریافت اطلاعات، میکرو همچنان عملکرد صحیح خودش رو داره مثلا یه led به یکی از پایه ها ببنید و هر 200 میلی ثانیه toggle کنید.


                    افتادگی آموز اگر طالب فیضی هرگز نخورد آب زمینی که بلند است

                    دیدگاه


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

                      نوشته اصلی توسط abolfazl_moradpour
                      سلام

                      1-یه بار یادم رفته بود پایه زمین پورت سریال (فکر کنم پایه شماره پنج) رو به زمین مدارم وصل کنم. مشابه همین حالت شما بود.
                      2-rxd و txd پورت سریال کامپیوتر رو به هم ببندید ببینید اطلاعاتی که تایپ می کنید در هایپر ترمینال 2 بار دیده میشه(یکی اونی که شما تایپ کردید دیگری اونی که برگشته). این کار رو برای rxd و txd طرف MAX232 هم انجام بدید که از صحت عملکرد MAX232 هم مطمئن شید.
                      3-از تنظیمات نرم افزاری کاملا مطمئن شید مثلا:
                      اگر کلاک رو در برنامه 8 مگ انتخاب کردید آیا موقع پروگرم کردن فیوز بیتا این رو هم درست تنظیم کردید یا نه
                      ایا تنظیمات دوطرف کاملا یکسانه یا نه(باود ریت و استاپ بیت و ...)
                      4-اگر همه تنظیمات درست بود با باود ریت های خیلی کم هم تست کنید مثلا 600
                      5-یک بار هم با مبدل usb به سریال آماده مدارتون رو چک کنید شاید مفید واقع شد.
                      6- به روشی چک کنید که آیا هنگام ارسال و دریافت اطلاعات، میکرو همچنان عملکرد صحیح خودش رو داره مثلا یه led به یکی از پایه ها ببنید و هر 200 میلی ثانیه toggle کنید.
                      سلام مجدد
                      من این کارا رو انجام دادم.تو مورد دوم، قسمت اولش درست بود اما وقتی rxdوtxd سمت max232 رو به هم وصل کردم و تو ترمینال کاراکتر فرستادم درست مثل مشکل قبل پیش اومد.اتصالات رو چند بار چک کردم ولی مشکل حل نشد.اشکال از کجا میتونه باشه؟!!
                      از تنظیمات ترم افزاری هم مطمئنم
                      اینم عکس شماتیک مدار max232:
                      http://www.elmicro.ir/mcu/story/190-max232.html

                      دیدگاه


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

                        نوشته اصلی توسط Mahdi 7S
                        سلام مجدد
                        من این کارا رو انجام دادم.تو مورد دوم، قسمت اولش درست بود اما وقتی rxdوtxd سمت max232 رو به هم وصل کردم و تو ترمینال کاراکتر فرستادم درست مثل مشکل قبل پیش اومد.اتصالات رو چند بار چک کردم ولی مشکل حل نشد.اشکال از کجا میتونه باشه؟!!
                        از تنظیمات ترم افزاری هم مطمئنم
                        اینم عکس شماتیک مدار max232:
                        http://www.elmicro.ir/mcu/story/190-max232.html
                        احتمالا مشکل از همین جاست. سخت افزار این قسمت رو باز کنید و با قطعات دیگه ای از نو ببندید(ترجیحا تو یه قسمت دیگه از برد).به جهت خازن ها تو مدار خیلی دقت کنید.
                        افتادگی آموز اگر طالب فیضی هرگز نخورد آب زمینی که بلند است

                        دیدگاه


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

                          من یه موقعی این مشکل رو داشتم اما حل شد!! :biggrin:
                          کریستال برنامه رو روی 8m بگذارید
                          بعد فیوز بیتها رو به شکل زیر بگذارید و بعد روی کلید مشخص شده کلیک کنید!!! انشاءالله درست میشه!!!
                          معيار واقعي بودن تصميم، آن است که دست به عمل بزنيم.

                          دیدگاه


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

                            راستی یادم رفت بگم
                            baud را روی 9600 بگذارید
                            معيار واقعي بودن تصميم، آن است که دست به عمل بزنيم.

                            دیدگاه


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

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

                              ضمنا به اینجا یه سر بزن شاید کمکت کنه.

                              http://forum.wle.ir/showthread.php?tid=362

                              به این نوشته هم دقت کن.

                              " فقط یه مسئله رو اینجا توضیح بدم. آیسی MAX232 که تو پروتئوسه, سیگنال خروجی رو معکوس میکنه ( اگه دقت کنین روی پایه 14 یه دایره کوچیک هستش ). حالا واسه اینکه دوباره به همون حالت اول برش گردونم از آیسی 7404 ( NOT ) استفاده کردم که توی عمل نیازی به معکوس کردن سیگنال نیست. "


                              ضمنا یه بار هم با این برنامه چک کن ببین شاید مشکل از برنامه سمت کامپیوتر باشه.

                              http://forum.wle.ir/showthread.php?tid=699

                              دیدگاه

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