Announcement

Collapse
No announcement yet.

setbaud(BAUDRATE) upper and lower tolerance baudrate threshold

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

  • setbaud(BAUDRATE) upper and lower tolerance baudrate threshold

    Hello,

    We are using the setbaud(BAUD_115200) function for the serial com functionality. After noting that the actual baudrate is 115384 ( as stated on page 139 of the Goldelox Processor Internal Functions Reference Manual Document Revision: 7.0), we are challenged with getting our microprocessor's UART to achieve this exact baudrate. What is the baudrate range the Goldelox will accept?

    Thank you,

    Matt

  • #2
    Hi Matt,

    The listed baud rates in the reference manual you mentioned should more or less work with the processor. Also, note that microcontrollers rarely offer an exact baud rate in UART transmission but there is a tolerable difference between the baud rates in order for the communication to push through. In my experience, the common baud rates set by MCUs work with the Goldelox chip.

    Hope this helps.

    Best regards,
    Vince_4D

    Comment


    • #3
      Vince,

      Thank you for your prompt reply. I was looking for a definitive % error of baudrate for the Goldelox for reception. Serial transmission baudrate was easily verified, however, the acceptable reception baudrate has been brute force trial and error to find the appropriate value.

      The following buadrates were calculated (based on 115,384bps) and validated by a stream of bytes sent to the 4D Goldelox uOLED-128-G2 from our microcontroller that had a low resolution clock divisor.

      113,636bps, -1.515% error – Works!
      114,943bps, - 0.38% error - Did not Work.
      116,279bps +0.78% - Did not Work.

      A error of baudrate reception spec would help to quickly calculate viable baudrates among low-end processors and communication devices.

      Best regards,
      Matt

      Comment


      • #4
        Hi Matt,

        It's unusual that no communication was established on some values you used given that the offset is low.
        Can you try the 4D Serial Terminal Utility to verify whether the module could still properly establish serial communication in different common baud rates?
        Click image for larger version

Name:	Capture.PNG
Views:	1
Size:	1.9 KB
ID:	66601

        This tool allows the PC to act as host that sends serial data to the display. Make sure that the baud rate set in the utility corresponds to the baud rate of the display module (using setbaud(...) function).

        In my end, I was able to communicate the pc and display module on the utility's baud rate 300 to 128,000.
        If you established the communication as I did on the given baud rates, perhaps there is something wrong with the signal in the serial communication of your MCU and the display module.

        Hope this helps and best regards,
        Vince_4D

        Comment


        • #5
          The 'allowable' error rate for serial is a bit of a black art, as it is affected by the 'windowing' technique used at each end, as well as the data rate (i.e. a sustained amount of data will need a closer rate than an occasional byte)

          Generally, anything below 1.5% should work, but ideally try to keep it below 1%

          I'm surprised that you are getting the values you reported, can you verify the specified baud rates using a scope or logic analyzer?
          Mark

          Comment

          Working...
          X