Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.arch.embedded > #30798

Re: Convert 16x2 chars display to big TFT display

From pozz <pozzugno@gmail.com>
Newsgroups comp.arch.embedded
Subject Re: Convert 16x2 chars display to big TFT display
Date 2021-09-22 08:49 +0200
Organization A noiseless patient Spider
Message-ID <siejm8$lts$1@dont-email.me> (permalink)
References <siccap$o73$1@dont-email.me> <sie4o9$dlc$1@dont-email.me>

Show all headers | View raw


Il 22/09/2021 04:34, Don Y ha scritto:
> On 9/21/2021 3:31 AM, pozz wrote:
>> I have a CPU board that interfaces to a standard 16x2 chars display, 
>> based on HD44780 controller.
>>
>> I'd like to replace this display with a full-color big TFT display, 
>> maybe 10", but I can't change the firmware of the CPU (because I don't 
>> have the source code and I can't rewrite it, because of cost and time).
>>
>> The simple idea is to create an interface between the current CPU 
>> board and the TFT display. This interface should be able to detect the 
>> signals from the CPU and that was directed to HD44780, interpret the 
>> instructions (write CGRAM/DDRAM and so on) and write the same things 
>> to the big TFT display.
>>
>> Of course, exactly the same texts will be written on TFT display (of 
>> course with a bigger and visible font) and this is acceptable.
>>
>> So the MCU on the interface should be able to read 8 data bits, RS and 
>> R/W signals syncronous to signal E.
>>
>> I'm thinking to configure E signal as an external interrupt on the 
>> falling edge. In the interrupt, I read data bits, R/W and RS and 
>> decode the instruction or data.
>>
>> Any suggestions? Maybe a similar code is already online.
> 
> You will likely find there are issues that you've not even considered
> that the original software relies on (directly or indirectly).

Yes, it could be possible.


> Can your emulation handle a *steady* stream of reads/writes?  Or,
> are you expecting the host to be gentle with the display interface?

The host is a 16-bits MCU from Fujitsu. I will measure timings by an 
oscilloscope, but I don't think it writes so fast.
And I can implement a busy flag trick: after any instruction, I can 
simulate a busy state... if the host really use busy flag check (I 
suspect yes, because I saw R/W signal goes high and low often).


> Keep in mind, that you have to run a fair bit of code to paint
> pels onto the display from "character codes".

I will send sniffed character codes by a serial line to a "smart TFT".


> Does the host rely on the timing of the display's "busy" indication
> in any way?  

Most probably the host polls for busy flag and I think I can replicate this.


> Are there any bug in the display controller that
> the host code works around -- that you'd have to emulate (but
> aren't disclosed in the datasheet because they *are* bugs)?

I wrote some code for HD44780 in the past and I don't remember of any 
workaround. Of course it depends on how many features of controller the 
host uses.


> Are the visual characteristics of your display similar to those
> of the original display?  Cursor/character blink and other
> attributes?

If I can sniff these things, I think I can replicate on the TFT.


> Put a pair of back-to-back latches on the data bus and some
> steering logic and don't sweat the fine-grained timing issues.

Yes, it could be done in this way.

And I was thinking to leave the original display connected and put the 
interface as a passive sniffer. In this way I don't need to replicate 
the exact behaviour of the controller, but only detect the stream of 
data and commands. Of course, in this case I have to be fast enough as 
the controller (I can't stop communication by busy flag).

Back to comp.arch.embedded | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Convert 16x2 chars display to big TFT display pozz <pozzugno@gmail.com> - 2021-09-21 12:31 +0200
  Re: Convert 16x2 chars display to big TFT display Reinhardt Behm <rbehm@hushmail.com> - 2021-09-21 13:44 +0000
    Re: Convert 16x2 chars display to big TFT display pozz <pozzugno@gmail.com> - 2021-09-21 16:01 +0200
      Re: Convert 16x2 chars display to big TFT display Reinhardt Behm <rbehm@hushmail.com> - 2021-09-21 15:07 +0000
      Re: Convert 16x2 chars display to big TFT display Stef <me@this.is.invalid> - 2021-09-21 17:09 +0200
        Re: Convert 16x2 chars display to big TFT display pozz <pozzugno@gmail.com> - 2021-09-21 18:48 +0200
  Re: Convert 16x2 chars display to big TFT display Don Y <blockedofcourse@foo.invalid> - 2021-09-21 19:34 -0700
    Re: Convert 16x2 chars display to big TFT display olaf <olaf@criseis.ruhr.de> - 2021-09-22 06:04 +0200
      Re: Convert 16x2 chars display to big TFT display Don Y <blockedofcourse@foo.invalid> - 2021-09-21 21:38 -0700
    Re: Convert 16x2 chars display to big TFT display pozz <pozzugno@gmail.com> - 2021-09-22 08:49 +0200
      Re: Convert 16x2 chars display to big TFT display Don Y <blockedofcourse@foo.invalid> - 2021-09-22 00:58 -0700
      Re: Convert 16x2 chars display to big TFT display Rick C <gnuarm.deletethisbit@gmail.com> - 2021-10-01 21:52 -0700
    Re: Convert 16x2 chars display to big TFT display Rick C <gnuarm.deletethisbit@gmail.com> - 2021-10-01 21:40 -0700
  Re: Convert 16x2 chars display to big TFT display Michael Schwingen <news-1513678000@discworld.dascon.de> - 2021-10-31 14:42 +0000

csiph-web