I am trying to interface 2 RS-422 serial devices (rotary encoders) to a BL2500. The RS-485 port on the board is already being used to communicate with a PC, but the other serial ports are not being used. Since there is only one RS-422 port on the BL2500 I am wondering if any of the forum users have solved this problem and how they did it (I already have ideas, but wanted some unbiased input).
The RabbitNet ports on the BL2500 are driven by RS-422 drivers. Although this is designed to support the RabbitNet protocol, you don’t have to use them this way. If you’re wanting to run asynchronous communication, just re-configure port B after running brdInit to take it out of SPI mode. You will need to use the CS1 and CS2 selector mechanism to enable reception from the desired RabbitNet connector. The CS1/CS2 signals are set by port PA5, low enables CS1 and high enables CS2. Obviously, you can’t run either port as RabbitNet if you’re doing this without some software work to address that issue. But if you’re not using RabbitNet, using the ports for RS-422 communications is fairly easy. Use the MISO+/- pair as your RXD+/- pair, and the MOSI+/- pair as your TXD+/- pair. You can download the schematic of the BL2500 board here:
To bsprouse Thanks for the input. I have already managed to interface my rotary encoders using the RabbitNet ports. Part of my problem was enabling PA5 for output as the default behavior was for input only. Once I was able to toggle that line I was able to use the RabbitNet ports configured as SPI devices to communicate with my 16-bit encoders.