Tell me more ×
Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It's 100% free, no registration required.

I've been doing USART on STM32 and got this at putty:

enter image description here

Actually I want to display :

printf("*  Thank you for using the board");

Do you have idea why ?

share|improve this question
2  
Did you set identical configurations (data bits, parity, stop bits, bauds) at both ends? – Telaclavo Apr 17 '12 at 12:21
Fix already, I forgot to put MX232 converter, thanks a lot .. – Rick Ant Apr 18 '12 at 13:14
If you fixed it by adding a MAX232 converter put that as your answer and accept it. – mjh2007 Apr 18 '12 at 17:32

4 Answers

This could be a whole host of things. The best thing to do in trouble shooting is to avoid or clarify assumptions:

  • Correct baud rate?(too high?) Check both sides
  • Incorrect COM port settings (start/stop/data/parity bits). Check both sides. Don't assume values, like writing 1 in the stop bit register means 1 stop bit. At NXP LPC2129 (ARM7) this means 2 stop bits. Once I was stuck on that for hours, figuring out why I couldn't send more than 1 character at a time..
  • Check timing on scope or logic analyser (at 9600baud a short pulse should take 1/9600 second). If you're using high baud rates and a 'odd crystal' (20MHz on 115k2 or higher), you may need to set up a fractional baud rate divider to more closely match baud rates.
  • Rerun calculations from datasheet for baud rate. Look-up, measure, clarify all clock speeds and other dividers configurable.

Edit: last but not least: is your hardware OK? Shorts, missing solder points, components, etc.

share|improve this answer
Fix already, I forgot to put MX232 converter, thanks a lot . – Rick Ant Apr 18 '12 at 13:14

I agree...

decypher attempt.. a lot more characters suggests Putty speed is too fast. a lot of 5's . 5 ascii = 53d=35h= 00110101 now read from right to left LSB 1st.. hmmm รณ ascii = 162d=A2h=10100010 failed... read UART basics http://en.wikipedia.org/wiki/Universal_asynchronous_receiver/transmitter then fix match settings.

A really neat trick I used to do in the 70's was make a duplex or Y cable for serial port and record data or scope it while connected to device. Autobaud receivers units were really nice back then until I had to design one.

share|improve this answer

You are probably at the wrong baud rate in putty.

share|improve this answer
up vote 0 down vote accepted

Fix already, I forgot to put MX232 converter.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.