I am working with a Microchip application which uses PIC16F684. The data is outputted by SPI. I would like to know if there is any other PIC micro which can recieve SPI, make some calculations and finally transmit the result by RS485.
RS485 shares the same data encoding format as RS232 so all you really need is a PIC with a SPI and an USART. You would then attach an RS485 transceiver to the output (in the same way you use a MAX232 tranceiver for RS232).
Since RS485 is half duplex, it will be up to you to implement a protocol to handle flow control, collisons, and other associated obstacles.
SPI often doesn't really need a SPI module at all. If the PIC is fortunate and originates the clock, then SPI is just writing a 1 to the clk pin, read a data bit, write 0 to the clk pin, repeat. If it's a slave to the clock, then there's more overhead and you might need to make the clk an interrupt.
I've got the part Nice PDIP-28 package, no caps needed and RTS will work fine in RS485 mode (they make a RS485 version also exact same UART) I've not written code for it yet. Maxim also makes an wonderful MAX3160 multiprotocal chip (no UART) but RS232, 422 & 485 drivers on a chip. That I've used and it works like a charm.
That's the one, I used the MAX3110 because I wanted both RS232 & RS485, a MAX483 (or 75176) is cheaper than a MAX232 + caps (I used the MAX233 built in to the MAX3110)