<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article">
 <front>
  <journal-meta>
   <journal-id journal-id-type="publisher-id">
    ce
   </journal-id>
   <journal-title-group>
    <journal-title>
     Creative Education
    </journal-title>
   </journal-title-group>
   <issn pub-type="epub">
    2151-4755
   </issn>
   <issn publication-format="print">
    2151-4771
   </issn>
   <publisher>
    <publisher-name>
     Scientific Research Publishing
    </publisher-name>
   </publisher>
  </journal-meta>
  <article-meta>
   <article-id pub-id-type="doi">
    10.4236/ce.2024.158100
   </article-id>
   <article-id pub-id-type="publisher-id">
    ce-135244
   </article-id>
   <article-categories>
    <subj-group subj-group-type="heading">
     <subject>
      Articles
     </subject>
    </subj-group>
    <subj-group subj-group-type="Discipline-v2">
     <subject>
      Social Sciences 
     </subject>
     <subject>
       Humanities
     </subject>
    </subj-group>
   </article-categories>
   <title-group>
    Design of Modbus Communication Experiment Using a Pocket Experiment Board
   </title-group>
   <contrib-group>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Zhaonan
      </surname>
      <given-names>
       Zhong
      </given-names>
     </name>
    </contrib>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Yinhu
      </surname>
      <given-names>
       A
      </given-names>
     </name>
    </contrib>
    <contrib contrib-type="author" xlink:type="simple">
     <name name-style="western">
      <surname>
       Zhi
      </surname>
      <given-names>
       Weng
      </given-names>
     </name>
    </contrib>
   </contrib-group> 
   <aff id="affnull">
    <addr-line>
     aCollege of Electronic Information Engineering, Inner Mongolia University, Hohhot, China
    </addr-line> 
   </aff> 
   <pub-date pub-type="epub">
    <day>
     05
    </day> 
    <month>
     08
    </month>
    <year>
     2024
    </year>
   </pub-date> 
   <volume>
    15
   </volume> 
   <issue>
    08
   </issue>
   <fpage>
    1668
   </fpage>
   <lpage>
    1676
   </lpage>
   <history>
    <date date-type="received">
     <day>
      7,
     </day>
     <month>
      July
     </month>
     <year>
      2024
     </year>
    </date>
    <date date-type="published">
     <day>
      11,
     </day>
     <month>
      July
     </month>
     <year>
      2024
     </year> 
    </date> 
    <date date-type="accepted">
     <day>
      11,
     </day>
     <month>
      August
     </month>
     <year>
      2024
     </year> 
    </date>
   </history>
   <permissions>
    <copyright-statement>
     © Copyright 2014 by authors and Scientific Research Publishing Inc. 
    </copyright-statement>
    <copyright-year>
     2014
    </copyright-year>
    <license>
     <license-p>
      This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/
     </license-p>
    </license>
   </permissions>
   <abstract>
    Conventional microcontroller experiments typically utilize products from educational instrument companies, where students complete tasks by wiring and programming. This approach often limits their deep understanding of the experiments and restricts practice to the laboratory. To address this, a microcontroller pocket experiment board has been developed, which requires students to solder the circuit board themselves based on a provided circuit diagram. This hands-on experience helps students thoroughly understand hardware circuit principles and acquire component soldering skills. Introducing Modbus communication, a widely used industrial automation protocol, into microcontroller experiments allows students to grasp the principles of Modbus communication, understand protocol specifications, and comprehend the communication process. This practical experience is invaluable for enhancing their competitiveness and provides a strong foundation for future careers in industrial automation, the Internet of Things, and related fields. 
   </abstract>
   <kwd-group> 
    <kwd>
     Microcontroller
    </kwd> 
    <kwd>
      Modbus
    </kwd> 
    <kwd>
      Pocket Experiment Board
    </kwd>
   </kwd-group>
  </article-meta>
 </front>
 <body>
  <sec id="s1">
   <title>1. Introduction</title>
   <p>With the rapid development of industrial automation technology, communication protocols play a crucial role in connecting and controlling various industrial equipment. Among them, the Modbus communication protocol has been widely used in the industrial field due to its openness, standardization, and ease of use. The Modbus protocol not only supports traditional RS-422, RS-485, and Ethernet devices, but also enables transmission over various media such as RS232/485, Ethernet ports, WIFI wireless, etc., making it a bridge connecting control devices produced by different manufacturers. Therefore, mastering and proficiently applying the Modbus protocol is of great significance for improving the level of industrial automation and promoting industry development (<xref ref-type="bibr" rid="scirp.135244-12">
     Xie et al., 2022
    </xref>; <xref ref-type="bibr" rid="scirp.135244-14">
     Zhou, 2022
    </xref>).</p>
   <p>In order to deepen the understanding of the Modbus protocol and improve its practical application capabilities, this paper designs a Modbus communication experiment based on a pocket experimental board. Pocket experiment board, as a portable and easy-to-use experimental platform, has the characteristics of low cost, easy access, and simple operation, making it suitable for students to conduct experimental operations and learn. Through this experiment, students can personally build a Modbus communication network, master the basic principles, message structures, functional codes, and other knowledge of the Modbus protocol, familiarize themselves with the application methods of the Modbus protocol in industrial control systems, and thus enhance their practical and innovative abilities (<xref ref-type="bibr" rid="scirp.135244-5">
     Li, 2023
    </xref>).</p>
   <p>The main objectives of this experimental design include the following aspects: firstly, to enable students to understand the basic principles and working mechanisms of Modbus protocol through experiments; secondly, through experiments, students will master key knowledge such as message structure and functional codes of Modbus protocol; again, through experiments, students will become familiar with the application methods of Modbus protocol in industrial control systems, including how to configure Modbus devices, how to write Modbus communication programs, etc.; finally, through experiments, students’ practical and innovative abilities are cultivated, and their comprehensive qualities are improved (<xref ref-type="bibr" rid="scirp.135244-11">
     Xian &amp; Bi, 2022
    </xref>; <xref ref-type="bibr" rid="scirp.135244-13">
     Xiong &amp; Xu, 2023
    </xref>).</p>
  </sec><sec id="s2">
   <title>2. Microcontroller Pocket Experiment Board</title>
   <p>The microcontroller pocket experiment board is specifically developed for microcontroller experiments. Since it can be powered via a computer’s USB interface, students can use it both during and outside of class, enhancing their learning experience.</p>
   <sec id="s2_1">
    <title>2.1. Structure of the Experiment Board</title>
    <p>JTAG Emulation and Debugging Unit: This unit includes a Jlink emulator for downloading and debugging programs. It features a TYPE-C interface, allowing students to use a mobile phone charging cable for connecting the computer and the experiment board, while also providing power to the board (<xref ref-type="bibr" rid="scirp.135244-6">
      Li et al., 2021
     </xref>; <xref ref-type="bibr" rid="scirp.135244-10">
      Wang et al., 2017
     </xref>) (<xref ref-type="fig" rid="fig1">
      Figure 1
     </xref>).</p>
    <p>USB-to-Serial Communication Unit: Facilitates serial communication between the computer and the experiment board.</p>
    <p>Main Control Chip Unit: Incorporates the STM32F103RC, a high-performance 32-bit MCU based on ARM, with up to 512 KB of flash memory, USB, CAN, 11 timers, 3 ADCs, and 13 communication interfaces.</p>
    <fig id="fig1" position="float">
     <label>Figure 1</label>
     <caption>
      <title>Figure 1. Pocket-sized experiment board.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId11.jpeg?20240814041308" />
    </fig>
    <p>Display Unit: Features a 0.96-inch OLED screen with a resolution of 128 × 64.</p>
    <p>Analog Joystick Unit: Includes a 3D model airplane joystick potentiometer, with dual potentiometers and a switch.</p>
    <p>Keyboard Unit: Utilizes an EC11 rotary encoder.</p>
    <p>Additional Units: The experiment board also consists of a display unit with 8 LEDs, a DS18B20 temperature sensor unit, a buzzer unit, and 16 IO expansion pins.</p>
   </sec>
   <sec id="s2_2">
    <title>2.2. Preparation of the Experiment Board</title>
    <p>In microcontroller experiment courses, each student is required to solder their own experiment board. PCB boards and components are distributed prior to class. Students solder the board following the circuit diagram, learning surface-mount soldering techniques and gaining a deeper understanding of circuit principles (<xref ref-type="bibr" rid="scirp.135244-15">
      Zhu et al., 2017
     </xref>).</p>
    <p>Once the circuit board soldering is completed, it needs to be debugged, during which many issues may arise. Guiding students to resolve these issues based on the actual conditions helps them develop problem analysis and resolution skills. This experience is invaluable for both further academic pursuits and employment, providing lasting benefits (<xref ref-type="fig" rid="fig2">
      Figure 2
     </xref>).</p>
    <fig id="fig2" position="float">
     <label>Figure 2</label>
     <caption>
      <title>Figure 2. Circuit board soldering.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId12.jpeg?20240814041308" />
    </fig>
   </sec>
  </sec><sec id="s3">
   <title>3. Modbus Communication Protocol</title>
   <p>Modbus is a communication protocol designed by MODICON for its PLC products. Functionally, it can be considered a fieldbus. Despite being over forty years old, the Modbus protocol remains vital. While its free availability is a significant factor, its enduring popularity is primarily due to its simple and reliable mechanism, making it highly suitable for industrial applications. Consequently, it is extensively used in the automation industry (<xref ref-type="bibr" rid="scirp.135244-4">
     Huang &amp; Ding, 2016
    </xref>).</p>
   <p>Through these experiments, students will gain proficiency in the following areas:</p>
   <sec id="s3_1">
    <title>3.1. Modbus Bus Hardware Structure</title>
    <p>The Modbus bus hardware structure follows a master-slave configuration, as depicted in <xref ref-type="fig" rid="fig3">
      Figure 3
     </xref>.</p>
    <fig id="fig3" position="float">
     <label>Figure 3</label>
     <caption>
      <title>Figure 3. Modbus bus hardware structure.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId13.jpeg?20240814041309" />
    </fig>
    <p>In this setup, the master can be a computer or a touch screen, serving as the host device. Industrial applications commonly use the RS485 bus to connect slave modules. The master communicates with the modules based on their address numbers.</p>
   </sec>
   <sec id="s3_2">
    <title>3.2. Modbus Data Model and Function Codes</title>
    <p>The Modbus data model includes four definitions:</p>
    <p>Discrete Input: Represents digital input, read-only, with function code 02 for reading.</p>
    <p>Coil: Represents digital output, both readable and writable, with function code 01 for reading, 05 for writing a single coil, and 15 for writing multiple coils.</p>
    <p>Input Register: Represents analog input, with function code 04 for reading.</p>
    <p>Holding Register: Represents analog output, with function code 03 for reading, 06 for writing a single register, and 16 for writing multiple registers.</p>
    <p>Since the holding register model can be flexibly adapted to replace the other three models, this experiment uses the holding register model with function codes 03 and 06.</p>
   </sec>
   <sec id="s3_3">
    <title>3.3. Modbus Serial Data Frame Definition</title>
    <p>The data frame definition is illustrated in <xref ref-type="fig" rid="fig4">
      Figure 4
     </xref>:</p>
    <fig id="fig4" position="float">
     <label>Figure 4</label>
     <caption>
      <title>Figure 4. Data frame definition.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId14.jpeg?20240814041309" />
    </fig>
    <p>Address Field: Represents the module’s address number.</p>
    <p>Function Code: Used for reading and writing operations on the data model.</p>
    <p>Data: Represents the data of the register.</p>
    <p>Checksum: Used to verify the correctness of the data</p>
    <p>Modbus data frames come in two modes: RTU and ASCII. The RTU message frame uses the binary raw value, while the ASCII message frame converts the binary raw value to ASCII code, with a frame header “:” and a frame tail consisting of a carriage return and line feed.</p>
    <p>This experiment uses the RTU message frame.</p>
   </sec>
   <sec id="s3_4">
    <title>3.4. Modbus Holding Register Communication Mechanism</title>
    <p>
     <xref ref-type="bibr" rid="scirp.135244-"></xref>The microcontroller defines an int type array, illustrated as the central memory array in <xref ref-type="fig" rid="fig5">
      Figure 5
     </xref>, serving as a bridge for communication between the host and the microcontroller via the protocol stack, and for the microcontroller’s IO operations.</p>
    <fig id="fig5" position="float">
     <label>Figure 5</label>
     <caption>
      <title>Figure 5. Holding register communication mechanism.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId15.jpeg?20240814041310" />
    </fig>
    <p>In this setup, the host reads the array using function code 03 in the left loop and can also modify the array using function code 06. In the right loop, the microcontroller updates the array with results from peripheral interactions. For instance, the microcontroller connected to 2 temperature sensors and 8 LEDs stores the temperature values in units 40,001 and 40,002. The host can retrieve these temperature values using function code 03 through the protocol stack. Additionally, the host can modify the value in unit 40,003 using function code 06, and the microcontroller can drive the LEDs by monitoring changes in the value of unit 40,003 (<xref ref-type="bibr" rid="scirp.135244-1">
      Feng et al., 2021
     </xref>; <xref ref-type="bibr" rid="scirp.135244-3">
      Hou &amp; Gu, 2017
     </xref>).</p>
   </sec>
  </sec><sec id="s4">
   <title>4. Experimental Practice and Effectiveness</title>
   <sec id="s4_1">
    <title>4.1. Hardware Composition</title>
    <p>The setup involves a computer converting USB to TTL serial via the FT230XS chip to connect with the microcontroller’s serial port. An OLED display unit is used to show information, an analog joystick simulates voltage changes for ADC sampling, and 8 LEDs are used for digital output (<xref ref-type="bibr" rid="scirp.135244-2">
      Feng et al., 2014
     </xref>; <xref ref-type="bibr" rid="scirp.135244-8">
      Shen et al., 2021
     </xref>) (<xref ref-type="fig" rid="fig6">
      Figure 6
     </xref>).</p>
    <fig id="fig6" position="float">
     <label>Figure 6</label>
     <caption>
      <title>Figure 6. Hardware composition block diagram.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId16.jpeg?20240814041310" />
    </fig>
   </sec>
   <sec id="s4_2">
    <title>4.2. Lower-Level Software System Design</title>
    <p>The microcontroller program setup is done using STM32CubeMX for configuring the clock and peripheral ports, generating the initial program framework, which can be compiled and debugged with IAR or Keil (<xref ref-type="bibr" rid="scirp.135244-7">
      Mo et al., 2016
     </xref>; <xref ref-type="bibr" rid="scirp.135244-9">
      Sheng et al., 2017
     </xref>).</p>
    <p>Within this framework, the following steps are taken:</p>
    <p>In ADC.c, the function uint16_t GET_ADC (uint32_t CH) is added to read the ADC conversion value, and it is declared in ADC.h.</p>
    <p>The UART interrupt service function is modified to store data from the UART receive register into the receive array, reset the UART receive time variable, and set the receive flag variable to 1.</p>
    <p>The timer interrupt service function is configured to trigger every 1 ms, incrementing the UART receive time variable each time.</p>
    <p>The Modbus protocol stack files modbusRTU.c and modbusRTU.h are added to the project.</p>
    <p>The main.c main function first initializes the working states of the system clock, timer, I/O, serial port, OLED display, etc.</p>
    <p>In the infinite loop while (1), it first checks if the receive flag variable is 1 and if the serial receive time variable is greater than 10 ms (RTU messages are determined by the interval time to judge the received frame). If a frame of data is received, it verifies the data, checks the address, and parses the function code. If the function code is 03, it returns the data in the memory array shown in <xref ref-type="fig" rid="fig5">
      Figure 5
     </xref> to the host computer based on the starting address and quantity of the registers. If the function code is 06, it writes the data sent by the host computer to the specified memory array.</p>
    <p>Next, it collects the voltage values of the two potentiometers of the analog joystick through the ADC port and places them into the 40,001 and 40,002 memory arrays. It also checks for changes in the 40,003 memory array value, and the 8-bit binary value of its low byte corresponds to the on/off state of 8 LEDs, thus achieving control by the host computer.</p>
    <p>Lastly, the OLED displays the values of the 40,001 - 40,004 memory arrays to facilitate debugging.</p>
   </sec>
   <sec id="s4_3">
    <title>4.3. Integration Testing of Upper and Lower Software</title>
    <p>First, Modscan software is used for integration testing with the experimental board to give students a preliminary understanding of the Modbus communication protocol (<xref ref-type="fig" rid="fig7">
      Figure 7
     </xref>).</p>
    <fig id="fig7" position="float">
     <label>Figure 7</label>
     <caption>
      <title>Figure 7. Integration testing with software and experimental board.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId17.jpeg?20240814041311" />
    </fig>
    <p>Next, to deepen students’ understanding of the application of the Modbus communication protocol, KingView software is used. Students use KingView software to define Modbus device drivers, set data dictionary variables, configure the interface, connect variables, and run integration testing with the experimental board, providing them with an introductory knowledge of industrial control (<xref ref-type="fig" rid="fig8">
      Figure 8
     </xref>).</p>
    <fig id="fig8" position="float">
     <label>Figure 8</label>
     <caption>
      <title>Figure 8. Integration testing with Kingview and experimental board.</title>
     </caption>
     <graphic mimetype="image" position="float" xlink:type="simple" xlink:href="https://html.scirp.org/file/6308192-rId18.jpeg?20240814041311" />
    </fig>
   </sec>
  </sec><sec id="s5">
   <title>5. Conclusion</title>
   <p>Through this experiment, students go through the entire process of circuit soldering, program writing, system debugging, and completing a project. This helps cultivate students’ ability to analyze and solve real-world problems, exercises their skills in applying learned knowledge to engineering practice, allows them to accumulate valuable practical experience, and enhances their competitiveness. This lays a solid foundation for future work in fields such as industrial automation and the Internet of Things.</p>
  </sec><sec id="s6">
   <title>Acknowledgements</title>
   <p>This work was financially supported by New Engineering Research and Practice Project of the Ministry of Education (No. E-ZDH20201607), Key University Projects for Furthering Innovation and Entrepreneurship Education Reform in 2022, and 2023 Innovation and Entrepreneurship Education Practice Project.</p>
  </sec>
 </body><back>
  <ref-list>
   <title>References</title>
   <ref id="scirp.135244-ref1">
    <label>1</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Feng, T., Li, Q., Wang, C., Cui, J., Pan, Y.,&amp;Ku, D. (2021). Design and Implementation of Dual axis Control Experimental System for Tower Solar Thermal Power Generation Heliostat Based on STM32. Laboratory Research and Exploration, 40, 131-137.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref2">
    <label>2</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Feng, Y., Liu, X.,&amp;Xia, L. (2014). Experimental Teaching of Integrated Design of Embedded Technology Based on ARM Platform. Laboratory Research and Exploration, 33, 205-207, 235.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref3">
    <label>3</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Hou, W.,&amp;Gu, Y. (2017). Design of a Temperature Controlled Intelligent Water Cup Controlled by a Microcontroller System. Laboratory Research and Exploration, 36, 70-74.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref4">
    <label>4</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Huang, D.,&amp;Ding, L. (2016). ModbusTCP Communication Scheme of Microcontroller and Hard Protocol Stack. Microcontrollers and Embedded System Applications, 16, 17-20.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref5">
    <label>5</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Li, J. (2023). Modbus Communication Method Based on Message Queue. Automation Applications, No. 11, 217-219.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref6">
    <label>6</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Li, W., Shang, Y., Yang, H., Yuan, X., Shao, X.,&amp;Zhao, J. (2021). Experimental System Design for AC Electromagnetic Field Detection Based on STM32. Laboratory Research and Exploration, No. 11, 86-89.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref7">
    <label>7</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Mo, S., Wang, K.,&amp;Zhang, H. (2016). Exploration of the Design of an IoT based Environmental Monitoring Training Platform. Laboratory Research and Exploration, 35, 235-237.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref8">
    <label>8</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Shen, Z., Shu, G., Zhang, S.,&amp;Zhang, F. (2021). Experimental Setup for Smart Home IoT System Based on STM32. Laboratory Research and Exploration, No. 11, 60-63.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref9">
    <label>9</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Sheng, Q., Du, Y.,&amp;Luo, F. (2017). Research on the Algorithm of Solving Rubik’s Cube Based on Stm32 Robotic Arm. Laboratory Research and Exploration, 36, 29-32.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref10">
    <label>10</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Wang, H., Yu, L., Dong, Z.,&amp;Wang, Z. (2017). Research on the Experimental Teaching Platform of Tracking Balance Car Based on STM32. Experimental Technology and Management, No. 5, 136-139.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref11">
    <label>11</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Xian, J.,&amp;Bi, S. (2022). Research on Embedded Teaching Based on Innovative Comprehensive Experiments. Experimental Science and Technology, 20, 82-85.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref12">
    <label>12</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Xie, H., Liu, D.,&amp;Wu, Y. (2022). Design of Modbus Immersive Teaching Experiment Project for Industrial Internet. Experimental Technology and Management, No. 5, 171-175.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref13">
    <label>13</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Xiong, J.,&amp;Xu, Y. (2023). Design of Teaching Experimental Module Based on STM32. Comprehensive Research on Agricultural Mechanization, No. 1, 181-183.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref14">
    <label>14</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhou, S. (2022). Research on Embedded Course Teaching Based on Smart Devices. Computers and Information Technology, 30, 87.
    </mixed-citation>
   </ref>
   <ref id="scirp.135244-ref15">
    <label>15</label>
    <mixed-citation publication-type="other" xlink:type="simple">
     Zhu, X., He, C., Zhu, W.,&amp;Zhong, C. (2017). Design of Communication Technology Experimental System Based on STM32 Microcontroller. Experimental Technology and Management, No. 8, 81-84.
    </mixed-citation>
   </ref>
  </ref-list>
 </back>
</article>