From what I know, CAN at the physical layer in the "recessive" state just lets pull-up/pull-down do the work.
Does that mean the rise time is theoretical slower than a RS-485 transceiver?
And about the noise rejection on RS-485 and CAN? Both uses a differential bus, but again CAN relies just on resistors to provide the "recessive" signal.
Reading some papers, the majority, if not all, states RS-485 as 1200 m at 100 kbit/s, where CAN normally states a maximum of 40 m at slower speeds (I have read just one that talked about CAN networks with longer bus lines). And even that CAN papers seems to be more specific about using shielded pairs where RS-485 seems more "relaxed" with UTP.
Is RS-485 more robust and fast for long buses than CAN?
Yes, I know one is theoretically single-master and the other multi-master, but for me that's not true as TDMA could be used to implement a good multi-master on RS-485, sending a sync signal from a "master" (it could be called a synchronisation source just than a master), from time to time, and the slot is just being used to get access to the bus.
1 Yes, I know CAN is initially designed for the automotive market, so distance is not a big issue, but today it seems to be used in industrial automation too, where RS-485, I think, is "dominant".
2 I have seen notes saying RS-485 being more expansive than CAN. Well, that's really not what I get. Major "popular" micro-controllers have UART, whereas a small portion have CAN controllers, and external CAN controllers are difficult to get or expensive.