On Monday, January 6, 2020 at 7:56:44 AM UTC-8, TJF wrote:
>
> I don't understand your target.
> When you need high speed GPIO and a controller running on a PRU, your 
> controller will operate at a frequency beyond 10 kHz. 
>

> Even if you manage to write messages that fast directly to the text 
> screen, nobody can read that fast (the human eye takes ~ 7 picture a 
> second). Even messages at the standard (serial) console are often faster 
> than anybody can read.
>
> What kind of messages should your project provide in a speed that nobody 
> can follow?
>

    I didn't want to get into the specifics of the project to avoid 
derailing the focus of the question,
    (does a text mode only cape exist?) but if it helps, here are some 
details:

    The text screen will be displaying large frame counters for motion 
picture film that will run in
    realtime while the motors are spinning.

    The counters have to be able to update quickly without "wiping" during 
drawing, so that one can
    actually read them easily as they roll by. Even if they can't read the 
fast moving digit, they can read
    the slow moving ones (depending on the motor speed), to tell where they 
are in the shot. The operator
    needs this information for various reasons (E-stop, knowing when the 
end of the shot they'd setup approaches..)

    The PRU won't be driving the screen, the PRU will be handling flipping 
bits on multiple stepper motors.
    The main program (running in linux) will be (a) feeding stepper motor 
velocities to the PRU code through
    a ring buffer and will also handle updating the large frame/position 
counters based on the stepper motor's
    current positions, all while the motors are running. The main program 
should be able to keep well ahead of
    the PRU in generating velocities to the ring buffer, and has plenty of 
time to update the counter screen.

    The counters are "large"; each digit being a 4x3 matrix of ASCII 
characters (or if available, IBM PC graphics
    characters, e.g. codepage 437, if available) to make each digit.

    Writing directly to screen memory avoids the main program wasting any 
time waiting for e.g. a serial controller
    buffer or a linux printf()/puts()/write() tty buffer flush to push out 
a combo of ANSI cursor positioning to redraw
    the counters, and avoids the user seeing the text "wipe" as the 
counters are redrawn, seeing partially drawn
    characters, and a text cursor flying all around the updating counters 
(looks terribly ugly).

    But I really don't want to derail into more details on that subject; 
suffice it to say the goal is to free up the high speed
   GPIOs normally used by HDMI, yet still provide a text screen of some 
kind that can be updated very quickly
   (screen memory would be great, or perhaps some other high speed way to 
update without using up the high speed
   PRU gpio pins). VGA would be best, because then the end user can choose 
a large screen (instead of a small LCD).

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/17c2d677-a5aa-4496-91dd-3984e31ddcd9%40googlegroups.com.

Reply via email to