HSERIN and STR - character encoding


Closed Thread
Results 1 to 14 of 14

Hybrid View

  1. #1
    Join Date
    Jan 2006
    Location
    Istanbul
    Posts
    1,185


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by boban View Post
    2. I am using hw serial at 19200 bps

    4. I am using crystal resonator - 4Mhz
    How does 19200 bps behave at 4MHz?

    Would you consider it as safe?


    Note:
    I think Ski has some "special days" from time to time; and Boban hit one of them.
    Ski?
    Last edited by sayzer; - 12th August 2008 at 15:45. Reason: typo.
    "If the Earth were a single state, Istanbul would be its capital." Napoleon Bonaparte

  2. #2
    skimask's Avatar
    skimask Guest


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by sayzer View Post
    How does 19200 bps behave at 4MHz?
    Would you consider it as safe?
    Note:
    I think Ski has some "special days" from time to time; and Boban hit one of them.
    Ski?
    I could've swore that line abouot the resonator wasn't in that post a few minutes ago!

    Yes, how does hardware 19,200 run at 4Mhz on a PIC18F2520?
    Using one method, you get an +8.51% error in baud rate, doable, sometimes, as long as the sending serial port isn't on the low side, causing the tolerance to be even farther out.
    Using the other method, you get a .16% error in baud. The sender has to be out in the weeds to cause that to mess up.
    I'm voting for the first method...
    It's all in the datasheets on how to set up the serial port using either method...

  3. #3
    Join Date
    Jan 2007
    Posts
    39


    Did you find this post helpful? Yes | No

    Default Serial configuration

    Hello based on the documentation of 18F2520, I can see that for 4 Mhz clock and speed 19.200, I have the bit error only 0.16 - Page 207 of the PDF.

    My configuration is

    DEFINE HSER_RCSTA 90h
    DEFINE HSER_TXSTA 24h
    DEFINE HSER_SPBRG 12 'DEFINE HSER_BAUD 19200 on 4 Mhz
    DEFINE HSER_CLROERR 1

    Boban

    And Skimask, I did mistake, I have PBP 2.46 not 2.49. Also for the serial communication, I have on the other side Ethernet module - XPORT direct.
    Last edited by boban; - 12th August 2008 at 17:29.

  4. #4
    skimask's Avatar
    skimask Guest


    Did you find this post helpful? Yes | No

    Default

    Ok, now we're getting somewhere... Looks relatively normal so far.
    All other things equal, I'd say something 'upstream' of the XPORT module is messing with your data, but that's just me and I'm guessing.

    Get rid of the STR modifier in your SERIN statement and try just reading RAW data/numbers/characters/etc.
    What is HSEROUT going to? Right back to the XPORT module? Is the feedback from the XPORT/PIC how you are verifying that it's sending/receiving data correctly?

    And we still haven't seen your REAL code

  5. #5
    Join Date
    Nov 2003
    Location
    Greece
    Posts
    4,132


    Did you find this post helpful? Yes | No

    Default

    And also no mention of the trasmitting device. If it is not sending the correct numbers in ASCII, we are playing Holmes here...

    Ioannis

  6. #6
    Join Date
    Jan 2007
    Posts
    39


    Did you find this post helpful? Yes | No

    Default Solved

    Hello, I have solved the problem. I have discoverred, that each 3rd character received doesn't correspond to the ASCII code. I have tried to change the speed of the communication and it is working. So the problem was, that some of the bits were not readed correctly. Now I am wondering why at 115200 bps it is working, because in the PIC manual is written, that there is 8% error rate at 4 Mhz and 115200 and at 19200 the error rate is only 0.6 %.

  7. #7
    skimask's Avatar
    skimask Guest


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by boban View Post
    Hello, I have solved the problem. I have discoverred, that each 3rd character received doesn't correspond to the ASCII code. I have tried to change the speed of the communication and it is working. So the problem was, that some of the bits were not readed correctly. Now I am wondering why at 115200 bps it is working, because in the PIC manual is written, that there is 8% error rate at 4 Mhz and 115200 and at 19200 the error rate is only 0.6 %.
    If that module you're using is a bit fast, say 5% fast, then that 8% might only be 3% combined, whereas with .6%, might actually be 3.4%.
    Could be a bunch of different reasons...

Similar Threads

  1. hserin and sms controller
    By xxxxxx in forum mel PIC BASIC Pro
    Replies: 25
    Last Post: - 10th February 2010, 15:49
  2. Instant Interrupts and HSERIN
    By Rob in forum mel PIC BASIC Pro
    Replies: 26
    Last Post: - 31st January 2009, 05:13
  3. TMR0 interrupt and HSERIN
    By boban in forum mel PIC BASIC Pro
    Replies: 2
    Last Post: - 2nd September 2008, 11:48
  4. PIC HSERIN problem
    By shaiqbashir in forum mel PIC BASIC Pro
    Replies: 10
    Last Post: - 20th July 2008, 11:08
  5. HSERIN seems to fail and I can't see WHY
    By Jumper in forum mel PIC BASIC Pro
    Replies: 3
    Last Post: - 14th August 2006, 17:51

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts