You can switch baudrates at runtime by writing HostUBRR on the device.


Using nonstandard baudrates on linux, assuming /dev/ttyUSB0 is used:
  ---------------------------------------------
  jens@knusper:~/projekte/avrdev/current$ setserial -a /dev/ttyUSB0
  /dev/ttyUSB0, Line 0, UART: unknown, Port: 0x0000, IRQ: 0
          Baud_base: 24000000, close_delay: 0, divisor: 0
          closing_wait: infinite
          Flags: spd_normal low_latency
  ---------------------------------------------
  
I want to use 50kBaud, which is 24000000/480. Become root and:
  ---------------------------------------------
  knusper:/home/jens/projekte/avrdev/current# setserial /dev/ttyUSB0 spd_cust divisor 480
  ---------------------------------------------

Now tell avrdebug to use 38400 Baud (no matter what your nonstandard
baudrate is):
  ---------------------------------------------
  jens@knusper:~$ ~/elektronik/avrdebug/avrdebug -a ser2 -d /dev/ttyUSB0 -c 38400 -i SELF
  ---------------------------------------------

Return to standard baudrates (as root):
  ---------------------------------------------
  knusper:/home/jens/projekte/avrdev/current# setserial /dev/ttyUSB0 spd_normal
  ---------------------------------------------
