3.3V supply for ttl/rs232

Hi,
I find a problem when I wanted to run a ATMEGA32 with VCC supply of 3.3V, everything is okay except USART. I see that if supply voltage is 5V then USART works well. With the same ttl/rs232 module and supply voltage of 3.3V USART works fine with STM32 MCU. I used internal 8 Mhz clock both for AVR and ARM. what is the suggestion to overcome the problem in AVR?

Parents
  • You forgot the most important thing in your post. To mention exactly what transceiver chip you are using to convert between logic-level and RS232.

    A good transceiver chip designed for 3V3 supply voltage should work with both of your processors.

    Have you figured out if it's incomming or outgoing data that is the problem?

    An older 5V transceiver designed for TTL use does not give a full logic level swing that todays MOS chips does. This was ok, because a TTL "high" was about 2.4V when powered by 5V. Some microcontrollers supports very "sloppy" input signals to allow them to intermix with TTL logic when they are run at 5V. Some other microcontrollers wants full-swing input signals as intended for the CMOS standard.

    Anyway - the datasheet for your transceiver and the datasheet for your processor will clearly indicate the output high/low voltages produced, and the required input high/low voltages required. And an oscilloscope or multimeter can tell if an output signal for some reason is not fulfilling the datasheet specification - such as if you have a damaged output or input pin.

  • Don't know which ATMEGA32 you are talking about.

    Maybe see this:
    forum.arduino.cc/index.php

    I believe the Arduino fuse settings enable the Brown Out Detector for just over 4 volts. You may not be able to use 3.3V unless you can change the fuses.

    Check the ATmega328p specs for the maximum clock speed for a given voltage... At 1.8V you can clock upto 4MHz, at 2.7V upto 10MHz and 4.5V upto 20MHz.

Reply Children
More questions in this forum