> Regarding hardware versus software, I guess I'm just feeling lazy. Well you can feel even lazier. Olin has posted to the list, his module for a software uart, sometime in the past. In addition to that his development environment has a hardware uart module. > I developed an interrupt-driven software UART in a previous application, > but I wasn't happy about sampling each incoming data bit at less than 8x > rate, which in this case would be 153kHz for 19,200baud. Why? The only time you really need to do this is during the start bit, and then use an interrupt on the leading edge of the start bit, and time a half bit time, then make sure it really is a start bitn not a noise glitch, and then sample every bit time, making sure there is a valid stop bit finally to > On the other hand, a hardware UART would only interrupt the processor at > a maximum rate of 1.9kHz. And using the above scheme that is what will happen for a software uart, except at the beginning of the start bit. > EMI is a consideration, but shouldn't be a major issue. I'd prefer to > avoid clocks as high as 40MHz though, so the 4x PLL in the 18F series is > a nice advantage (I had forgotten about this!). But don't forget that you do not have to run at such high frequencies. Also think in terms of using a 4MHz crystal or resonator and doing the multiply to end up with the processor internally running at 12MHz. > I have about equal experience with mid-range PICs (assembler only) and > 8051s (C and assembler). The 18 series PICs look good but the issue for > me is whether it's better to spend time learning about these or another > micro for larger applications. > > Since this application involves string processing, I'd prefer to develop > it with a C compiler and some good libraries on a microcontroller with > plenty of resources so I don't have to worry much about optimisation. > The obvious choice was another 8051 core, but I wanted to explore some > other options. Well don't forget that one of the free C compilers for PIC's (see http://www.bknd.com/cc5x/downl-stud.shtml )allows you to do linkable modules (but not 18 series). Each module is limited to 1k code, but by doing it modular it should be possible to do a reasonable size program. -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body