Help...Touch screen with auto baud rate detection to SX28, 2 questions here
Andrea
Posts: 17
Hello,
I have SX28 @20MHZ, baud rate "T115200" connected via serial to the BV4629 touch screen display and it is capable to determine auto baud rate by the first character received which MUST be a CR byte value 13.
My trays to establish communication was unsuccessful. The display presented the wrong baud rate value instead of the wanted one (115200). The seller-manufacturer suggested to me to do next:
"The logic is inverted, it should be +V when in the idle state, get your microcontroller to provide a non-inverted signal."
So I change "T115200" to "OT115200" and pull-up (4K7 resistor) line (sx TX_pin --> RX_pin on the display) but again, wrong baud rate values on the display.
Should I change the value of resistor? If so, how to calculate right one.
The only way I can control the display is "improvisation" as shown in attached SXB file.
The second problem for me is how to catch up incoming data(touched co-ordinates) without header byte.
More explanation in attached SXB file too.
Wiring:
SX28 Display
TX_pin ---> RX_pin
RX_pin <--- TX_pin
RC.6 <--- Int_pin
Thanks in advance.
I have SX28 @20MHZ, baud rate "T115200" connected via serial to the BV4629 touch screen display and it is capable to determine auto baud rate by the first character received which MUST be a CR byte value 13.
My trays to establish communication was unsuccessful. The display presented the wrong baud rate value instead of the wanted one (115200). The seller-manufacturer suggested to me to do next:
"The logic is inverted, it should be +V when in the idle state, get your microcontroller to provide a non-inverted signal."
So I change "T115200" to "OT115200" and pull-up (4K7 resistor) line (sx TX_pin --> RX_pin on the display) but again, wrong baud rate values on the display.
Should I change the value of resistor? If so, how to calculate right one.
The only way I can control the display is "improvisation" as shown in attached SXB file.
The second problem for me is how to catch up incoming data(touched co-ordinates) without header byte.
More explanation in attached SXB file too.
Wiring:
SX28 Display
TX_pin ---> RX_pin
RX_pin <--- TX_pin
RC.6 <--- Int_pin
Thanks in advance.
Comments
You may also want to consider a 50mhz resonator/crystal for this project.
Last but not least, if you are using a resonator, be sure you have the proper value resistor in place for the chosen resonator -- the resistor is generally connected across the OSC1 and OSC2 pins.
Some details in your program --
- since the idle state is high for the peripheral, set the TX pin to 1 at the end of your SEROUT subroutine, so it is always left in the idle state
- check the documentation -- many of the commands to the peripheral send an "ack" back -- you must be sure that your SX/B program accepts this byte or performs some other logic to disregard the transmission from the peripheral or your program could hang or send garabage on the next TX out
Now I'm curious, and I'll try the I2C (for the first time ever).
Thank you