Bizarre UART behavior

Go To Last Post
6 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I have a board built around a ATMEGA128RFA1. One of the UARTs is translated by a MAX3250, and monitored by a PC. Because it is a 128RFA1, I have an external 16MHz crystal (fuses appropriately configured).

For the last week, the UART has been functioning perfectly normally (i.e., printing characters and accepting characters without any problems).

After my last hex download, it went [partially] haywire.

I have attached a screen shot of my terminal program. Note, my firmware is talking to another device, and periodically prints out what the MCU is going to transmit, as well as any data received from the other device, parsed into human readable format.

What is odd is that their appears to be some sort of "substitution" going on. I.e., I don't believe that it is bit errors, or it wouldn't be consistent (i.e. substitution for "x"). What is really odd is that the substitution appears to make sense (i.e., alpha for a, xi for x, rho for r, etc.).

Has anyone ever seen something like this? I am not including code in this post because I don't want somebody to "solve" the problem. I understand bit errors, buffer overruns, etc., but not a random substitution of [relatively appropriate] Greek letters.

Attachment(s): 

Science is not consensus. Science is numbers.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Ah TeraTerm. I love it but there is definitely some "noise" that can cause it to switch fonts. It looks very like that has happened there. When you do get into the state above try edit-clear buffer and see if normality is restored for a while.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I tried clearing the buffer to no avail. Completely closing Tera Term and re-opening it seemed to do the trick.

I have always been a HyperTerminal user, but lately, it has been very flaky. In particular, it doesn't seem to check the buffer until I transmit something from the PC side. I.e., the board will send a bunch of data over, but it does not appear in the Hyperterminal window until I hit the enter key (configured to send ). I'm not sure if I inadvertantly changed a setting for it to cause this behavior. For that reason, I switched to Tera Term (also tried Realterm, but found the configuration part to be annoying). Without starting a holy war, does anyone have any recommendations for a better terminal program?

Edit: Windows 7, 64 bit

Science is not consensus. Science is numbers.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:

Without starting a holy war, does anyone have any recommendations for a better terminal program?

I don't know if it is "better". I don't heavily use them. When I do, I normally use the one in CodeVision. Besides the usual options, it has hex/ASCII display, logging, and "send file". The latter three facilities are often very useful.

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Brays terminal.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

dksmall wrote:
Brays terminal.

+1

Charles Darwin, Lord Kelvin & Murphy are always lurking about!
Lee -.-
Riddle me this...How did the serpent move around before the fall?