In telecommunication and computer science, serial communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus.
One of the most common serial communication architecture has been the glorious RS232 that was once used in computer serial ports for connections to modems, mouse and other peripheral devices. Today the universal serial bus USB has replaced the RS-232 from most of its peripheral interface roles.
In the field of the microelectronics the serial communication are widely used. The integrated circuits are more expensive when they have more pins so to reduce the number of pins in the package, many ICs like for instance microcontrollers, uses a serial bus to transfer data. Some examples of such low-cost serial buses include USART, SPI and I²C.
In this scenario the serial communication is instantiated between two or more microcontrollers and, for debugging purposes, also between a personal computer and a microcontroller. In this latter case it is many times used a USB to RS232 converter and a successive RS232 to USART transceiver.
To establish this kind of communication with the target board one of the free tool that is present in each PC (at least the one that have a Microsoft Windows OS) is the famous Hyper-terminal. With this software is possible to open a COM port that allows to capture the data sent from the target device (the microcontroller) and send some data to it.
Unfortunately this software is not so much flexible an has just limited possibility to send data from the keyboard strokes or from a file, the same is for the received data, they can be printed as ASCII value in the terminal and/or stored into a file.
Usually the serial communication is build over a complex protocol with CRC and Aknowledge mechanism. In this scenario is clear that the Hyper terminal is non the best software to be used.
To solve this gap come in play comStudio.
comStudio “mission” is to help the user to develop and test a customized serial communication protocol between the PC and the target application (mainly an electronic board including a microcontroller). It allows to define a set of commands frame that can be sent to the target and a set of possible receive frame that can be decoded for the meaning information. It can also be used to develop a framework on which build demonstration software, debugger o real applications.
comStudio is cross-platform QT based and make use of QSerial device (now called QtSerialPort) as low level blocks.
Wiki: Communication architectures
Wiki: Customizing the frame
Wiki: Linked receive frame-command
Wiki: Main window
Wiki: Protocol frame type
Wiki: Resolving variable sub frame
Wiki: Sub-frame editing
Wiki: Sub-frame enum type