Announcement

Collapse
No announcement yet.

Baudrates, PICASO Internal 4DGL Functions

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Baudrates, PICASO Internal 4DGL Functions

    Hello,

    I might be mistaken, but on page 157 of rev 6.9 (April 2 2013) the formula for the baud-divisor does not seem be consistent with the "actual baud rate" settings listed in the last column of the table on the same page.

    Is there some information availabel about the actual baud-rate errors, and/or a correct formula for the rate-divisor?

    Kind regards,

    Claus

  • #2


    Eek, that table was copied from the Goldelox manual, and not only contains a forumula that is invalid, but also incorrect error %ages.

    There is no formula for Picaso, the BAUD_9600, BAUD_115200, etc values are simple constants and do not have any relationship to the actual baud rate rather than by the name of the constant.
    Mark

    Comment


    • #3


      ... nevertheles would it be nice to get hold of the error percentages related to baud-rates programmed by the com_SetBaud() function

      Comment


      • #4


        Hello

        Documentation has been updated, thanks for pointing it out.
        Both setbaud and com_BaudRate have had minor tweaks.
        The only thing that was incorrect was the formula at the bottom, it shouldn't have been there at all, however the data in the table was correct.

        Available for download from the Workshop4 product page. http://www.4dsystems.com.au/prod.php?id=172

        Regards
        James

        Comment


        • #5


          Hello,

          thanks for the update, I also believe that the values in the table are correct. Still it would be nice to have the correct formula for the baud-rate computation for non-standard baud-rates. From measurements I got the expression that e.g. dot-clocks of 10us and 5us can be achieved exactly, with an approximate linear scaling in between (with 14 sub-intervals). Resulting interesting more-or-less error-free rates would be 100000 Baud, 200000 Baud, 400000 Baud, or going to lower baud-rates, 50000 Baud, 25000 Baud (only some examples).

          Is that correct? I'm asking because I was trying to interface with an ATmega device running at 16MHz and 5V. At 115200 this did not work out. Probably a combination of the fact the that baud-rate error of the Picaso runs (in this case) into the opposite direction of the rate-error from the ATmega device (and signal levels are different, which might influence timing problems. The 3.3V of the uLCD are quite close to the guaranteed high level of an ATmega device running at 5V). Ok, this starts to go off-topic.

          Still it would be a nice thing to have documentation about the actual baud-rate clocks (just to bend the post back to a question about documentation).

          Kind regards,

          Claus

          Comment


          • #6


            Not sure if, or how this helps, but

            Actual_baud_rate = TRUNC(2812500 / TRUNC(2812500 / Requested_Baud_Rate))

            for com_Setbaud()

            so the next rate down from 115200 is 112500 (-2.34%), whether this will help you talk to the ATmega, I'm not sure.

            You might alos try reading this post http://4d.websitetoolbox.com/post/Baudrate-Change-Wits-End-5734058
            Mark

            Comment

            Working...
            X