On Wed, Aug 14, 2002 at 09:21:15AM +0100, Alan B. Pearce wrote: I thought this thread had been put to sleep! I have a feeling we're coming to consensus. > >But the prospect of a 16F chip and 18F chip residing on the > >same box has me willing to change my vote under a few conditions: > > > >1) That both chips/sockets be of the 40 pin variety. > > > >2) That the entire system can in fact be operated with only a single chip > in > > place. > > > >3) That both chips/sockets have equal access to the I/O facilites onboard. > > > >4) We still carry a separate ICSP interface. > > Well what I liked about a single 40 pin socket, was that the 16F877, and the > 18F452 (from my very quick perusal of the data sheets) appear to be pin > compatible. It is. > This would mean the one socket would serve them both. This then > serves your item 3 above. But here's the problem that I see. If you have a single socket then you're comitted a developing for one or the other. By having both onboard at the same time, you can choose to develop for one, either, or both at the same time. > > My only preference here is that some form of patch area is provided for the > peripherals so that they can be swapped between ports, or to the breadboard > area, even if this takes the form of holes to allow a ribbon cable pin > header to be fitted, but the holes are connected together by tracks which > need cutting with a scalpel if one wishes to change the port the peripheral > is on. I was thinking jumpers all the way from the very beginning. Simply have a dual row header filled with jumpers to the default config. To disable a particular I/O simply pull its jumper. To rewire pull all the jumpers and replace with a ribbon cable wired to your specification. I believe that cutting traces would not be advisable for the Designer. However for the separate target PCB it's probably a good idea so that if the default config is fine you can simple leave the dual row socket unpopulated. However if you do need to rewire simply cut all the traces, install the dual row header and rewire as you see fit. > I'm quite happy that a 16F877A be the provided processor, but some info > would seem to be needed for the novice end user who may be familiar with the > info on the web, but as I understand it there are subtle differences with > this chip, apart from the programming, but I have no experience with it, and > have not checked it out. There are programming differences. It adds comparators that are disabled by default. The program memory is now rated for 100k cycles. The differences are outlined in this Microchip doc: http://www.microchip.com/download/lit/migrat/39591a.pdf Nothing new really needs to be explained unless you want to use the comparators or if you want to write your own programmer/bootloader. > If a person wanted to have a second processor then they could provide > themselves with another socket on the breadboard area. I personally don't > think that a second socket should be provided per se. maybe I could bend a > little and figure that a set of holes for a socket and headers, with > necessary components like the crystal/resonator and reset pull up resistors > be provided, but not the components to populate them. They are for the end > user to source and fit if required. Hmmm. So you're rethinking your thought from the other day then: "In thinking about what has been written above I get the feeling that there will have to be two processors on the board, one to handle the programming functions/ICD host, and the other to be the target." I agreed because a two socket system is the only way to have a 16 and 18 series development environment at the same time. Brenden's thought was in agreement with your quote. So I thought we had concensus. The only issue I have about unpopulated PCB is that a novice can screw up a rather expensive board trying to solder stuff on. I'd rather see a daughterboard that is simply plugged in some socket in that case. > > The "programmer" processor should be soldered in, and not in a socket. You get more flexibility if it's socketed. For example if someone need to do near exclusive 18F development. it would only be the cost of swapping the parts. > I wonder if it is possible to have "multiple" ICSP ports on it, one > permanently wired (through protection resistors) to the provided socket, and > a second one to a separate ICSP header which is used for the external > programming port. If a second processor socket is provided then an ICSP port > to that could also be provided. A software command switches between ports to > determine which one is active. Probably too complicated. I'll think about it and get back to you on it. > > >The only one magic feature that I'd like to personally see embedded in the > >firmware is the ability of the onboard processor to clone itself. It would > >only have to be a single algorithm for a single part. I just feel that the > >part should be able to back itself up without having to download software > >to it. But I realize that yould take up some more program memory that could > >be allocated for development. I'm not married to it, but it is a thought. > >I just see it as a convenient way to backup the Designer's main processor. > > Well if there is a "programmer" on the board, and a file of the destination > chip contents, as provided with the kit, then this is not an issue, surely. Just a simple cloner where a chip transfers its own bootloader contents to another of the same chip. > Taken to the extreme though, if the "programmer" chip has multiple ICSP > ports on it, then perhaps a command could be provided to "copy port X to > port Y", hence providing the duplication function totally inside the > "programmer" chip. ;-) BAJ -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu