Those new features in the 16Fs are certainly neat!
And regarding your idea:I could use a good floating point co-processor! I think you could do other neat things as well.
I have done something similar for my own use. I always use all the pins on the processor, I guess I keep adding peripherals until all the pins are used. In any case, someone always wanted something else - something that my circuit didn't have.
I needed an "intelligent peripheral" that would do all sorts of different things, so I started with an 8F2321's (in I2C mode). I defined a command set that will take a '2321 and let you configure virtually anything 'on the fly'. It allows you to:
Set up all the TRIS registers
Write to any pin
Read any pin
Set up any A/D channels
Read pins (as analog or digital) once, or continuously (in a continuous loop).
Polls all digital pins on a timer interrupt (1 or 5ms rate)
Latches INT0 (It captures the transition so I don't miss it)
Can become an I2C master on certain events (INT0, for example), so that the other PIC can respond almost immediately.
This '2321 then becomes a part of a new board layout. I add the peripherals (level shifters, voltage dividers, thermocouple amps, etc) and connect it to the main '8723 with 4 wires (SDA,SCL,Vdd and GND). The '2321 is always programmed with the same code and the main PIC configures it on power
up. The '2321 has a default configuration (also modifiable) that it loads from EEPROM on startup.
This arrangement works well for me - especially since I can (field) bootload the main chip (8723), but not the peripheral ('2321), so having a part that I can
- under command, change the way it works has been invaluable. I have added features simply by telling the customer to add a wire to a pin on the board and
then emailing him the hex file that processes it.
I can't sell my part. But I think there is a need for something similar (with even more features). Do it!
Bookmarks