Hi Seb,
> > I was thinking to use a PIC as controller of the whole board: commands would be sent to it, then it
> > would throw them to dedicated PWM chip. It could add i2c interface, could store parameters for each
> > servos, store sequence of commands, maybe with an extra EEPROM.
> > adding hardware feels like a surrender ;)
> But sometime the right tool can save you lots of headache...
Great specs! And maybe 'surrrender' is a too big word and definitely not intended personally, but adding hardware for things that could be handled in software is not the best way to go for non-prototypes. But you are right: it saves headache (fun, challenges, time)..
For interrupts at regular intervals, I normally use timer1 and reload it in the isr. But experiments with fast interrupts learned me that it is better to use timer2, since a delay in handling the isr does not influence the time the next interrupt occurs.
And running a small interrupt routine (checking some counters, setting some io pins) at 80 kHz takes about 50% of the pic processing power, leaving 50% for housekeeping and comms. So maybe a 'base architecture' of 100 kHz to actually create the pulse (from 0 tot 255 * 10us = 2,55 ms) and all other code without interrupt could do the job.
But having said this... I thought the single pin display interface would be a usefull project too and afaik, it is not used by anyone else (and I could not use it in my latest project due to a 'name space conflict' for serial_software).
Joep