User manual
442
mikoBasic PRO for dsPIC30/33 and PIC24
MikroElektronika
RS485Master_Receive
RS485Master_Send
Prototype
sub procedure RS485Master_Receive(dim byref data as byte[10])
Description Receives messages from Slaves. Messages are multi-byte, so this routine must be called for each
byte received.
Parameters - data_buffer: 7 byte buffer for storing received data. Data will be stored in the following manner:
- data_buffer[0..2]: message content
- data_buffer[3]: number of message bytes received, 1–3
- data_buffer[4]: is set to 255 when message is received
- data_buffer[5]: is set to 255 if error has occurred
- data_buffer[6]: address of the Slave which sent the message
The routine automatically adjusts data[4] and data[5] upon every received message. These ags
need to be cleared by software.
Returns Nothing.
Requires MCU must be initialized as a Master for RS-485 communication. See RS485Master_Init.
Example
dim msg as byte[8]
...
RS485Master_Receive(msg)
Notes None
Prototype
sub procedure RS485Master_Send(dim byref buffer as byte[20], dim datalen as
byte, dim address as byte)
Description Sends message to Slave(s). Message format can be found at the bottom of this page.
Parameters - data_buffer: data to be sent
- datalen: number of bytes for transmition. Valid values: 0...3.
- slave_address: Slave(s) address
Returns Nothing.
Requires MCU must be initialized as a Master for RS-485 communication. See RS485Master_Init.
It is the user’s responsibility to ensure (by protocol) that only one device sends data via 485 bus at a
time.
Example
dim msg as byte[8]
...
‘ send 3 bytes of data to slave with address 0x12
RS485Master_Send(msg, 3, 0x12)
Notes None