There are some good ideas here, but you have moved the data movement problem from SERIAL<->PIC to be PIC<->PIC. You're still going to need some hefty horsepower to do the PIC<->PIC transfers. Remember, the main processor has to handle all channels at once. MIDI waits for no man (nor PIC) :-) Bob Ammerman RAm Systems (high function, high performance, low level software) ----- Original Message ----- From: Byron A Jeff To: Sent: Sunday, May 28, 2000 8:22 PM Subject: Re: [EE] Microcontroller with 4 USARTs and 40 pins > On Sun, May 28, 2000 at 06:21:24PM -0300, Edson Brusque wrote: > > > >If it don't say anything more, it may be the classic 8051's: one machine > > > >cycle is formed by twuelve clock cycles, and the instruction cycle > > > >depends on the particular instruction. > > > >If You want more speed enhacement look at Dallas MCS-51 compatible, > > hi-speed > > > >micros. > > > Or the AVR, at one xtal clock per instruction (a few take two). 8 mhz, but > > > that's 96 to an 8051 apparently. > > > > Ok, but beside the Scenix, there's no 8-bit microcontroller capable of > > doing more than 20 MIPS??? > > > > And what about the 16-bit micros? Can it be a good option for my > > project? A US$10-20 microcontroller isn't very expensive to me if it can do > > all I need on this project. > > A piece of advise. Stick to environments you know instead of striking out. > Especially when your striking out for more MIPS because you want them for > something that's easily done in hardware. > > I'd advise sticking with PICs. Let me throw out a couple of suggestions. > > 1) I'm planning on using a Cirrus Logic CL-CD180 octart. Unfortunately Cirrus > Logic has obsoleted the part. In fact they've spun off their communcations line > into Basis Communications. I have a couple of samples and an incomplete > data sheet. If anyone has the pinout I'd really appreciate it. I liked the > part because of the number of serial ports and the fact that it came in a > 84 pin PLCC package making it easy to use to hobby work. Basis Comm does have > an updated version the CL-CD1865. But it comes in a 100 pin PQFP. Not real > easy to prototype with. > > 2) My second choice was to build an intelligent UART out of a PIC. Specifically > for MIDI conversion of the stream into events with timestamps would be > very useful. Also having buffering so that the main processor can dump > events ahead of time and have the intelligent MIDI UART deliver them to the > channel at the appropriate time. Also doing MIDI channel mapping, splits and > volume control in the UART seems interesting. It's also interesting to consider > direct transmission of events from one UART to another bypassing the main > processor. > > A single software channel can easily be handled by a 12C509 with a software > UART. Of course developing the UART code, the interface to the main processor, > (probably something I2Clike) would take some effort. But once it's done > any number of channels could be added to the system and the main system > wouldn't have to be uberpowered. > > > Maxim has an interesting discussion in their MAX3100 intro describing the > issues of software UARTs. You can find it here. > > http://dbserv.maxim-ic.com/tarticle/view_article.cfm?article_id=53 > > The bottom line IMHO is that the traditional approach is better than the > Winmodem approach because you end up having a highly overpowered processor > just so that you can have the MIPS to bit bang UARTS. Just remember that > 8 12C509's will give you 8 MIPS just for the UARTS. Think about the > distributed processing solution. > > BAJ