P.Y. Katin, O.A. Pokhylenko
Èlektron. model. 2021, 43(2):51-67
ABSTRACT
To standardize and unify the source code and mathematical modeling of system software, it is advisable to use standard templates (patterns). They create a system software infrastructure for later use for program development. This is especially important for real-time operating systems, where you can pre-determine possible speed limits for embedded programs. For this purpose, for embedded systems based on microcontrollers of the Cortex-M architecture, standard software patterns State have been developed in the procedural and OOP paradigm. The developed patterns allow to unify the source code of the system software for microcontrollers of the Cortex-M architecture of different manufacturers. Research has been conducted to determine the speed limit of real-time operations. The software is adapted to the mathematical model of a finite state machine. The results were tested on microcontrollers of the STM32F1xx series. This allows to extend the solution to the MC of other manufacturers, which confirms the practical value of the developed patterns.
KEYWORDS
standardization and unification of source code, system software, software infrastructure, finite state machine, Cortex-M microcontroller, State pattern, embedded system.
REFERENCES
- Chmelov, V.O., Katin, P.Y. and Shemaev, V.M. (2020), “Development of typical "State" software patterns for Cortex-M microcontrollers in real time”, Eastern-European Journal of Enterprise Technologies, 3, no. 9(105), pp. 29-38.
https://doi.org/10.15587/1729-4061.2020.205377 - Saini, P., Bansal,A. and Sharma, (2015), “Time critical multitasking for multicore microcontroller using XMOS® kit”, International Journal of Embedded systems and Applications (IJESA), Vol. 5, no. 1, pp. 1-18.
https://doi.org/10.5121/ijesa.2015.5101 - Chen, Z., Chen, J. and Zhou, S. (2019), “Embedded electronic scale measuring system based on STM32 single chip microcomputer”, CAC 2019, Proceedings – 2019 Chinese Automation Congress, Hangzhou, China, November 22-24, 2019, pp. 3062-3065.
https://doi.org/10.1109/CAC48633.2019.8997317 - Katin, P.Y. and Bessmertnyy, R.S. (2019), “Use of high-performance microcontroller for improving economic efficiency of jem production”, Standartyzatsiya, sertyfikatsiya, yakist,3, no. 115, pp. 69-77.
- Zhu,, Wang, Z. and Zhang, Z. (2020), “Renovation of Automation System Based on Industrial Internet of Things: A Case Study of a Sewage Treatment Plant”, Sensors, Vol. 20, no. 8, 2175.
https://doi.org/10.3390/s20082175 - Gamma, E., Helm, R., Johnson, R. and Vlissides, J. (1994), Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, Boston, Massachusetts.
- Katin, P.Y. (2017), “Development of variant of software architecture implementation for low-power general purpose microcontrollers by finite state machines”, EUREKA: Physics and Engineering, Vol. 3, pp. 49–55.
https://doi.org/10.21303/2461-4262.2017.00361 - Solodovnikov, A. (2016), “Developing method for assessing functional complexity of software information system”, Ibid, Vol. 5, pp. 35-44.
https://doi.org/10.21303/2461-4262.2016.00157 - Dietrich, С., Hoffmann, M. and Lohmann, D. (2015), “Back to the Roots: Implementing the RTOS as a Specialized State Machine”, Annual Workshop on Operating Systems Platforms for Embedded Real-Time Applications, Proceedings of OSPERT 2015, Lund, Sweden, July 7, 2015, pp. 7-12.
- Beynon, W. (1980), “On the structure of free finite state machines”, Theoretical Computer Science, Vol. 11, pp. 167-180.
https://doi.org/10.1016/0304-3975(80)90044-4 - Adamczyk, P. (2003), “The Anthology of the Finite State Machine Design Patterns”, available at: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.95.838&rep=rep1&type=pdf (accessed February 20, 2021).
- Blokh, A.Sh. (1975), Graf-skhemy i ikh primeneniye. [Graph schemes and their application], Vysheyshaya shkola, Minsk, Belarus.