Hi guys,
Is it possible to issue a break command on a usbizi serial port?
Hi guys,
Is it possible to issue a break command on a usbizi serial port?
Isn’t that something you need to implement in software?
Well as far as I’m aware it’s impossible to send a low for the whole period of a command, as either the stop bit or the start bit will be high. Am I wrong to think that?
e.g. sending a 0x00 message would look like: 0000000001 with the control bits, while a break command should look like 0000000000
@ Wouter, it must be supported in hardware. Break sets the TX line low, no start bits, no stop bits. I saw one bluetooth module that needs 3.5 byte times all low. Hardware generally allows you to start a break(zero on TX), then it’s up to you to wait X time, then you stop the break(One/Normal on TX).
@ Xarren, maybe close port and use TX as an output pin?
The break command is used for word aligning in a flash programming process - the baud rate is 9600 so it would need to change from a GPIO to a serial port and start transmitting in under 104microseconds in order not to lose the alignment. Do you recon that’s doable in RLP?
Her is a trick I used on a RS485 Module connected to UART on FEZ.
Here the baud rate was 38400, 2 stops bits, not parity, 8 data bits.
All send frames should start with a break signal (at least 22-bits low and 2-bits high) .
22 bits + 2 bits = 24 bits = 3 bytes @ 38400
OR
1 zero byte (0x00) @ 12800 + the 2 stop bits
So here is the code for the Send Break:
private void SendBreak()
{
if (RS485.IsOpen) { RS485.Close(); }
RS485.BaudRate = 12800;
RS485.Open();
RS485.WriteByte((byte)(0x00));
while (RS485.BytesToWrite != 0) ;
RS485.Close();
RS485.BaudRate = 38400;
RS485.Open();
}
Using code tags will make your post more readable. This can be done in two ways:[ol]
Click the “101010” icon and paste your code between the
tags or...
Select the code within your post and click the "101010" icon.[/ol]
(Generated by QuickReply)