Ucom
Ucom is an efficient serial port and network debugging tool based on MFC. The single executable file does not need to rely on dynamic link libraries to run, and supports multiple opening and multiple extension functions.
Ucom uses Serial-Communications-in-Win32 for serial port reading and writing, the network uses CAsyncSocket, and the chart extension function uses High-speed-Charting-Control.
The project is recommended to use VS2017 to open it. You need to install the C++ MFC component in advance. You can download the compiled files directly on the releases page. Technical communication QQ group: 560901616.
Function
All the functions that have been downloaded are for the latest version, and other versions refer to Changelog.
- Multiple data sources , providing two data sources for serial port and network, switching data sources without affecting other functions of the software
- Configure the save function . When the software is turned off, the information in the serial port, network configuration, background color and font color set by the user will be automatically saved.
- Customize the theme of the receiving area , and you can customize the theme style of the receiving frame
- Expand the tool panel , click
探索>> button to expand the tool panels such as receiving charts, encoding and decoding, receiving monitoring, and sending assistant on the right side of the window. - Dynamically refresh the serial port . When a new device is connected, click the serial port number. Select refresh the serial port in the drop-down menu to scan for port changes.
- Multi-code support , fully support the reception area to be displayed in UTF-8 and Unicode encoding
- Transparent transmission will not hinder the transmission and reception of bytes such as 0x00, 0x11
- Support commonly used serial port flow control
- Support file sending , it is recommended not to send too large files
- Supports AT mode , enter to send data (data includes enter), and the sent data is added to the new line in a special display format (red font). Up and down arrow keys call the historical command (data). Press Tab in the input box to add
AT+ at the beginning. - Supports panel dragging , supports horizontal and vertical window size adjustment and sending and receiving vertical window adjustment
- Provides data statistics and real-time transmission rate data display, fast clearing and other functions
- Provides HEX reception display and HEX mode transmission, and reminds of irregular inputs
-
Ctrl + Enter Quick Send
Data Source Panel
Click the serial port or network tag to switch the data source, and the switching panel will not affect the connection ; the information on the data source panel will be saved when the software is closed; click the switch icon on the left to switch the serial port connection status.
Serial port data source
Network data source
- Use network data source to select protocol first
-
TCP Client mode is used to connect to TCP Server. At this time, the destination IP and destination port are the IP and port of the Server. The random allocation of local Client ports cannot be specified. -
TCP Server mode is used to establish TCP Server. At this time, the destination port is the port that establishes the Server on the machine; the connection button represents the creation of the Server. If a client is connected to the server, the client list will dynamically add all IPs and ports connected to the Server. Server needs to specify a specific client to send data to all clients or select all connections to send it to all clients. The data of the received client will be distinguished with 【From: IP:Port】 . -
UDP mode does not distinguish between Server and Client modes. At this time, the local port is the port for local listening, and the destination port and destination IP are the listening address and port of the other party's UDP. You can change it after establishing UDP information.
Main panel
- Clear full collection . When this item is checked, it will automatically clear when the connection area reaches the setting value (Byte) of the adjacent numerical input box.
- Quick start , you can quickly call commonly used tools and system settings
- Interval sending . When this item is checked, it will be automatically sent when the connection area reaches the setting value (ms) of the adjacent numerical input box.
- Send a frame and line break . When this item is checked, a carriage return line break is automatically added to the end of the data in the send box.
- Pause reception , pause the display of data, but the data is still received in the background, but it is not displayed.
- Save and receive , used to save the text information in the current receiving box as a TXT file
- Background color, font color, font style, you can customize the style of the receiving frame, and the font style information will not be saved.
Panel adjustment
You can change the size of the receiving and sending frames by dragging the right and bottom sides of the window, and change the layout by dragging the button on the right between the receiving and sending frames (button next to the sending count).
Receive Charts
Receive charts, support numerical sorting and graphical display of specified formats, format:空格+通道(0-5)+':'+数据+换行, such as: printf(" 0:%d 1:%fn", ...) , and supports up to six channels.
- Click the Start button to start analyzing and drawing data from the receiving area, and clear the button to clear the chart.
- The export data button can save the data of the currently drawn chart. The data file can be opened in Excel and saved as a table for subsequent analysis.
- Select a curve in the data list , and adjust the line width, line color and other properties of the curve in the curve box on the right.
- After selecting the vertical and horizontal axis in the axis box, the properties can be adjusted separately; the axis range is large at the top and the bottom is small, and it is determined when the cursor is out of focus; a curve only caches the last 512 points by default, and the frame interval is recommended to be greater than 20ms
- The plug-in window that pops up after clicking the plug-in button can be resized at will
- Background color buttons can change the background color of the chart
- Pull the marquee to the lower right corner on the waveform chart: zoom in, otherwise restore, right-click to pan
Encoding and decoding
- Encoding query, providing three commonly used character encoding hexadecimal coded query, transformable display style
- HEX decoding, attempting to decode from the provided HEX string to three encoded strings
Receive monitoring
Monitoring annotations enable the time relationship of data frames to be analyzed based on monitoring data frames (by the frame interval received by MFC). Data with large serial numbers will be inserted into the first row, and the timestamp is accurate to milliseconds.
- Start monitoring Start monitoring data frames
- The HEX record displays the received data frame as HEX characters.
- After checking the maximum record , the recorded data frame number will be automatically cleared after reaching the maximum record.
- Due to limited list space, after clicking on the data frame entry, the data of the data frame will be displayed in detail in the box below.
Send Assistant
The sending assistant supports up to ten entries to send, which can trigger the relay in time or trigger a certain line of sending using the keyboard, and also supports sending using a separate button. Supports automatic line wrapping and HEX modes.
- When the data to be sent is large (or when entering the carriage), you can enter data in the input box below, and then select the entry to be transmitted next to the transfer button. Then press the transfer button to transfer the content in the input box to the entry
- You can click the button next to each entry to trigger a single sending, or you can check the keyboard above and then place the cursor in the input box below, and use the English input method to enter the letters on the corresponding button to trigger a sending
- Set the time to turn the time to turn the time to turn the time to turn the 10 records will be sent according to the time interval.
Written at the end
I would like to thank Changchun University of Technology Electronics Society, the friends who worked hard in the society, and those struggles day and night.