RS485 defines the physical layer of the network. You may use it as you want. However, since the trunk is shared it is important that no two (or more) devices talk at the same time. If they do this will produce collisions and the corruption of both messages.
The following applies for both half and full duplex RS485.
You can have any number of protocols on the same 485 trunk provided that two or more devices do not talk at the same time.
The consequences of this statement are
1. You can only use more than one protocol if they are poll/response type protocols like Modbus Rtu or Rockwell DF1.
2. If you have a token passing protocol (such as Bacnet mstp) you cannot use another protocol on the same trunk
3. Only one device can be the master for the multiple protocols. The reason is that the master decides when to poll and how long to wait for a response.
Thus, If you have full control over one rs485 port you could use that port to send a poll using protocol#1, wait for a response and then send a poll using protocol#2. If you do not have full control (ie. You are letting two applications which are not co-ordinated share the port) then you cannot run two protocols.