Hi Martin,
> I had written that polling the button states using LCD::GPI(1)
> considerably slows down output on my picoLCD 256x64 and located the
> problem in this function:
>
> static int drv_pLG_read(unsigned char *data, int size)
> {
> return usb_interrupt_read(lcd, USB_ENDPOINT_IN + 1, (char *) data,
> size, 1000);
> }
>
> On second thoughts, I have made the mistake to think that this function
> times out *every* time. When a key is pressed, however, the function
> exits directly and thus only times out when no data are present for
> usb_interrupt_read().
Well, this means the picoLCD does not answer with something like "zero keys pressed", but just times out?
Sounds *a little bit* braindamaged to me ;-)
> My problem is that I don't know what time-out value should be used. I
> have experimented a little: 1 ms is too low, while 2 ms work fine on my
> desktop. On my embedded system, 3 ms are needed. But what about people
> using the display with an old USB 1.0 port? I propose 5 ms or 10 ms --
> what do you think?
I's recommend a value of 5 msec, and make it a config option within the display section
HTH, Michael
--
Michael Reinelt <mi...@re...>
http://home.pages.at/reinelt
GPG-Key 0xDF13BA50
ICQ #288386781
|