??? 01/19/07 00:19 Read: times |
#131069 - Well, there are ways ... Responding to: ???'s previous message |
As I mentioned previously, PAULMON, a relatively popular monitor for the 805x, will program flash memory, and, I think, it is actually targeted at that device. A look at the doc's and source code will shed light.
If, by "programmer" you mean a 28F256DC-25 programmer, then I think it's easily solved, and really doesn't require the parallel port, but that's only one way. I can also make some suggestions about how to build the interface between your PC parallel port and the flash memory so that you can program it or drive it in any other way you want, from the PC parallel port. I can even help you with making it work in EPP mode, which is about 10x as fast as in SPP mode. If I understand your demands correctly, you want to run the 805x "system" as though it were a standalone setup, and, in fact, as a standalone setup if you choose not to hook up to the parallel port. Further, you want to be able to plug it into the parallel port in order to program the FLASH memory. Do you also want to operate on the SRAM CY7C185 from the parallel port as well? Why are you using only an 8kbyte SRAM? (just curious) Were you aware that the 80C51BH has no mode in which its ports are tri-state? When the thing is reset, it drives its pins high with a weak pullup, as it is entirely in input mode. That might serve, actually, but you're going to play HELL synchronizing a PC parallel port with the carefully timed FLASH writes. I'd suggest you consider some other alternatives, e.g. downloading the FLASH content into SRAM and then using firmware in the downloaded portion to do the programming. That requires some thought, but it can be managed, and, will be entirely transparent to the user once it's done. I have some doubts about the business of using the MCU as the counters, but it is possible. If you examine the code in the PAULMON source, you'll see that you can program the FLASH in portions (sectors) so you can download using your relatively small SRAM. In fact, you could download the code to the MCU using the serial port, having it store the data to be programmed in the external SRAM, and then put it in the appropriate sector of the FLASH. That would take the parallel port out of the equation and really simplify things. The parallel port approach will work, though. It just takes more hardware and more effort. Stealing cycles from the MCU is a bit trickier with these MCU's than with, say, the Motorola 68HC05's and the like. MOT parts are essentially a PCB on a chip, with a tristate bus and everything. These don't tristate anything except for brief transient intervals between phases. If you spend a few hours with a 'scope/logic-analyzer on the data and address lines you'll see what I mean. It's doable. There are many ways to skin a cat. You've chosen one that may not be the easiest but which is inherently doable. RE |