Announcement

Collapse
No announcement yet.

UART Voltage Levels and Power-up

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • UART Voltage Levels and Power-up

    Hey Everybody,

    Question #1:

    I just wrote some code for the host microcontroller (PIC24F) to set the form on the uLCD-43PT using the UART.

    The PIC24F that I am using is a 3.3V microcontroller. Therefore, when I send data (e.g. ReportMessage) from the uLCD-43PT to the PIC24F, I used a voltage divider to step the voltage down from 5V to 3.3V.

    BUT, when I send signals from the PIC24F back to the uLCD-43PT do I need to step the voltage back up to 5V? Or will a 3.3V signal on the UART work? I am currently using a transistor to shift the voltage level up to 5V using the main power supply voltage. I handle the inversion of the shifted up UART signal from the transistor on the PIC24F.

    Question #2:

    The function that I wrote for the host microcontroller to set the form works ONLY SOMETIMES. I am not sure if I need a delay upon power-up for voltage levels to settle??? And then do I need to sort out the 5V vs. 3.3V as described above.

    Question #3:

    I did notice that when I power-up my circuit and use my signal analyzer to decode what is being transmitted from the PIC24F to the uLCD-43PT, there is often a 0xF8 or 0xFF transmitted about 20ms prior to my function call to setForm(). Where is this coming from?

    Looks like: 0xFF @ 198ms...................nothing happens until 218ms.................................0x01, 0x0A, 0x07, 0x00, 0x00, 0x0C

    See the attached .png file.

    TIA,
    --Neal

    Attached Files
    TIA,

    Neal

  • #2
    Hello Neal

    1) The uLCD-43PT (PICASO) is also using 3.3V logic, but is 5V tolerant. So you dont need to step anything down. The uLCD-43PT will output 3.3V level.
    This is in the datasheet http://www.4dsystems.com.au/productp...heet_R_1_6.pdf
    Under section 4.0

    2) If you are level shifting what you thought was 5V (but is actually 3.3V) down, is your actual output voltage below 3.3V now, or is it still at 3.3V but just buffered? This may be why. Just remove all the level shifting as you dont need it.

    3) Sort out the above first and lets come back to this once the above is done

    Regards
    James

    Comment

    Working...
    X