ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 10 از 10
  1. #1
    2008/08/19
    236
    2

    مفهوم baudrate و حداکثر سرعت پورت سريال

    تا جايي که يادم مياد بودريت تعداد بيت ارسالي در واحد ثانيه است.يعني مثلا اگر بودريت 9600 باشد؛ با توجه به اينکه 2 بيت را به پريتي و يک بيت را به آغاز و يک بيت را به پايان ارسال هر بيت اختصاص مي دهيم ؛پس هر 12 بيتي که ارسال ميکنيم يک بايت را مي توانيم دريافت کنيم.پس حداکثر تعداد بايت دريافتي با بود 9600 بابر 9600/12 است که بابر 800 بيت در ثانيه ميشه!
    اما من برنامه مدارمو در بسکام نوشتم و سرعت دريافت فوقالعاده پايين تر است!!!!
    ميخوام بدونم مشکل در محاسبات منه يا اينکه نحوه دريافت و ارسالم درست نيست؟
    لازم به توضيحه که بايت هاي داده دريافتي کاملا صحيح هستند و اطلاعات هيچ مشکلي ندارند فقط سرعت با روشي که من محاسبه ميکنم جور در نمياد!!!
    پيشاپيش ممنون از پاسخ
  2. #2
    2012/02/14
    1,185
    73

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    سلام.
    نرخ بودریت بسیار وابسته هست به کریستال و فرکانس میکرو ولی دقیق نمی دونم چقدر . اگه خواستین بگین تا یکم کتاب بخونم :read:ببینم چه جوری بود. :rolleyes:

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت


    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت


    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت


    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

  3. #3
    2011/10/09
    111
    0

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    نقل قول نوشته اصلی توسط hamedhamidi
    تا جايي که يادم مياد بودريت تعداد بيت ارسالي در واحد ثانيه است.يعني مثلا اگر بودريت 9600 باشد؛ با توجه به اينکه 2بيت را به پريتي و يک بيت را به آغاز و يک بيت را به پايان ارسال هر بيت اختصاص مي دهيم ؛پس هر 12 بيتي که ارسال ميکنيم يک بايت را مي توانيم دريافت کنيم.پس حداکثر تعداد بايت دريافتي با بود 9600 بابر 9600/12 است که بابر 800 بيت در ثانيه ميشه!
    اما من برنامه مدارمو در بسکام نوشتم و سرعت دريافت فوقالعاده پايين تر است!!!!
    ميخوام بدونم مشکل در محاسبات منه يا اينکه نحوه دريافت و ارسالم درست نيست؟
    لازم به توضيحه که بايت هاي داده دريافتي کاملا صحيح هستند و اطلاعات هيچ مشکلي ندارند فقط سرعت با روشي که من محاسبه ميکنم جور در نمياد!!!
    پيشاپيش ممنون از پاسخ
    پریتی یا نداریم یا یک بیت است.
    پایان میتواند یک بیت ، یک بیت و یک مصراع(!) و یا دو بیتی باشد.(با رباعی فرق میکنه :biggrin
    طبق فرمول خودتون 800 "بایت" صحیح است.

    ولی حالا از جدی گذشته (!) برنامتو بذار ببینم مشکلش چیه.
  4. #4
    2008/08/19
    236
    2

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    برنامه فرستنده:
    $regfile = "m32def.dat"
    $crystal = 11059200
    $swstack = 200
    $hwstack = 200
    $framesize = 200
    '-------------------------------------------------------------------------------
    $baud = 230400
    Config Serialout = Buffered , Size = 200
    Enable Interrupts
    '-------------------------------------------------------------------------------
    Dim J As Byte
    '-------------------------------------------------------------------------------
    Do


    For J = 1 To 100
    Printbin J
    Next J

    Loop

    End
    '-------------------------------------------------------------------------------




    که تو اين برنامه با بالاترين بودريت ممکن avr اعداد 0 تا 100 رو ميريزم توي پورت سريال



    $regfile = "m64def.dat"
    $crystal = 11059200
    $swstack = 200
    $hwstack = 200
    $framesize = 200
    '-------------------------------------------------------------------------------
    Config Porte.2 = Output
    '-------------------------------------------------------------------------------
    $baud1 = 230400
    Config Serialin1 = Buffered , Size = 200
    Open "com2:" For Binary As #2
    Enable Interrupts
    '-------------------------------------------------------------------------------
    Dim I As Word
    Dim A As Byte
    '-------------------------------------------------------------------------------
    Do
    Set Porte.2
    If Ischarwaiting(#2) = 1 Then
    Incr I
    A = Inkey(#2)
    Print #2 , A
    End If
    Loop Until I = 65000
    Reset Porte.2
    End
    '-------------------------------------------------------------------------------


    برنامه گيرنده که توش گفتم حداکثر 65000 بايت رو بگير

    حالا گه زمان بگيري مي بيني که واسه ارسال 7000 بايت 1 دقيقه زمان ميبره!!!!!!!!!!!!!!!!!!!!!!!!!!! oo:
    در حالي که بايد بتونه توي 1 ثانيه 19200 تا بايت رو بگيره!!! البته با محاسبه اي که گفتم !!!
    پس يا محاسبه من غلطه يا ........
    ولي برنامه داره کار ميکنه و داده هاي دريافتي هم درستن!!!!!!!!!!!!
    حالا بگين کجاي برنامه يا محاسبات اشکال داره؟
  5. #5
    2011/10/09
    111
    0

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    محاسبات که بنظرم درسته.
    در قسمت دریافت خط Print #2 , A رو حذف کن بعد امتحان کن.
    کریستال هم درسته دیگه؟(اصلاً مدار رو عملی بستی یا با پروتیوس شبیه سازی میکنی؟)
  6. #6
    2008/08/19
    236
    2

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    دقيقا قبل از اينکه جوابتو ببينم همين کارو کردم.خييييييييييييييييييي يييييييييييييييييييييييي يييييييييييييييييلي عجيبه !!!!!
    دارم نيگا ميکنم ميبينم دستور print v رو وقتي واسه يک متغير استفاده ميکنم 250 ميکرو ثانيه طول ميکشه تا انجام بشه اما همين دستور واسه يک استرينگ 10 تايي!!!! فقط 35 ميکرو ثانيه زمان ميبره!!!!!!!!!!!!!!!!!!!! oo:
    علت چيه!!!
    يک بايت عددي-----------250 ميکروثانيه
    استرينگ 10 تايي--------35 ميکرو ثانيه!
  7. #7
    2009/09/25
    اصفهان
    814
    48

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    یه دستور print a که یه a یه عدد ثابت باشه به برنامت اضافه کن.و بعد کامپایل ببین حجم برنامت چقدر تغییر میکنه از نظر سایز برنامه؟
    هميشه به ياد خدا باش !
  8. #8
    2008/08/19
    236
    2

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    خوب چيکار ميشه کرد الان؟
    من پورت هاي ميکروم آزاده ميتونم ارتباط موازي هم استفاده کنم ولي آخرشم وقتي بخوام يک استرينگ رو بفرستم بايد اين طرف استرينگ رو به عدد و اون طرف عدد رو به استرينگ تبديل کنم و مشکل اصلي هم همين جاست!! ببينيد بچه ها , اينجا رو خوب دقت کنيد چون به درد کاراي آينده هم ميخوره!! print کردن يک استرينگ زماني نميبره ولي پرينت عدد زمان زيادي ميبره!!! حالا من اومدم اول عددم رو به استرينگ تبديل کردم بعد استرينگ رو پرينت کردم ,فهميدم اشکال کار از اينه که زمان تبديل عدد به استرينگ زياده!!! يعني در واقع وقتي عدد رو پرينت ميکنيد زمانيکه ميخواد عدد رو به کد اسکي تبديل کنه زياد طول ميکشه وگرنه ارسال اون به پورت سريال زماني نميبره!!!
    يعني دو دستور زير معادل اند:

    dim a as byte
    dim s as string*1
    a=100
    s=str(a)
    print s

    و يا

    dim a as byte
    dim s as string*1
    a=100
    print a


    هر دوي اينا زمان يکسان ميبرن
    تو اولي زمان تبديل عدد به استرينگ زياده

    تو دومي زمان پرينت که مجکوع زمان تبديل عدد به اسکي و ارسال اون هست زياده!!!


    راه حلي به نظرتون ميرسه؟

  9. #9
    2009/09/25
    اصفهان
    814
    48

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

    گمانم قسمت ارسال به پورت سریال رو با اسمبلی بنویسی
    هميشه به ياد خدا باش !
  10. #10
    2011/10/09
    111
    0

    پاسخ : مفهوم baudrate و حداکثر سرعت پورت سريال

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

    حالا با حذف print #2 ,A ارسال 65000 بایت چقدر طول میکشه؟
نمایش نتایج: از 1 به 10 از 10

موضوعات مشابه

  1. حداکثر سرعت پورت GPIO ميكرو LPC1768
    توسط mehdia1968 در انجمن NXP
    پاسخ: 19
    آخرين نوشته: 2015/11/17, 22:24
  2. یک سوال ساده در مورد سرعت avr و مفهوم 16 مگابایت
    توسط aliila در انجمن میکروکنترلرهای AVR
    پاسخ: 16
    آخرين نوشته: 2015/04/17, 21:46
  3. ارسال داده باينري از طريق پورت سريال بر روي پورت ميکرو
    توسط Soheilas در انجمن میکروکنترلرهای AVR
    پاسخ: 48
    آخرين نوشته: 2014/10/25, 16:52
  4. ADC در XMEGA و حداکثر سرعت نمونه برداری
    توسط طراح در انجمن XMEGA
    پاسخ: 14
    آخرين نوشته: 2014/06/18, 11:27
  5. کريستال خارجي و پايه هاي پورت سريال روي پورت ميکرو
    توسط jelecteca در انجمن میکروکنترلرهای AVR
    پاسخ: 3
    آخرين نوشته: 2013/03/07, 18:20

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •