Usuario:Mcapdevila/Protocol
//
*[[Usuario:Mcapdevila/luz]]
*[[Usuario:Mcapdevila/light]]
*[[Usuario:Mcapdevila/Protocol]]
*[[Usuario:Mcapdevila/Superboard]]
*[[Usuario:Mcapdevila/Huion_(Company)]]
*[[Usuario:Mcapdevila/Pr]]
*[[Usuario:Mcapdevila/pr]]
*[[Usuario:Mcapdevila/Prueba]]
[[File:US-ASCII code chart.png|thumb|280px|ASCII chart from a 1972 printer manual (b1 is the least significant bit)]]
A '''serial line analyzer''' or '''serial protocol analyzer''' is a hardware tool (that contains specialized software) used to capture and analyze signals and data traffic over a [[communication channel]].
Normaly between DTE and DSE elements connected using RS-232/RS-422 signal levels as local computer, terminals, etc.., that are communicating with each other using a broad range of standard [[communication protocol]]s in [[Point-to-point (telecommunications)|point-to-point telecommunications]].
To collect and analyse signals and data of interfaces making use of RS232 or RS422 physical layers with a baud rate from 300 to 38,400. Once captured on the internal memory can be analysed using the viewing CRT or LCD screen or saved on some magnetic support for a later analysis.<ref name="Wright2004">{{cite book|author=Edwin Wright|title=Practical Industrial Data Networks: Design, Installation and Troubleshooting|url=https://books.google.es/books?id=qyQ9LMmL2tMC&pg=PA46&dq=serial+protocol+analyzer&hl=ca&sa=X&ei=2HLRVKSHBszsaNmVgcgO&ved=0CDkQ6AEwAQ#v=onepage&q=serial%20protocol%20analyzer&f=false|year=2004|publisher=Newnes|isbn=978-0-7506-5807-2|pages=46–}}</ref>
==Caracteristics ==
Serial protocol analyzers, with the appropiate interfaces, they support a wide range of physical layer standards such as RS-232C, RS-422/485, Current loop, I2C, IrDA, CAN/LIN. Nowadays, even USB protocol analysers are available as well.
They can be used in any kind communication network maintenance and in the testing and development of communication systems. They allow monitoring data transferred between the different kinds of equipment that use the supported types of serial communications; PCs, PC peripheral devices, printers, modems or other communication sets as sequencers, robots, NC machines, etc...
Serial protocol analyzers Mainly,they are of great help to support the development and later maintenance of the the systems/programs of controllers and sequencers used in factories. that come with measurement captured data for its analisis in a PC program.
<!--
Ya lo he puesto,
recuerda que el director de Mkting the Isecom (un tal Lozano) me mandó a gastos pagados a Rockville Ma. (como service eng.) había olvidado el apellido de David Carvey cené en su casa cerca de la central de la CIA.. pasamos por delante.. lo bueno era como subías al Washington Shuttle.. como si subieras al autobús , te cobraban el billete a bordo con la bacaladera..y el avión al aterrizar pasaba tocando un puente con el tren..vamos! años más tarde uno lo tocó y...support a wide range of protocols such as RS-232C, RS-422/485, Current loop, I2C, IrDA, CAN/LIN. In addition, we develop USB protocol analyzers as well. LINE series enable you to monitor data between the equipment that use serial communication; PCs, peripheral devices for PC, communication equipment, printers, sequencers, NC machines and robots etc.
LINE series can be used for anything with the development and the testing of communication systems and communication network maintenance. Moreover, these are helpful to support the development and the maintenance of the systems that come with measurement data captured on PC, the systems/programs of the sequencers and the controllers in factories.
LM-5100RS is a board order to use an extended set of multi-protocol analyzer as the LM-5000H80 instrument laptop.
______________________
This board can be used in standard memory capacity of 80MB buffer bytes, corresponding to the high-speed data communications 99.9Kbps. Because it is equipped with a full keyboard, you can easily send data such as data entry and key support at the time of simulation in the LM-5000H80. Also, when the monitor can be seen in the (backlit) LCD large screen of 640 × 400 dot, analysis, etc. can be done efficiently.
Large memory buffer
400K bytes buffer memory as available. Can also be used as a buffer memory for the built-in hard disk of 80M bytes of LM-5000H80 In addition, it is also possible to measure continuously for long periods of time.
Can be measured with a resolution of 1ms, 10ms, 100ms time (no communication) Idol of the communication data. For this reason, and the response time of data transmission and reception of short time, the timing of the data and signal interfaces, such as the status of long time-out occurs at a glance.-->
==Control Characters used ==
* ENQ (0x05) Enquiry to start communications
* ACK (0x06) Acknowledge (data received and no errors
* NAK (0x15) Negative Acknowledge (data received but there were errors)
* SOH (0x01) Start of Header
* ETB (0x17) End of Transmission Block (intermediate block)
* STX (0x02) Start of Text (beginning of data block)
* ETX (0x03) End of Text (end of last data block)
* EOT (0x04) End of Transmission (transaction complete)
==Self standing analyzers==
Line monitoring function allows the communication data records, and provides an easy to understand large-sized display, without affecting the communication line.
This feature makes it possible to grasp the sending and receiving of conditions, thus greatly reducing the time required for troubleshooting.
As a standard feature, the line monitors support multiple communication standards, such as binary synchronous communications (BSC), for the character synchronous transmission, and high-level data link control (HDLC), for bit-synchronous transmission, and asynchronous communication are widely for PC peripherals and microcontroller applications.
<!--
The line monitor function allows the recording of communications data and provides an easy-to-understand large-sized display without affecting the communications lines.
This function makes it possible to grasp the conditions of transmission and reception, thus greatly shortening the required time of troubleshooting.
As a standard feature, the LE-8200A supports a variety of communications standards, such as binary synchronous communications (BSC) for character-synchronous transmission, and high-level data link control (HDLC) for bit-synchronous transmission as well as asynchronous communications that are widely used for PC peripheral and microcontroller applications.
-->
==PC oriented analyzers ==
which can be used as data loggers to record data in the SD card for long hours. LE-150PS supports ASYNC communications. With PC, it can be used as high performance protocol analyzer and have Monitor function and Simulation
is transparent to the connected devices. You might run into trouble when using modems, however: Because DCD (Carrier Detect) cannot be easily passed through to the other serial port, the host can't detect a modem connection. You can solve this problem by wiring DSR (Data Set Ready) high, and ignoring the DCD signa
The data is shown in hex and ASCII, eight bytes per line. Each log entry has a time stamp, which shows the reception time of the first character.
t can convert attributes such as baud rates or parity, and can also do data protocol conversions by embedding
==Protocols ==
==Synchronous ==
==Asynchronous==
===ASCII control code chart===
{| class="infobox"
|-
! <ref>MS-DOS QBasic v1.1 Documentation. Microsoft 1987-1991.</ref>
! 0x00
! 0x10
|-
| '''0x00'''
| [[null character|NUL]]
| [[Data link escape character|DLE]]
|-
| '''0x01'''
| [[Start-of-Header|SOH]]
| [[Device Control 1|DC1]]
|-
| '''0x02'''
| [[Start-of-Text|STX]]
| [[Device Control 2|DC2]]
|-
| '''0x03'''
| [[End-of-text character|ETX]]
| [[Device Control 3|DC3]]
|-
| '''0x04'''
| [[End-of-transmission character|EOT]]
| [[Device Control 4|DC4]]
|-
| '''0x05'''
| [[Enquiry character|ENQ]]
| [[Negative-acknowledge character|NAK]]
|-
| '''0x06'''
| [[Acknowledge character|ACK]]
| [[Synchronous idle character|SYN]]
|-
| '''0x07'''
| [[Bell character|BEL]]
| [[End Transmission Block character|ETB]]
|-
| '''0x08'''
| [[backspace|BS]]
| [[cancel character|CAN]]
|-
| '''0x09'''
| [[tab character|TAB]]
| [[End of Medium|EM]]
|-
| '''0x0A'''
| [[Line Feed|LF]]
| [[Substitute character|SUB]]
|-
| '''0x0B'''
| [[Vertical Tab|VT]]
| [[escape character|ESC]]
|-
| '''0x0C'''
| [[Form Feed|FF]]
| [[File separator|FS]]
|-
| '''0x0D'''
| [[carriage return|CR]]
| [[Group separator|GS]]
|-
| '''0x0E'''
| [[Shift Out and Shift In characters|SO]]
| [[Record separator|RS]]
|-
| '''0x0F'''
| [[Shift Out and Shift In characters|SI]]
| [[Unit separator|US]]
|-
| '''0x7F'''
| [[Delete character|DEL]]
|
|}
{| class="wikitable" style="text-align: center"
|-
! <sup>Binary</sup> !! <sup>Octal</sup> !! <sup>Dec</sup> !! <sup>Hexa</sup> !! <sup>Abbrev</sup> !! <sup>Print </sup> !! [[Caret notation|<sup>Caret</sup>]] !! <sup>Esc</sup> !! <sup>Name</sup>
|-
| <sup>000 0000</sup> || style="background:lightblue;" | <sup>000</sup> || style="background:#CFF;" | <sup>0</sup> || style="background:lightblue;" | <sup>00</sup>
| <sup>NUL</sup> || style="font-size:large;" | <sup>␀</sup> || <code>[[^@|<sup>^@</sup>]]</code> || <code>[[\0|<sup>\0</sup>]]</code> || style="text-align:left;" | [[Null character|<sup>Null character</sup>]]
|-
| <sup>000 0001</sup> || style="background:lightblue;" | <sup>001</sup> || style="background:#CFF;" | <sup>1</sup> || style="background:lightblue;" | <sup>01</sup>
| <sup>SOH</sup> || style="font-size:large;" | <sup>␁</sup> || <code>[[^A|<sup>^A</sup>]]</code> || || style="text-align:left;" | [[Start-of-Header|<sup>Start of Header</sup>]]
|-
| <sup>000 0010</sup> || style="background:lightblue;" | <sup>002</sup> || style="background:#CFF;" | <sup>2</sup> || style="background:lightblue;" | <sup>02</sup>
| <sup>STX</sup> || style="font-size:large;" | <sup>␂</sup> || <code>[[^B|<sup>^B</sup>]]</code> || || style="text-align:left;" | [[Start Of Text|<sup>Start of Text</sup>]]
|-
| <sup>000 0011</sup> || style="background:lightblue;" | <sup>003</sup> || style="background:#CFF;" | <sup>3</sup> || style="background:lightblue;" | <sup>03</sup>
| <sup>ETX</sup> || style="font-size:large;" | <sup>␃</sup> || <code>[[^C|<sup>^C</sup>]]</code> || || style="text-align:left;" | [[End-of-text character|<sup>End of Text</sup>]]
|-
| <sup>000 0100</sup> || style="background:lightblue;" | <sup>004</sup> || style="background:#CFF;" | <sup>4</sup> || style="background:lightblue;" | <sup>04</sup>
<!-- Please note that the character below, U+2404, is correct. If you are seeing it as "ENQ", please upgrade your fonts as the one you have is buggy. -->
| <sup>EOT</sup> || style="font-size:large;" | <sup>␄</sup> || <code>[[^D|<sup>^D</sup>]]</code> || || style="text-align:left;" | [[End-of-transmission character|<sup>End of Transmission</sup>]]
|-
| <sup>000 0101</sup> || style="background:lightblue;" | <sup>005</sup> || style="background:#CFF;" | <sup>5</sup> || style="background:lightblue;" | <sup>05</sup>
<!-- Please note that the character below, U+2405, is correct. If you are seeing it as "EOT", please upgrade your fonts as the one you have is buggy. -->
| <sup>ENQ</sup> || style="font-size:large;" | <sup>␅</sup> || <code>[[^E|<sup>^E</sup>]]</code> || || style="text-align:left;" | [[Enquiry character|<sup>Enquiry</sup>]]
|-
| <sup>000 0110</sup> || style="background:lightblue;" | <sup>006</sup> || style="background:#CFF;" | <sup>6</sup> || style="background:lightblue;" | <sup>06</sup>
| <sup>ACK</sup> || style="font-size:large;" | <sup>␆</sup> || <code>[[^F|<sup>^F</sup>]]</code> || || style="text-align:left;" | [[Acknowledge character|<sup>Acknowledgment</sup>]]
|-
| <sup>000 0111</sup> || style="background:lightblue;" | <sup>007</sup> || style="background:#CFF;" | <sup>7</sup> || style="background:lightblue;" | <sup>07</sup>
| <sup>BEL</sup> || style="font-size:large;" | <sup>␇</sup> || <code>[[^G|<sup>^G</sup>]]</code> || <code>[[\a|<sup>\a</sup>]]</code> || style="text-align:left;" | [[Bell character|<sup>Bell</sup>]]
|-
| <sup>000 1000</sup> || style="background:lightblue;" | <sup>010</sup> || style="background:#CFF;" | <sup>8</sup> || style="background:lightblue;" | <sup>08</sup>
| <sup>BS</sup> || style="font-size:large;" | <sup>␈</sup> || <code>[[^H|<sup>^H</sup>]]</code> || <code>[[Backspace|<sup>\b</sup>]]</code> || style="text-align:left;" | [[Backspace|<sup>Backspace</sup>]]<sup><ref group="lower-alpha">The Backspace character can also be entered by pressing the Backspace key on some systems.</ref><ref group="lower-alpha" name="bsp del mismatch" /></sup>
|-
| <sup>000 1001</sup> || style="background:lightblue;" | <sup>011</sup> || style="background:#CFF;" | <sup>9</sup> || style="background:lightblue;" | <sup>09</sup>
| <sup>HT</sup> || style="font-size:large;" | <sup>␉</sup> || <code>[[^I|<sup>^I</sup>]]</code> || <code>[[\t|<sup>\t</sup>]]</code> || style="text-align:left;" | [[Horizontal Tab|<sup>Horizontal Tab</sup>]]<sup><ref group="lower-alpha">The Tab character can also be entered by pressing the Tab key on most systems.</ref></sup>
|-
| <sup>000 1010</sup> || style="background:lightblue;" | <sup>012</sup> || style="background:#CFF;" | <sup>10</sup> || style="background:lightblue;" | <sup>0A</sup>
| <sup>LF</sup> || style="font-size:large;" | <sup>␊</sup> || <code>[[^J|<sup>^J</sup>]]</code> || <code>[[\n|<sup>\n</sup>]]</code> || style="text-align:left;" | [[Line feed|<sup>Line feed</sup>]]
|-
| <sup>000 1011</sup> || style="background:lightblue;" | <sup>013</sup> || style="background:#CFF;" | <sup>11</sup> || style="background:lightblue;" | <sup>0B</sup>
| <sup>VT</sup> || style="font-size:large;" | <sup>␋</sup> || <code>[[^K|<sup>^K</sup>]]</code> || <code>[[\v|<sup>\v</sup>]]</code> || style="text-align:left;" | [[Vertical Tab|<sup>Vertical Tab</sup>]]
|-
| <sup>000 1100</sup> || style="background:lightblue;" | <sup>014</sup> || style="background:#CFF;" | <sup>12</sup> || style="background:lightblue;" | <sup>0C</sup>
| <sup>FF</sup> || style="font-size:large;" | <sup>␌</sup> || <code>[[^L|<sup>^L</sup>]]</code> || <code>[[\f|<sup>\f</sup>]]</code> || style="text-align:left;" | [[Form feed|<sup>Form feed</sup>]]
|-
| <sup>000 1101</sup> || style="background:lightblue;" | <sup>015</sup> || style="background:#CFF;" | <sup>13</sup> || style="background:lightblue;" | <sup>0D</sup>
| <sup>CR</sup> || style="font-size:large;" | <sup>␍</sup> || <code>[[^M|<sup>^M</sup>]]</code> || <code>[[\r|<sup>\r</sup>]]</code> || style="text-align:left;" | [[Carriage return|<sup>Carriage return</sup>]]<sup><ref group="lower-alpha">The Carriage Return character can also be entered by pressing the Enter or Return key on most systems.</ref></sup>
|-
| <sup>000 1110</sup> || style="background:lightblue;" | <sup>016</sup> || style="background:#CFF;" | <sup>14</sup> || style="background:lightblue;" | <sup>0E</sup>
| <sup>SO</sup> || style="font-size:large;" | <sup>␎</sup> || <code>[[^N|<sup>^N</sup>]]</code> || || style="text-align:left;" | [[Shift Out and Shift In characters|<sup>Shift Out</sup>]]
|-
| <sup>000 1111</sup> || style="background:lightblue;" | <sup>017</sup> || style="background:#CFF;" | <sup>15</sup> || style="background:lightblue;" | <sup>0F</sup>
| <sup>SI</sup> || style="font-size:large;" | <sup>␏</sup> || <code>[[^O|<sup>^O</sup>]]</code> || || style="text-align:left;" | [[Shift Out and Shift In characters|<sup>Shift In</sup>]]
|-
| <sup>001 0000</sup> || style="background:lightblue;" | <sup>020</sup> || style="background:#CFF;" | <sup>16</sup> || style="background:lightblue;" | <sup>10</sup>
| <sup>DLE</sup> || style="font-size:large;" | <sup>␐</sup> || <code>[[^P|<sup>^P</sup>]]</code> || || style="text-align:left;" | [[Data Link Escape|<sup>Data Link Escape</sup>]]
|-
| <sup>001 0001</sup> || style="background:lightblue;" | <sup>021</sup> || style="background:#CFF;" | <sup>17</sup> || style="background:lightblue;" | <sup>11</sup>
| <sup>DC1</sup> || style="font-size:large;" | <sup>␑</sup> || <code>[[^Q|<sup>^Q</sup>]]</code> || || style="text-align:left;" | [[Device Control 1|<sup>Device Control 1</sup>]]<sup> (oft. [[XON]])</sup>
|-
| <sup>001 0010</sup> || style="background:lightblue;" | <sup>022</sup> || style="background:#CFF;" | <sup>18</sup> || style="background:lightblue;" | <sup>12</sup>
| <sup>DC2</sup> || style="font-size:large;" | <sup>␒</sup> || <code>[[^R|<sup>^R</sup>]]</code> || || style="text-align:left;" | <sup>Device Control 2</sup>
|-
| <sup>001 0011</sup> || style="background:lightblue;" | <sup>023</sup> || style="background:#CFF;" | <sup>19</sup> || style="background:lightblue;" | <sup>13</sup>
| <sup>DC3</sup> || style="font-size:large;" | <sup>␓</sup> || <code>[[^S|<sup>^S</sup>]]</code> || || style="text-align:left;" | <sup>Device Control 3 (oft. [[XOFF]])</sup>
|-
| <sup>001 0100</sup> || style="background:lightblue;" | <sup>024</sup> || style="background:#CFF;" | <sup>20</sup> || style="background:lightblue;" | <sup>14</sup>
| <sup>DC4</sup> || style="font-size:large;" | <sup>␔</sup> || <code>[[^T|<sup>^T</sup>]]</code> || || style="text-align:left;" | <sup>Device Control 4</sup>
|-
| <sup>001 0101</sup> || style="background:lightblue;" | <sup>025</sup> || style="background:#CFF;" | <sup>21</sup> || style="background:lightblue;" | <sup>15</sup>
| <sup>NAK</sup> || style="font-size:large;" | <sup>␕</sup> || <code>[[^U|<sup>^U</sup>]]</code> || || style="text-align:left;" | [[Negative-acknowledge character|<sup>Negative Acknowledgment</sup>]]
|-
| <sup>001 0110</sup> || style="background:lightblue;" | <sup>026</sup> || style="background:#CFF;" | <sup>22</sup> || style="background:lightblue;" | <sup>16</sup>
| <sup>SYN</sup> || style="font-size:large;" | <sup>␖</sup> || <code>[[^V|<sup>^V</sup>]]</code> || || style="text-align:left;" | [[Synchronous idle|<sup>Synchronous idle</sup>]]
|-
| <sup>001 0111</sup> || style="background:lightblue;" | <sup>027</sup> || style="background:#CFF;" | <sup>23</sup> || style="background:lightblue;" | <sup>17</sup>
| <sup>ETB</sup> || style="font-size:large;" | <sup>␗</sup> || <code>[[^W|<sup>^W</sup>]]</code> || || style="text-align:left;" | [[End Transmission Block character|<sup>End of Transmission Block</sup>]]
|-
| <sup>001 1000</sup> || style="background:lightblue;" | <sup>030</sup> || style="background:#CFF;" | <sup>24</sup> || style="background:lightblue;" | <sup>18</sup>
| <sup>CAN</sup> || style="font-size:large;" | <sup>␘</sup> || <code>[[^X|<sup>^X</sup>]]</code> || || style="text-align:left;" | [[Cancel character|<sup>Cancel</sup>]]
|-
| <sup>001 1001</sup> || style="background:lightblue;" | <sup>031</sup> || style="background:#CFF;" | <sup>25</sup> || style="background:lightblue;" | <sup>19</sup>
| <sup>EM</sup> || style="font-size:large;" | <sup>␙</sup> || <code>[[^Y|<sup>^Y</sup>]]</code> || || style="text-align:left;" | [[End of Medium|<sup>End of Medium</sup>]]
|-
| <sup>001 1010</sup> || style="background:lightblue;" | <sup>032</sup> || style="background:#CFF;" | <sup>26</sup> || style="background:lightblue;" | <sup>1A</sup>
| <sup>SUB</sup> || style="font-size:large;" | <sup>␚</sup> || <code>[[^Z|<sup>^Z</sup>]]</code> || || style="text-align:left;" | [[Substitute character|<sup>Substitute</sup>]]
|-
| <sup>001 1011</sup> || style="background:lightblue;" | <sup>033</sup> || style="background:#CFF;" | <sup>27</sup> || style="background:lightblue;" | <sup>1B</sup>
| <sup>ESC</sup> || style="font-size:large;" | <sup>␛</sup> || <code><sup>^<nowiki>[ || \e
[a] || style="text-align:left;" | Escape[b]
|-
| 001 1100 || style="background:lightblue;" | 034 || style="background:#CFF;" | 28 || style="background:lightblue;" | 1C
| FS || style="font-size:large;" | ␜ || ^\
|| || style="text-align:left;" | File Separator
|-
| 001 1101 || style="background:lightblue;" | 035 || style="background:#CFF;" | 29 || style="background:lightblue;" | 1D
| GS || style="font-size:large;" | ␝ || ^]
|| || style="text-align:left;" | Group Separator
|-
| 001 1110 || style="background:lightblue;" | 036 || style="background:#CFF;" | 30 || style="background:lightblue;" | 1E
| RS || style="font-size:large;" | ␞ || ^^
[c] || || style="text-align:left;" | Record Separator
|-
| 001 1111 || style="background:lightblue;" | 037 || style="background:#CFF;" | 31 || style="background:lightblue;" | 1F
| US || style="font-size:large;" | ␟ || ^_
|| || style="text-align:left;" | Unit Separator
|-
| colspan="9" |
|-
| 111 1111 || style="background:lightblue;" | 177 || style="background:#CFF;" | 127 || style="background:lightblue;" | 7F
| DEL || style="font-size:large;" | ␡ || ^?
|| || style="text-align:left;" | Delete[d][e]
|}
- ↑ The
\e
escape sequence is not part of ISO C and many other language specifications. However, it is understood by several compilers, including GCC. - ↑ The Escape character can also be entered by pressing the Esc key on some systems.
- ↑ ^^ means Ctrl (pressing the "Ctrl" and caret keys).
- ↑ The Delete character can sometimes be entered by pressing the Backspace key on some systems.
- ↑ The ambiguity of Backspace is due to early terminals designed assuming the main use of the keyboard would be to manually punch paper tape while not connected to a computer. To delete the previous character, one had to back up the paper tape punch, which for mechanical and simplicity reasons was a button on the punch itself and not the keyboard, then type the rubout character. They therefore placed a key producing rubout at the location used on typewriters for backspace. When systems used these terminals and provided command-line editing, they had to use the "rubout" code to perform a backspace, and often did not interpret the backspace character (they might echo "
^H
" for backspace). Other terminals not designed for paper tape made the key at this location produce Backspace, and systems designed for these used that character to back up. Since the delete code often produced a backspace effect, this also forced terminal manufacturers to make any Delete key produce something other than the Delete character.